我相信很多人都在研究并正在研究K-NN算法,我就是其中之一。
我刚刚遇到一句话说“对于任何给定的问题,k的小值会导致预测的大变化。或者,将k设置为较大的值可能会导致较大的模型偏差。”,I认为这对很多人来说是直截了当的,但不是我。
如果您已经知道这意味着什么,请帮助我了解它是什么。
答案 0 :(得分:2)
好的,让我们从顶部开始。
<强> 1。 k-NN如何运作?
你有n(k小于n)点的基数,你知道你想要的答案 - 你可能已经从oracle获得了它。该集合称为训练集,因为您将其提供给虚拟实体(k-NN分类器),以便它可以学习所需的结果。通过&#34;点&#34;我们的意思是单个例子,用某些空间中的特征描述,允许我们计算距离。
当要求对新点进行分类(识别)时,您将在n点搜索最接近新点的k个实例。通过&#34;最接近&#34;我们的意思是&#34;特征向量和#34;之间的距离最短。 然后,您将根据这些k点的投票选择答案。例如,如果k = 5且3分表示新的A类和2类B类,则假设新的类型为A类。您必须为绘制指定一些策略 - 可能会回落到1- NN并返回最近点的类。
<强> 2。 &#34;对于任何给定的问题,小的k值将导致预测的大的变化。&#34;
我假设通过&#34;预测的大变化&#34;作者在分类大量数据时意味着很多错误&#34;。
为什么会这样?
因为k-NN很天真。直观的是,关闭点可能属于同一类,但并非总是如此。例如,请参见下图中的A点。如果我们使用k = 1,那么最近的点将是红色,即使答案应该是绿色。对于k = 2,我们得到红色和绿色之间的平局并选择红色,因为它更接近。
来源:English wiki,略带副手修改
最后,IMO的句子意味着&#34;如果k很小,你可能会得到许多错误的结果&#34;。
第3。 &#34;将k设置为较大的值可能会导致较大的模型偏差。&#34;
A&#34;偏见&#34;即使问题是均匀分布的,也是一种比另一种更频繁地给出一个答案的倾向。可能会出现大k,但问题是&#34;当&#34;。
嗯,#34;当&#34;是#34;当你的训练集有偏见时#34; &#34;偏压&#34;这意味着某些类的代表点数多于其他类。
考虑一个训练集,其中你有5分的课程+和更多的分数*,如下图所示。
它可能并不代表课程之间的真实关系,而是您所拥有的所有数据。在下图中,类可能是可分离的,并且标记为红色?可能是+。
如果你使用k = 10,你几乎总能得到答案*。最好的情况是标有红色的点? - 你将获得所有五个+积分,另外5个点并使用+解决1-NN的平局,所以答案是正确的。
无论如何,在大多数情况下,你的分类器将提供一个特定的答案,这恰好是偏见 - 一个课程将更频繁地返回。
在前面的例子中并非如此 - 正如句子所述,可能会导致较大的偏见,但并非必须如此。
最后,该句子意味着,如果您的数据集存在偏差,那么对于大k而言,您的分类器也可能比小k更有偏见。
来源:我自己的
<强> 4。总结和进一步阅读。
我希望这能为你澄清一些事情。
如果您需要更多内容,请参阅this。