机器学习(四)使用sklearn库的练习normalization和model的一些参数

# -*- coding: utf-8 -*-
"""
Created on Tue Oct 25 21:39:04 2016

@author: Administrator
model说明,normalization
"""
import numpy as np
from sklearn import datasets
from sklearn.cross_validation import train_test_split
from sklearn.neighbors import KNeighborsClassifier
from sklearn import preprocessing
import matplotlib.pyplot as plt

load_data=datasets.load_boston()
data_x=load_data.data
data_y=load_data.target

x_train,x_test,y_train,y_test=train_test_split(data_x,data_y,test_size=0.1)

model=LinearRegression()
model.fit(x_train,y_train)

param=model.coef_ #model的参数
bias=model.intercept_ #偏置项
model_parm_set=model.get_params()#model之前定义的参数
model_score=model.score(data_x,data_y)# 模型预测打分(预测精度)
"""
normalization标准化,也称为feature scaling
特征x的幅度范围较大比如x跨度从1-2000,同时除以2000,则跨度变为0-1之间
"""

x,y=datasets.make_classification(n_samples=300,n_features=2,n_redundant=0,n_informative=2,
                                 random_state=22,n_clusters_per_class=1,scale=150)
plt.scatter(x[:,0],x[:,1],c=y)  #可以查看两者的分布范围,cy是表示用两种不同的颜色                              

#x_ed=preprocessing.scale(x) #默认是0-1
x_ed=preprocessing.minmax_scale(x,feature_range=(-1,1))
plt.scatter(x_ed[:,0],x_ed[:,1],c=y)

原来数据集的样子:
机器学习(四)使用sklearn库的练习normalization和model的一些参数_第1张图片
其中横轴是X1,纵轴是X2的范围

normalization后的样子
“`机器学习(四)使用sklearn库的练习normalization和model的一些参数_第2张图片

你可能感兴趣的:(机器学习)