开发者:上海品职教育科技有限公司 隐私政策详情

应用版本:4.2.11(IOS)|3.2.5(安卓)APP下载

小胖 · 2020年11月28日

2020 mockQ8 k-nearest 有关问题

如上题,因为50是feaures的数量,而300是客户的数量,所以不选50和300,使用排除法选出最合适的选项是A,而不是因为需要分出5个portfolio所以选择A:5作为K值是吗?

1 个答案

星星_品职助教 · 2020年11月30日

同学你好,

你这个问题我后来又想了一下,之前回复有误,更新了一下:

------------------

首先简述一下k近邻算法的流程:

1. 找到n个已经根据50个特征分好类的客户,这里每一个客户都已经被划分进了1号到5号里其中的一个portfolio(即属于五类portfolio中的一类)。

2. 这时候又来了一个新的客户,要判断应该把这个客户归类到哪一类portfolio中。

此时采取的做法是:

1. 同样找到这个新客户的50个特征,与已分好类的客户逐个特征进行对比。

2. 计算每个特征之间的距离,然后加总得到一个总距离。与n个客户对比就会计算出n个总距离。

3. 将这n个总距离进行排序,找到离这个新客户最近的k个客户。

4. 由于这k个客户都是已经分好类的客户,所以看这k个客户每个人的portfolio分类,找出其中出现最多的那个分类。

5. 将新的客户归类为属于最多的那类portfolio,例如假设这k个客户中,绝大多数都属于1类portfolio,那么新的客户也就属于1类portfolio。

通过以上的流程可以看出来,这时候k必须大于5,不然肯定会出现有一类或者几类portfolio没有被考虑到的情况。假设k=4,就有会出现这四个客户最多只能属于4个portfolio(例如分别属于1,2,3,4号portfolio)的情况。这种情况下5号portfolio根本不可能被考虑到,新客户永远不可能被分到被遗漏的那个portfolio 中(在这个例子里就是portfolio 5)。

事实上只要k<5,就会出现至少有一类portfolio不被考虑到的情况。

所以要选择的k需要至少大于等于5。由于题目中问的是“closet”k,所以应该选择5。

但k也不能选择的过大,因为过大的k值会稀释“最”近邻的概念。所以k等于几十几百也是不行的。

  • 1

    回答
  • 0

    关注
  • 388

    浏览
相关问题