首页 > 编程知识 正文

knn算法为什么叫knn(knn分类器)

时间:2023-05-04 03:53:05 阅读:78215 作者:454

领先优势

KNN(k最近邻分类算法)是机器学习中比较简单的算法,应用于推荐的思路如下。 如果一个样本在特征空间中的k个最相似的样本中的大多数属于一个类别,则该样本也属于该类别。

一、算法介绍

KNN(k最近邻分类算法)是机器学习中比较简单的算法,其原理如下。 对于要分类的物品a,定义了刻画某物品间距离的方法,该物品最接近具有已知类别的k个物品,该k个物品中出现最多的类别是物品a的类别。 下图:

在KNN计算中,最核心的一点是如何定义物品间的距离,这里简单列举了几种计算物品间距离的方法。 欧式距离、曼哈顿距离、醉薰母鸡距离、杰卡多系数、夹角余弦、快速小鼠系数。

介绍KNN在实际业务中的运用。

二、业务实践

1、业务场景1

以APP应用程序商店为例,当用户下载完APP时,会触发“大家都还在下载”的推荐。 介绍一种利用knn算法实现该场景推荐的方法。

首先,定义APP应用的维向量的简单方法是将所有特征离散,然后执行one-hot编码以获得所有维取值0/1的向量v。 例如,每个用户可以被认为是一个维度,并且如果第n个用户安装了APP应用程序a,则APP应用程序a在第n个维度中取值1,否则其可以使用欧洲距离获得APP应用程序a和APP应用程序b的距离公式。

给定某个APP a,上式中给出距离最小的4个APP,用户下载了APP a之后向该用户推荐这4个APP。

2、业务场景2

在网络购物中,在“猜测你喜欢的东西”的场景中向用户推荐物品,通过用户的历史购物列表,利用杰卡多公式计算用户与用户的相关系数:

表示购买项目x的用户的集合,用户u和用户v之间的距离定义如下:

对于某个用户u,首先找出该用户最近的k个用户,然后根据在这个k个用户中购买的用户数将项目按降序排列,去除用户u已经购买的项目,取top 10个项目

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。