AI 入门 101

什么是支持向量机?

mm

什么是支持向量机?

支持向量机是一种机器学习分类器,可能是最流行的分类器之一。支持向量机特别适用于数值预测、分类和模式识别任务。

支持向量机通过在数据点之间绘制决策边界来运作,目标是找到最能将数据点分成类别(或最具普遍性的)的决策边界。使用支持向量机的目标是决策边界之间的距离尽可能大,以便任何给定数据点和边界线之间的距离最大化。这是支持向量机(SVMs)运作的简要解释,但让我们花点时间更深入地了解SVMs的运作原理和它们的工作逻辑。

支持向量机的目标

想象一个图表,图表上有多个数据点,基于X和Y轴指定的特征。图表上的数据点可以大致分为两个不同的集群,数据点所属的集群表示数据点的类别。现在,假设我们想在图表上绘制一条线,将两个类别分开,一个类别的所有数据点都在一侧,另一个类别的所有数据点都在另一侧。这条分离线称为超平面。

你可以把支持向量机看作是在城市中创建“道路”,将城市分成道路两侧的区域。所有在一侧的建筑物(数据点)都属于一个区域。

支持向量机的目标不仅是绘制超平面和分离数据点,还要绘制具有最大间距的超平面,即决策边界和任何给定数据点之间的距离最大。回到“道路”隐喻,如果城市规划师设计一条高速公路,他们不希望高速公路离房屋或其他建筑物太近。高速公路和两侧建筑物之间的间距越大,越好。这个间距越大,分类器对其预测的信心就越高。在二元分类的情况下,绘制正确的超平面意味着选择一个恰好在两个类别之间的超平面。如果决策边界/超平面离一个类别更远,它将离另一个类别更近。因此,超平面必须在两个类别之间的间距上取得平衡。

计算分离超平面

支持向量机如何确定最佳分离超平面/决策边界?这是通过使用数学公式计算可能的超平面来实现的。我们不会详细介绍计算超平面的公式,但该线是使用著名的斜率/线公式计算的:

Y = ax + b

同时,线是由点组成的,这意味着任何超平面都可以被描述为:由模型的权重乘以特征集修改的偏移量/偏差(“d”)确定的点集,该点集平行于拟议的超平面。

支持向量机绘制多个超平面。例如,边界线是一个超平面,但分类器考虑的数据点也在超平面上。X的值是基于数据集的特征确定的。例如,如果您有一个包含许多人的身高和体重的数据集,“身高”和“体重”特征将用于计算“X”。拟议的超平面和各个“支持向量”(数据点)之间的间距是使用以下公式计算的:

W * X – b

虽然您可以阅读更多关于支持向量机背后的数学知识,但如果您想要更直观地理解支持向量机,只需知道目标是最大化拟议的分离超平面/决策边界和平行于它的其他超平面(以及数据点所在的超平面)之间的距离。

图片:ZackWeinberg通过维基媒体公共,CC BY SA 3.0(https://commons.wikimedia.org/wiki/File:Svm_separating_hyperplanes_(SVG).svg)

多类分类

到目前为止描述的过程适用于二元分类任务。然而,支持向量机分类器也可以用于非二元分类任务。当对具有三个或更多类别的数据集进行支持向量机分类时,会使用更多的边界线。例如,如果分类任务有三个类别而不是两个,将使用两个分离线来将数据点分成类别和区域,单个类别的区域将位于两个分离线之间。与其仅计算两个类别和决策边界之间的距离,不如考虑决策边界和数据集中的多个类别之间的间距。

非线性分离

上述过程适用于数据是线性可分的情况。注意,在现实中,数据集几乎从来不是完全线性可分的,这意味着在使用支持向量机分类器时,您经常需要使用两种技术:软间距和核技巧。考虑一种情况,其中不同类别的数据点混合在一起,一些实例属于一个类别的“集群”中的另一个类别。如何处理这些实例?

一种可以用来处理非线性可分数据集的策略是应用“软间距”支持向量机分类器。软间距分类器通过接受少量误分类的数据点来运作。它将尝试绘制一条最能分离数据点集群的线,数据点集群中包含每个类别的大多数实例。软间距支持向量机分类器尝试创建一个平衡分类器两个需求的分离线:准确性和间距。它将尝试最小化误分类同时最大化间距。

支持向量机的误差容忍度可以通过操纵一个称为“C”的超参数来调整。C值控制分类器在绘制决策边界时考虑的支持向量的数量。C值是对误分类的惩罚,这意味着C值越大,分类器考虑的支持向量越少,间距越小。

核技巧以非线性方式转换数据。图片:Shiyu Ju通过维基媒体公共,CC BY SA 4.0(https://commons.wikimedia.org/wiki/File:Kernel_trick_idea.svg)

核技巧通过对数据集中的特征应用非线性数学函数来运作。核技巧将数据集中的现有特征转换为新的特征。应用这些非线性转换的结果是非线性决策边界。由于支持向量机分类器不再受线性决策边界的限制,因此它可以绘制更好地封装支持向量的真实分布的曲线决策边界,并将误分类减至最小。支持向量机中最流行的两个非线性核是径向基函数和多项式函数。多项式函数创建所有现有特征的多项式组合,而径向基函数通过测量中心点/点到所有其他点的距离来生成新的特征。

博客作者和程序员,专攻 Machine Learning Deep Learning 领域。Daniel 希望帮助他人利用 AI 的力量为社会做好事。