R语言分类算法之距离判别(Distance Discrimination)

1.距离判别原理分析
根据待判定样本与已知类别样本之间的距离远近做出判断.根据已知类别样本信息建立距离判别函数式,再将各待判定样本的属性数据逐一代入式中计算,得到距离值,再根据此将样本判入距离值最小的类别的样本簇.
K最近邻算法则是距离判别法中使用最为广泛的,他的思路是如果 一个样本在特征空间中的K个最相似/最相邻的样本中的大多数属于某一个类别,则该样本也属于这个类别.
图中3个实心表示样本点,其周围分布着若干分别用圆形,三角形,正方形空心点表示出的三种已知类别的样本点.现在我们取K=5,即圈出与待分类样本点最相近的5个样本点,然后查看他们的类别.这5个点中属于哪个类别的样本多,该未知样本就属于哪个类别.易得未知样本(从左到右)依次属于圆形,三角形,正方形.
K最近邻方法进行判别时,由于其主要依靠周围有限邻近样本的信息,而不是靠判别类域的方法来确定所属类别,因此对于类域的交叉或重叠较多的待份样本集来说,该方法较其他方法更为合适.
距离判别
2.在R语言中的应用
在K最近邻(K-Nearest Neighbor,KNN)算法中我们主要用到了class包里面的
knn(train,test,cl,k=1,1=0,prob=FALSE,use.all=TRUE)函数。
而在有权重的k最近邻(Weighted K-NearestNeighbor,KKNN)我们主要用到了kknn包里的
kknn(formula=formula(train),train,test,na.action=na.omit(),k=7,distance=2,kernel=”optimal”,ykernel=NU

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值