【机器学习】python使用支持向量机SVM
准备:
数据集
导入SVM模块
步骤:
1.读取数据集
2.划分训练样本与测试样本
4.计算分类准确率
5.绘制图像
关于SVM的原理知识,在【机器学习】支持向量机中讲过,欲知详情,可戳:
https://blog.csdn.net/u012679707/article/details/80501358
在Matlab中可以使用工具箱中的svm算法,具体实例在之前的人脸识别matlab实现中讲过,可戳:
https://blog.csdn.net/u012679707/article/details/78152713
因为Python中的sklearn库也集成了SVM算法,所以在Python中一样可以使用支持向量机做分类。
【注意】本文的运行环境是windows+Pycharm+python3.6。
Scikit-Learn库基本实现了所有的机器学习算法,具体使用详见官方文档说明:
http://scikit-learn.org/stable/auto_examples/index.html#support-vector-machines
因为本文是基于sklearn包,所以需先在python中下载sklearn包,网上有很多教程,在此不再叙述。
数据集
本文用的数据集为Iris.data可从UCI数据库中下载,http://archive.ics.uci.edu/ml/datasets/Iris
Iris.data的数据格式如下:共5列,前4列为样本特征,第5列为类别,分别有三种类别Iris-setosa, Iris-versicolor, Iris-virginica。
注意:因为在分类中类别标签必须为数字量,所以应将Iris.data中的第5列的类别(字符串)转换为num.