文章目录
一、引言
最小距离分类器: 它将各类训练样本划分成若干子类,并在每个子类中确定代表点。测试样本的类别则以其与这些代表点距离最近的样本类别作为决策类别。该方法的缺点是所选择的代表点并不一定能很好地代表各类,其后果将使错误率增加。
近邻法: 最小距离分类器的一种极端的情况,以全部训练样本作为代表点,计算测试样本与所有样本的距离,并以最近邻者的类别作为决策。
最初的近邻法是由Cover和Hart于1967年提出的,随后得到理论上深入的分析与研究,是非参数法中最重要的方法之一。
二、最近邻法
1.最近邻法-决策规则
最近邻法:nearest neighborhood classifier (nnc),将与测试样本最近邻样本的类别作为决策的结果。 对一个C类别问题,每类有Ni个样本,i=1,…,C,则第i类ωi的判别函数为:
决策规则:
最近邻法在原理上最直观,方法上也十分简单只要比较x与 个已知类别的样本之间的欧氏距离,并决策x与离它最近的样本同类。明显的缺点就是计算量大,存储量大。
2. 最近邻法 —错误率分析
近邻法的错误率很难计算,因为训练样本集的数量总是有限的,有时多一个少一个训练样本对测试样本分类的结果影响很大。如图中所示:
当最近邻法所使用的训练样本数量N不是很大时,其错误率是带有偶然性的。为了说明这一点用如图所示一个在一维特征空间的两类别情况来讨论。
1.当最近邻法应用于特定的一组样本时,所得到的错误率与样本的偶然性有关。
2.特别是用不同组的N个样本对x进行分类的话,则x的最近邻可能是不相同的x’。
3.由于决策完全取决于该最近邻样本,所以条件错误率是PN(e|x,x’),它同x和x’都有关系。若对x’取平均,可得给定x时的条件错误率.
三.K-近邻法
Knn分类算法描述:
(1)计算已知类别数据及其中的样本点与当前样本点的距离;
(2)按距离递增次序排序.
(3)选取与当前样本点距离最小的k个样本点
(4)确定前K个样本点所在类别出现的频率
(5)返回频率最高的类别作为当前样本的预测类别
这就是k-近邻法的基本规则。若分错,则风险很大,错误率大,损失大。考虑到风险(损失)问题,对ki加以约束,若
k近邻一般采用k为奇数,跟投票表决一样,避免因两种票数相等而难以决策。
最近邻法和k-近邻法都有方法简单的优点,而且分类效果比较好,类似可证其错误率为
由于P*一般很小,因此上式可近似表示为
即近邻法错误率在Bayes错误率P*和两倍Bayes错误率2P*之间。 正因为此优良性质,使其成为模式识别的重要方法之一。
优点:
- 简单有效
- 对数据的分布没有要求
- 训练阶段很快
缺点:
- (1)不产生模型,在发现特征之间关系上的能力有限
- (2)分类阶段很慢 ,需要大量的内存 :需要将所有样本存入计算机中,每次决策都要计算待识别样本x与全部训练样本 ,i =1,2,…,c,k = 1,2,…,Ni之间的距离并进行比较
- (3)分类变量(特征)和缺失数据需要额外处理
(4)要求样本数N → ∞,这在任何实际场合是无法实现的。
(5)近邻法只适用于特征空间维度较低且边界不规则情况下的分类或回归预测
四.关于K的选择
K-近邻法中的近邻个数
最简单情况下只需找到距离X0最近的一个近邻Xi,即参数K=1(1-近邻)
1-近邻法非常简单,尤其适用于分类预测时,特征空间维度较低且类别边界极不规则的情况
1-近邻法只根据单个近邻进行预测,预测结果受近邻差异的影响极大,通常预测波动(方差)性较大,稳健性低。
可通过增加近邻个数K以提升预测的稳健性
增加K会导致分类边界趋于平滑,预测误差增大,依据对预测误差的接受程度设置参数K,是一种可取的方式。
1.旁置法
将整个样本集随机划分为训练样本集和测试样本集。利用训练样本集建立预测模型,对测试样本集做预测并计算其预测误差。该预测误差也称为测试误差将作为模型预测误差的估计 旁置法适合样本量较大的情况。
2.留一法
在包含n个观测的样本中,抽出一个观测作为测试样本集,剩余的n-1个观测作为训练样本集;依据建立在训练样本集上的预测模型,对被抽出的一个观测进行预测,并计算预测误差;这个过程需重复n次;最后,计算n个预测误差的平均值,该平均值将作为模型预测误差的估计.
五.具体应用