机器学习实战目录
第一章 python训练线性模型实战
第二章 python训练决策树模型实战
第三章 python训练神经网络模型实战
第四章 python训练支持向量机模型实战
第五章 python训练贝叶斯分类器模型实战
第六章 python训练集成学习模型实战
第七章 python训练聚类模型实战
第八章 python训练KNN模型实战
第九章 python训练CNN模型实战
第十章 python训练RNN模型实战
......(会一直更新)
目录
第四章 python训练支持向量机模型实战
训练一个支持向量机模型,可以按照以下步骤进行:
1. 下载数据集
可以在 UCI ML Repository、Kaggle 等网站中下载各种类型的数据集。以使用的 iris 数据集为例,具体步骤如下:
- 前往 UCI ML Repository 网站 (https://archive.ics.uci.edu/ml/index.php)。
- 在搜索栏中输入 iris,找到 iris 数据集并点击下载链接 iris.data。
2. 处理数据
将下载后的 iris.data 文件读取成 pandas.DataFrame 格式,并进行处理。
``` python
import pandas as pd
colnames = ['sepal-length', 'sepal-width', 'petal-length', 'petal-width', 'class']
iris = pd.read_csv('iris.data', names=colnames)
iris.head()
```
3. 准备训练数据
将 iris 数据集提取特征和标签数据。
``` python
X = iris.drop('class', axis=1)
y = iris['class']
```
4. 数据预处理
使用 sklearn 库中的 StandardScaler 对特征数据进行归一化处理。
``` python
from sklearn.preprocessing import StandardScaler
scaler = StandardScaler()
X_scaled = scaler.fit_transform(X)
```
5. 创建 SVM 模型
使用 sklearn 库中的 svm.SVC 创建 SVM 模型。
``` python
from sklearn import svm
clf = svm.SVC(kernel='linear')
```
6. 训练模型
使用模型的 fit() 函数来训练数据。
``` python
clf.fit(X_scaled, y)
```
7. 测试模型
使用测试数据集验证 SVM 模型的拟合效果。
``` python
import numpy as np
# 随机生成3组测试数据,注意需要归一化处理
test_data = scaler.transform(np.array([[5.1, 3.5, 1.4, 0.2], [6.7, 3.1, 4.7, 1.5], [7.9, 3.8, 6.4, 2.0]]))
# 获得模型预测结果
pred = clf.predict(test_data)
print(pred)
```
在这里,我们使用的评价指标是准确率,用于衡量 SVM 的分类效果。其中,准确率越高,说明 SVM 模型的分类效果越好,即预测结果和真实值之间的差距越小。
参考资料:
[[1](https://zhuanlan.zhihu.com/p/31886934)]
[[2](https://scikit-learn.org/stable/modules/generated/sklearn.svm.SVC.html)]
大家觉得有帮助的话还请大家给个收藏关注鼓励一下,有什么问题评论区留言,看到会恢复哒~