用于KNN结果的可视化树,在R中

时间:2017-08-09 13:09:19

标签: r knn

我使用KNN方法构建分类预测模型,导致其他方法效果不佳,但这给出了最佳结果。

acc1=read.xlsx("C:/Users/admin/Desktop/ido.xlsx")\

acc1$f2<-NULL
acc1$f3<-NULL
table(factor(na.omit(acc1)$id), 
      FNN::knn.cv(train=prcomp(na.omit(acc1[, -c(1,2)]))$x[, 1], cl=factor(na.omit(acc1)$id), k=1))

但是,我必须让这个模型让程序员将它编码到我们的CRM中。因为 KNN没有预测模型的等式,我们只根据数据做出决定,我想绘制树图,清楚地看到,我们必须采取什么样的决定(1或0)。 这是怎么回事? 什么包装正确用于此目的?

数据在这里:dat

1 个答案:

答案 0 :(得分:1)

KNN查看某个点的K-最近邻居,并根据这些邻居预测其值。

要获得某个未知点的预测值,您会找到K个最近邻居并占据多数,或者在平局的情况下随机选择。

没有&#34;树情节&#34;决策树算法以相同的方式工作,除非最近邻居将数据的向量空间划分为voronoi多面体,并且至少对于k = 1,每个voronoi多面体具有其中所有点的预测值。 &#34;树图&#34;然后是一系列关于测试数据点超平面哪一侧的结果的决定。

在1D中,voronoi多面体是线段。

示例,1-NN,1维:

Data:    ---1--------0--0----1----1-----1--1--0---
Predict: 11111111000000000011111111111111111100000

查看预测值如何与上面一行中最近的数据点对应?那是1-NN的作用。你已经抛出了一个额外的主要组件步骤(这对于1D来说毫无意义)。

因此要预测某个给定值,找到它最近的邻居。使用get.knnx