首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

KNN邻近算法学习

在数据挖掘,智能推荐以及机器学习中KNN算法是一种最简单的算法,它的核心思想就是一个样本在特征空间中的k个最相邻的样本中的大多数都属于某一个类别,则该样本就是属于该类别。

我们就拿判断电影类型来说明这个这个算法。电影数据如下:

现在我们要判断唐人街探案的电影类型,那我们就需要先计算唐人街探案中的搞笑,拥抱、打斗镜头和其他电影之间的距离。怎么算?我们就用类似于勾股定理的方法或者曼哈顿距离来算,就把这些镜头数分别相减在平方,再总的相加然后开根号处理,得到最终的距离。d = math.sqrt((x[] - v[]) **2+ (x[1] - v[1]) **2+ (x[2] - v[2]) **2)

将计算的距离经行排序,然后去前k个数据,然后再看这K个数据中谁的类型出现次数最多,那么唐人街探案的电影类型就是它。

下面给出python中knn的核心代码。

其中shape、tile、sum、argsort都是numpy中的方法,所以在最开始的时候需要导入这个包,tile函数是将指定的内容进行重复。

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180309G1ANVK00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券