在机器学习中,常用的近邻法包括最近邻法、K-近邻法、剪辑近邻法、以及压缩近邻法。本篇文章,我们将对这几种方法进行介绍。
一 、最近邻法:
(1)对未知样本x进行分类:求样本集合中与之距离最近的样本,设该样本为且样本对应的类别为。则有:
依照最近邻法,因此将样本x分成类别。
(2)写成判别函数的形式为:
类的判别函数可以写作:
决策规则为各类的判别函数比较大小,即:
若 ,则
(3)研究表明,在已知样本数量足够的情况下,这种直观的最近邻决策可以取得很好的效果,其错误率为p。
这里,为贝叶斯错误率(即理论最优错误率),c为类别数。
二 、K-近邻法:
(1)定义:计算集合中每个样本与待分类(新)样本的距离,选择前若干个离新样本最近的已知(分类)样本,用它们的类别来投票决定新样本的类别。这种方法称为k-近邻法(因为人们习惯上把参与投票的近邻样本的个数记作k)。
(2)判别函数的形式为:设有N个已知样本分属于c个类别。考察新样本x在这些样本中的前k个近邻,设其中有个样本属于类,则类的判别函数为:
决策规则为:
若 ,则
三 、剪辑近邻法:
(1)定义:考试集和训练集方法识别出交界区的样本:
① 将已知样本集划分为考试集和训练集。用训练集对考试集进行近邻法分类(前述两种方法可任选),从中剔除被错误分类的样本,剩余的样本构成剪辑样本集,对未来样本进行近邻法分类。
② 对于任意的x,采用一近邻剪辑法的错误率可以由近邻法的错误率来表示:
(2)多重剪辑方法MULTIEDIT:(迭代+剪辑)
① 划分:将样本集随机划分为S个子集,;
② 分类:用对中的样本进行分类,;
③ 剪辑:从各个子集中去掉在②中被错误分类的样本;
④ 混合:把剩余的样本合在一起,形成新的样本集合;
⑤ 迭代:用新样本集替代原样本集,转向①。如果在最近的m次迭代中都没有样本被剪掉,则停止迭代,用最后的作为剪辑后的样本集对未知样本进行分类。
四 、压缩近邻法:
(1)原理:考察近邻法的分类原理,可以发现远离分类边界的样本对最后的分类决策没有贡献。如果找出各类中最有利与其他类区分的代表性样本,就可以简化决策过程中的计算。
(2)算法:将样本集分为和两个活动的子集,前者称为储存集storage,后者称为备选集GrabBag。算法开始时,中只有一个样本,其余样本均在中。考察中的每一个样本,若用中的样本能够对它进行正确分类,则该样本保留在中,否则移到中。依此类推,直到不移动样本为止。最后用中的样本对未知样本进行分类。
(3)压缩近邻法与支持向量机的关系:
①:支持向量机求解最大化分类间隔的最优分类面,得到一组能够代表样本集中全部分类信息的支持向量;
②:压缩近邻法是通过启发式的方法寻求用较少的样本来代表样本集中的分类信息。