sklearn内部集成了几个手写的数字图像数据集。 目前,我们将使用这些数据,使用SVM支持向量机算法进行训练识别练习。 笔者习惯了pycharm,今天手痒,用Spyder编辑一下,顺便比较一下哪个更好用。 别胡说,二维码:
#-* -编码: utf-8-* -
----- -导入到sk learn的数据集
froms klearn.datasetsimportload _ digits
digits=load_digits (
print (数据集的数据量和单个数据的大小)、digits.data.shape。
#------随机划分训练集和测试集,25%作为测试集
froms klearn.cross _ validationimporttrain _ test _ split
X_train,X_test,y_train,y _ test=train _ test _ split (digits.data,digits.target,
test_size=0.25,random_state=33 )
打印('训练集数量:',y_train.shape ) )。
print ('测试集数:',y_test.shape ) )。
----- -调用SVM算法的训练模式
froms klearn.preprocessingimportstandardscaler
from sklearn.svm import LinearSVC
ss=StandardScaler ()
x _ train=ss.fit _ transform (x _ train )
x_test=ss.transform(x_test ) )
lsvc=LinearSVC (
LVC.fit(x_train,y_train ) )。
y_predict=lsvc.predict(x_test ) )。
#----性能评价
打印(print (theaccuracyoflinearsvcis : (,lsvc.score ) y_test,y_test ) ) ) ) ) ) ) ) 660 )
froms klearn.metricsimportclassification _ report
print (class ification _ report (y _ test,y_predict,target _ names=digits.target _ names.as type ) str )
结果如下。
准确率很好。 识别手写数字的正确率在95%以上。