python 如果目标被标记为0和1,在SVM中如何进行数学分类?

wqnecbli  于 2022-12-25  发布在  Python
关注(0)|答案(1)|浏览(122)

我的数据集具有要素列和目标标签0和1。
当我使用SVM分类器进行二进制分类时,预测效果很好。
但我的问题是它是如何被数学预测的?
边缘超平面H1和H2具有以下方程:W^T X +B〉= 1
这意味着,如果大于+1,则福尔斯一个类中。如果小于-1,则落入另一个类中。
但是我们已经给了目标标签0和1。
数学上是怎么计算的呢?
任何Maven请.....

rdrgkggo

rdrgkggo1#

基本上,SVM希望找到最优超平面,以最大化每个类中最接近的数据点之间的间隔(所谓的支持向量)的方式分割数据点。这一切都可以分解为以下拉格朗日优化问题:

*w:确定最佳超平面的向量(为了直观起见,请熟悉点积的几何含义)
***(w^T∙x_i+B)**是标量,显示单个数据点x_i与最大边距超平面之间的几何距离
*B是一个偏差向量(我认为它来自SVM推导中的不定积分),您可以在此处找到更多信息:University Stanford -Computer Science Lecture 3-SVM
*λ_i拉格朗日乘数
*y_i标准化分类边界

求解优化问题得到所有必需的参数w、b和lambda。
用一句话回答您的问题:类边界[-1,1]是任意设置的,实际上只是定义。
二进制数据[0; 1](所谓的伪变量)与边界无关,它只是一种方便的标记二进制数据的方法,标记只需要将特征链接到其对应的类或范畴。
公式(8)中唯一的非参数是x_i,即特征空间中的数据点。
至少我是这样理解SVM的。如果我说错了或不精确,请随时纠正我。

相关问题