如果我们有一个 6 行 10 列的矩阵,我们必须确定 k 值。如果我们假设默认 k 值是 5,并且如果我们的列数少于 5 行数相同 6,我们可以假设列数 = k值是否正确?即 rows=6 cols=4 然后 k=col-1 => k=3
问问题
9354 次
3 回答
3
于 2013-08-09T11:06:38.020 回答
0
k=sqrt(n) 对各种数据集没有最佳结果。一些数据集,其结果非常糟糕。例如,一篇 90 年代论文链接的论文说 k 的最佳结果在 5-10 之间,但 sqrt(n) 给出了 17。其他一些论文提出了一些有趣的建议,例如局部 k 值或加权 k。
很明显,选择 k 这不是一个容易的选择。这没有一个简单的公式,并且取决于我们的数据集。选择最优 k 的最佳方法是计算哪个 k 最适合我们的数据集的准确度。一般来说,如果我们的数据集越来越大,最优 k 值也会越来越大。
于 2018-11-16T16:52:44.737 回答