KNN 算法总结 1 KNN 分类算法 1.1KNN 简述 K 最近邻(k-Nearest Neighbor,KNN)分类算法,是一个理论上比较成熟的方法,也是最简单的机器学习算法之一。该方法的思路是:如果一个样本在特征空间中的k 个最相似(即特征空间中最邻近)的样本中的大多数属于某一个类别,则该样本也属于这个类别。KNN 算法中,所选择的邻居都是已经正确分类的对象。该方法在定类决策上只依据最邻近的一个或者几个样本的类别来决定待分样本所属的类别[1]。KNN 方法虽然从原理上也依赖于极限定理,但在类别决策时,只与极少量的相邻样本有关。由于 KNN 方法主要靠周围有限的邻近的样本,而不是靠判别类域的方法来确定所属类别的,因此对于类域的交叉或重叠较多的待分样本集来说,KNN 方法较其他方法更为适合。 KNN 最邻近规则,主要应用领域是对未知事物的识别,即判断未知事物属于哪一类,判断思想是,基于欧几里得定理,判断未知事物的特征和哪一类已知事物的的特征最接近。 1.2 KNN原理 最近邻方法(k-nearest neighbor,简称kNN)是一种简洁而有效的非参数分类方法,是最简单的机器学习算法之一,该算法最初由 Cover 和Hart 提出的,用于解决文本的分类问题。 K 近邻算法是最近邻算法的一个推广。该规则将是一个测试数据点x 分类为与它最接近的K 个近邻中出现最多的那个类别。K 近邻算法从测试样本点x 开始生 长 ,不断的扩 大区 域,直 到 包 含 进 K 个训 练 样本点为止 ,并 且 把 测试样本点x归 为这最近的K 个训 练 样本点中出现频 率 最大的类别。其中测试样本与训 练 样本的相似度 一般 使 用欧式 距 离 测量。 如果 K 值 固 定,并 且 允 许 训 练 样本个数趋 向 于无 穷 大,那么 ,所有的这 K 个近邻都将收 敛 于 x。如同 最近邻规则一样,K 个近邻的标 记 都是随 机变 量,概 率P( wi|x),i=1,2,… ,K 都是相互 独 立 的。假 设P( wm|x) 是较大的那个后 验 概 率 ,那么根据贝叶斯分类规则,则选取类别wm。而最近邻规则以概率 P(wm|x)选取类别。而根据K 近邻规则,只有当 K 个最近邻中的大多数的标记记为 wm,才判定为类别wm。做出这样断定的概率为 通常 K 值越大,选择类别wm 概率也越大[2]。 K 近邻法是有监督学习方法,原理很简单,假设我们有一堆分好类的样本数据,分好类表示每个样本都一个对应的已知类标签,当来一个测试样本要...