Javatpoint标志
Javatpoint标志

如何在Python中使用SVM分类器和RBF内核制作更好的模型

随着机器学习技术的不断普及和采用,数据科学家和程序员必须了解如何创建可行的最佳模型。支持向量机(SVM)分类器是一种对各种数据源有效的线性分类器,是一种有效的技术,可用于提高机器学习技术的准确性和效率。这篇文章将专注于使用Python的径向基函数(RBF)内核和SVM分类器来为真实的数据集创建更准确的设计。

一个很受欢迎的用于分类和回归分析的机器学习方法被称为支持向量机(SVM)。支持向量机是一种监督训练技术,它通过在强高维空间中定位最优超平面,将输入信息划分为不同的类别。最接近最优超平面的顶点被称为支持向量,因为这两个类之间的距离最大的就是这个超平面。在这篇文章中,我们将讨论如何利用SVM分类器和RBF内核来改进Python中的模型。

径向基函数(RBF)核是支持向量机中应用最广泛的模型,因为它可以检测特征与目标值之间的非线性相关性。这篇文章将涉及以下主题:

  • 了解RBF核和SVM分类器
  • 数据加载和准备
  • 将RBF核融合到SVM分类器中
  • 评估模型的支持向量机性能
  • 通过调整超参数来改进SVM模型
  • 看到结果
  • 学习RBF核和SVM分类器

支持向量机是一种二元分类技术,可以处理多类分类问题。利用支持向量机方法找到了优化两类分离的超平面。选择超平面来优化两个类之间的差异。边界是这个地区的名称。支持向量实际上是离超平面最近的位置,用来定位超平面。

收集到的数据通过非线性RBF核映射到更大的高维空间。在这个更大的高维空间中,数据的线性可分性使得寻找理想超平面变得更简单。RBF内核的定义如下:

代码

其中||x-y||是两点之间的欧氏距离,x和y确实是主要的输入,并且决定了径向基函数的形式。

加载和预处理数据

为了为SVM模型准备好数据,我们将在本部分中导入并准备数据。我们将利用鸢尾花数据集,其中有150个鸢尾花样本,具有萼片长度、萼片宽度、花瓣长度和花瓣宽度四个特征。这是机器学习领域中一个众所周知的训练数据。

代码

之后,将数据分为测试集和训练集。这是一个关键阶段,因为它使我们能够评估算法在假设数据上的有效性。

代码

将RBF核融合到SVM分类器中

为了将包含RBF核的SVM分类器拟合到相同的训练数据,我们将首先利用来自sklearn的SVC类。支持向量机包。

代码

SVM模型的性能评估

在对模型进行训练之后,我们将使用测试数据上的正确性、准确性、召回率和F1分数等度量来评估其有效性。

代码

可以使用predict()函数来实现这一点,该函数接受一个数据矩阵并输出一个预测数组。

代码

完整的代码:

代码

在这段代码中导入虹膜数据集并将其分为测试集和训练集。利用拟合技术训练SVM分类器,利用核参数提供RBF核。采用预测法对测试数据进行预测,采用scikit-metrics learn模块中的准确率评分法确定模型的能力。







Youtube 视频加入我们的Youtube频道:现在加入

反馈


帮助别人,请分享

脸谱网 推特 pinterest

学习最新教程


准备


热门的技术


b .技术/马华






Baidu
map