APP下载

基于R语言的k-最近邻法数字模式识别研究

2014-03-13钟志强

电脑与电信 2014年8期
关键词:模式识别分类语言

钟志强

(鞍山师范学院物理科学与技术学院,辽宁 鞍山 114007)

基于R语言的k-最近邻法数字模式识别研究

钟志强

(鞍山师范学院物理科学与技术学院,辽宁 鞍山 114007)

k-最近邻法是常见的机器学习算法,R语言中通过kknn包完成算法实现,但其无法实现图像文件的处理。为此,本文先将图像文件转换成文本文件,再结合KNN算法对文件中数字图像进行模式识别。实验得出其判断结果达到了预期指标。

k-最近邻法;模式识别;R语言

1.k-最近邻法原理

k-最近邻法(k-nearest neighbor,KNN)是最简单的机器学习算法之一,可以用于分类和回归。KNN认为,待分类对象的类别可以通过在它附近的训练数据的类别来确定,所以采取的策略就是找到离待分类对象最近的K个邻居进行分析[1]。将样本特征空间中的k个最相似的样本中的大多数划属某一个类别。KNN方法主要靠周围有限的邻近的样本,而不是靠判别类域的方法来确定所属类别。KNN方法虽然从原理上也依赖于极限定理,但在类别决策时,只与极少量的相邻样本有关。因此对于类域的交叉或重叠采用较多的待分样本集更为适合。搜索k个近邻算法的伪算法表示为:KNN(A[n],k),输入:A[n]为N个训练样本在空间中的坐标,k为近邻数;输出:x所属的类别。取A[1]~A[k]作为x的初始近邻,for(i=k+1;i<=n;i++)计算a[i]与x间的距离d(x,A[i]);if (d(x,A[i]))<D else用A[i]代替最远样本;按照d(x,A[i])升序排序,计算最远样本与x间的距离D=max{d(x,A[j])|j=1,...,i};计算前k个样本A[i]),i=1,2,...,k所属类别的概率,具有最大概率的类别即为样本x的类。

2.R语言KNN实现基本实例

R是GNU系统的一个自由、免费、源代码开放的软件,主要用于统计分析与数据可视化。……

登录APP查看全文

猜你喜欢

模式识别分类语言
分类算一算
语言是刀
让语言描写摇曳多姿
教你一招:数的分类
浅谈模式识别在图像识别中的应用
第四届亚洲模式识别会议
我有我语言
第3届亚洲模式识别会议
电气设备的故障诊断与模式识别