【问题标题】:Choosing k for KNN in Matlab在 Matlab 中为 KNN 选择 k
【发布时间】:2013-02-05 00:06:57
【问题描述】:

我目前正在使用 Matlab 的 k 最近邻分类器 (knnclassify) 来训练和测试二进制属性。如果没有提供 k,则 k 的默认值参数是 1,并且可以选择其他 k 值。我已经在网上和 stackoverflow 上进行了研究,但没有任何相关内容可以解决我的问题,即 k 的最佳用途。是否有一个内置函数可以告诉我,对于我的特定数据,或者它只是猜测并等待查看得出的准确性是多少?任何帮助将不胜感激。

这里是 matlab 的 knnclassify 文档的链接:knnclassify

【问题讨论】:

    标签: matlab classification knn


    【解决方案1】:

    这里有一个典型的模型选择问题。您想要的是选择k,它可以为您的数据提供最低的总体错误。 k 值越大泛化效果越好,而较小的值可能会过度拟合。

    因此,交叉验证是选择此参数的好方法,我找到了this article,这似乎是一种合理的方法。

    【讨论】:

    猜你喜欢
    • 2015-03-18
    • 2019-06-24
    • 2015-01-19
    • 1970-01-01
    • 2023-01-24
    • 2017-06-30
    • 1970-01-01
    • 2013-06-19
    相关资源
    最近更新 更多