SVM作业报告

数据准备

这一步为加载Iris数据集,同时对数据进行标准化,划分训练集和测试集。使用train_test_split和StandardScaler标准化api

模型训练

这一步为了使用数据训练SVM模型。分别声明使用线性核和RBF核的SVM,并使用上一步得到的训练集训练模型;训练完成后使用测试集数据进行预测,与标准结果进行比较计算准确率。

决策边界绘制

这一步为可视化SVM的训练效果,直观地看到好坏。使用plot_decision_boundary并传入训练好的模型与原始数据进行绘制,这一步修改了该函数的内部实现,增加了对网格化后的数据的标准化。

超参数调优

这一步为了寻找相对最优的CCγ\gamma 。使用网格搜索GridSearchCV对最优超参数进行挑选,并使用三折交叉验证。

两个超参数CCγ\gamma :

CC: 正则化参数

  • 用于调节错误分类的样本,调节正则化惩罚,控制模型对训练数据的拟合程度
  • 可以平衡决策边界的平滑性和训练误差
  • CC值强调分类准确,而小CC值可以使决策边界更平滑

γ\gamma:RBF核参数

  • γ\gamma 控制 RBF 核函数的影响范围,决定一个训练样本能“作用”到多远的特征空间

  • γ\gamma 决定了样本点的高斯分布宽度

  • γ\gamma 越大,每个支持向量的影响范围越小

模型评估

这一步为评估最佳模型的效果。对上一步得到的最佳模型进行训练,并对测试集数据进行预测;根据预测结果进行评分、计算准确率等,并绘制决策边界和混淆矩阵。

效果图

GridSearchCV 搜索过程

image-20241108130853230

image-20241108130918162

image-20241108131141094

模型性能

普通线性核和RBF核

image-20241108130937850

最佳RBF核

image-20241108131127165

决策边界图

线性核

image-20241108131229637

RBF核

image-20241108131239414

最佳RBF核

image-20241108131244254

混淆矩阵

最佳RBF核

image-20241108131250422