05-《机器学习及实战》学习之支持向量机分类

本文介绍如何使用支持向量机(SVM)对手写体数字图像进行识别。通过加载手写数字数据集,划分训练集和测试集,并采用线性支持向量机进行模型训练和测试,最后评估模型准确率。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

支持向量:真正帮助决策最优线性分类模型的数据点(注意是点)。何为支持向量,说白了就是一大堆决策之中最靠谱的那个!

使用支持向量机(分类)对手写体数字图像进行识别:

# -*- coding: UTF-8 -*-
#1、手写体数据读取代码样例
#从sklearn.datasets里面导入手写体数字加载器
from sklearn.datasets import load_digits
#从通过数据加载器获得手写体数字的数码图像数据并储存在digits变量中
digits=load_digits()
print digits.data.shape

#2、手写体数据分割样例
#从sklearn.cross_validation import train_test_split
#2、从sklearn.model_selection import train_test_split
from sklearn.model_selection import train_test_split
#随机选取75%\25%的数据作为训练和测试的样本数据
X_train,X_test,y_train,y_test = train_test_split(digits.data,digits.target,test_size=0.25,random_state=33)
#分别检视训练与测试数据规模
print y_train.shape
print y_test.shape

#3、使用支持向量机分类对手写体数字图像进行识别
#从sklearn.preprocessing里面导入数据标准化模块SdandardScaler
from sklearn.preprocessing import StandardScaler
#从sklearn.svm里面导入基于线性假设的支持向量机分类器LinearSVC
from sklearn.svm import LinearSVC

#仍然需要对训练和测试的特征数据进行标准化
ss =StandardScaler()
X_train=ss.fit_transform(X_train)
X_test=ss.transform(X_test)
#初始化线性假设的支持向量机分类器LinearSVC
lsvc=LinearSVC()
#进行模型训练
lsvc.fit(X_train,y_train)
#利用训练好的模型对测试样本的数字类别进行预测,预测结果存储在变量y_predict中
y_predict=lsvc.predict(X_test)
print y_predict

#4、在支持向量机模型分类的对手写体数码图像识别能力的评估
#使用模型自带的评估函数进行准确性评测
print 'The Accuracy of LinearSVC is :',lsvc.score(X_test,y_test)
#依然使用sklearn.metric里面的classification_report
from sklearn.metrics import classification_report
print classification_report(y_test,y_predict,target_names=digits.target_names.astype(str))


鸣谢:《机器学习及实战》编者
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

千码君2016

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值