3
我想找到边界决策函数来分类我的数据。这是他们的一个例子。使用knn分类器的边界决策
"Distance","Dihedral","Categ"
4.083,82.267,C
4.132,87.073,C
4.713,-80.999,C
3.427,-48.144,NC
3.663,96.994,C
3.99,71.919,C
3.484,78.684,C
到目前为止,我有knn模型,但我想绘制非线性决策边界。在我搜索的例子中,有一些变量我不知道在哪里使用它们或者它们是什么意思。我正在谈论我在“统计学习元素”一书中找到的这个例子
library(ElemStatLearn)
require(class)
x <- mixture.example$x
g <- mixture.example$y
xnew <- mixture.example$xnew
mod15 <- knn(x, xnew, g, k=15, prob=TRUE)
prob <- attr(mod15, "prob")
prob <- ifelse(mod15=="1", prob, 1-prob)
px1 <- mixture.example$px1
px2 <- mixture.example$px2
prob15 <- matrix(prob, length(px1), length(px2))
par(mar=rep(2,4))
contour(px1, px2, prob15, levels=0.5, labels="", xlab="", ylab="", main=
"15-nearest neighbour", axes=FALSE)
points(x, col=ifelse(g==1, "coral", "cornflowerblue"))
gd <- expand.grid(x=px1, y=px2)
points(gd, pch=".", cex=1.2, col=ifelse(prob15>0.5, "coral", "cornflowerblue"))
box()
px1和px2究竟是什么?我是否需要类似的变量来处理特定情况?
非常感谢您的帮助!
我认为PX1和PX2只是描述用于新的数据网格的载体,即沿其中有新数据x和y轴的点。 – Andrie