9. k-近邻的k的影响有多大?
2024-04-10 10:00:29  阅读数 373

k-近邻涉及到的参数不多,也容易玩,因此我们来看下最为关键的参数k,对结果的影响。

之前我们都是把结果设置成了3,如数字识别,3的结果是1.06%的错误率。

我们来看看其他的:

1:最靠近哪个就是哪个,1.37%的错误率,也很不错嘛!看来你和闺蜜/兄弟的性格很接近啊。

2:1.37%,也挺好;

5:1.79%,开始下滑了;

10:2%        20:2.75%        50:5.18%        100:7.18%

至此可以看出,k大到一定程度(在这个数据集里,5就开始有点下滑了),结果就会变差。所以,k并非是越大越好。你可能要多次跑数据后,才能找到最合适的值。像这个数据集里,3这样小的数字,反而是最佳的设置。


如上是手写数字识别的数据集,我们来看看之前约会的数据集(90%的数据)。

3:8.11%,有点差,但用在约会判断上也还可以了;

1:9.6%,一票否决,也还好,能接受;

5:7.67%,看,比3还好,所以对于不同的数据集,并不是3是最好的;

7:7.78%,也差不多;

11:9.33%,变差了;

21:12.89%,又差了;后面就不测了;

所以呢,对于约会数据集,5-7是最佳的(我试了下6,和5的结果是一样的)。


由两个数据集的测试可得:

1)k不是越大越好,但至少要达到3;

2)要经过实测,确定最佳的k,而3可以作为初始值(不要认为3就一定是最佳值);

好了,这篇比较简短。但是观点是比较明确的。希望大家喜欢。