sklearn学习_01

 1 # -*- coding: utf-8 -*-
 2 """
 3 Created on Fri Sep 29 11:05:52 2017
 4 机器学习之sklearn
 5 @author: den
 6 """
 7 # 导入数据集
 8 from sklearn import datasets
 9 # 进行交叉验证
10 from sklearn.cross_validation import train_test_split
11 # 导入标准化尺度
12 from sklearn.preprocessing import StandardScaler
13 # 导入感知机算法
14 from sklearn.linear_model import Perceptron
15 # 计算分类的准确率
16 from sklearn.metrics import accuracy_score
17 
18 # 加载数据
19 iris = datasets.load_iris()
20 # 样本的后两位特征
21 X = iris.data[:,[2,3]]
22 # 目标类别
23 y = iris.target
24 # 获取30%的测试集,70%的训练集
25 X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=0)
26 # 标准化操作,训练集和测试集使用相同的标准化
27 sc = StandardScaler()
28 # 估算每个特征的平均值和标准差
29 sc.fit(X_train)
30 # 使用同样的均值和标准差归一化训练集和测试集
31 sc.transform(X_train)
32 sc.transform(X_test)
33 
34 
35 # 获得ppn对象
36 ppn = Perceptron(n_iter=40, eta0=0.5)
37 # 拟合
38 ppn.fit(X_train, y_train)
39 # 预测
40 y_pred = ppn.predict(X_test)
41 # 打印错分率
42 print ('错分样本的个数为:%d' % (y_test != y_pred).sum())
43 # 计算准确率
44 print ('模型的准确率为:%.2f' % accuracy_score(y_test, y_pred))

 

posted @ 2017-09-29 17:39  今夜无风  阅读(204)  评论(0编辑  收藏  举报