子询实验室 | 生活中无处不在的推荐算法

Posted 子询AILab

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了子询实验室 | 生活中无处不在的推荐算法相关的知识,希望对你有一定的参考价值。

点击上面蓝字关注 探索AI新世界!

子询实验室 | 生活中无处不在的推荐算法


AI其实已经藏在你们的APP中了。

——沃·硕德



本文阅读时长约10分钟,

可以先点击视频观看~



本期推送主要阐述的算法是——AI推荐算法

常见的形式有购物网站、音乐日推歌单、视频软件推送


那么AI推荐算法就是是什么呢?


总体的来说,

就是根据用户已有的信息数据,

搭配不同的推荐算法分析处理数据,

最终达到向用户推荐用户喜欢的内容的一个功能。


目前常用的推荐算法有以下三种:

基于用户的协同过滤算法

基于物品的协同过滤算法

基于内容搜索的算法


下面分别用亚马逊、淘宝和网易云音乐作为例子简单讲解这三种算法:




01

基于用户的协同过滤算法(亚马逊)

  介绍  

这个算法的核心思想是相似的用户会购买相似的商品,即根据其他用户的购买信息来推荐商品给当前用户这些“其他用户”,在他们自己并不知情的情况下被推荐算法塑造成当前用户的“导购员”。


  举个栗子  

- 问题 -

一个男大学生X在亚马逊上买了个保温瓶,这时候系统发现,同样买了这个保温瓶的退休大妈还买了拐杖。

那么,要不要把拐杖推荐给大学生X呢?


- 思路 -

亚马逊在保存了每个用户购买过的商品后会利用这些信息提出一种计算用户相似度的方法,即把亚马逊上所有商品作为向量的一个维度。


- 解答 -

X买了高数辅导书、机械键盘、宿舍床垫等N件商品,这个维度上就是N。

假设现在有用户X与退休大妈等多个用户,根据他们的购买信息可以计算X与退休大妈的相似度:


similarity(A ,B )=cos(A ,B )=A⋅B ∥A ∥∗∥B ∥


有了用户相似度之后,亚马逊就可以按一下流程框架来产生推荐:

1. 根据用户相似度,找出一组与当前用户X最相似的用户集合S。

(如将与X同样购买了高数辅导书、机械键盘、宿舍床垫等多种物品的人员集合起来为S,这些人当中职业性别消费水平等与X相似度更高)

2. 得到集合S中的用户所购买过的所有商品的集合I

3. 将当前用户购买过的商品集合记为 IA,则商品集合 R=I−IA 为推荐结果。

(即将其他相似度高的用户所有购买过的产品当中选择X未购买的作为推荐商品)

4. 对 R 中的商品按某种策略排序,按照该顺序给用户产生推荐。(排序策略可以自由设定)

子询实验室 | 生活中无处不在的推荐算法

- 碎碎念 -


但如果某女大学生Y也购买了高数辅导书、机械键盘、宿舍床垫等多种物品,与X相似度高达一定程度被归纳到相似度高的用户集S当中,这个时候亚马逊会认为女生Y和X是同一类人,所以就会出现X在逛亚马逊的时候,发现亚马逊一直给自己推荐口红这种情况。




02

基于物品的协同过滤算法(淘宝)

  介绍  

基于物品的协同过滤算法是目前业界十分常用的一种算法。这种算法背后的逻辑是计算两种物品之间的关联性把关联性高的其他商品推荐给购买某样商品的用户。


  举个栗子  

- 问题 -

铲屎官在买猫罐头的时候,那要不要也给他推荐猫抓板、猫薄荷呢?


- 思路 -

物品之间的关联性可以用以下几个指标来衡量:支持度,置信度,提升度


- 解答 -

支持度:同时买猫罐头和猫抓板的订单占所有订单的百分比

置信度:同时买猫罐头和猫抓板的订单占所有买了猫罐头的订单的百分比

提升度:同时买猫罐头和猫抓板的概率除以不买猫罐头只买猫抓板的概率

 

假如现在总共有3000个订单,在所有订单里买了猫罐头的订单有1200单。


在买了猫罐头的那1200单中同时买了猫薄荷的有600单,猫抓板的有800单,酱油的有100单,充电线的有200单。

子询实验室 | 生活中无处不在的推荐算法

那么对于猫罐头来说,置信度最高的是猫抓板,这就是为什么你在给你家主子买罐头的时候淘宝会给你推荐猫抓板而不是酱油、充电线这些八竿子打不着的东西啦。

子询实验室 | 生活中无处不在的推荐算法

- 碎碎念 -


当然,要是某天你家主子自己偷偷打开你的淘宝疯狂的买猫罐头和酱油,那可能下次隔壁老王在买猫罐头的时候淘宝就会一直给他推荐酱油蚝油这些调味料。




03

基于内容搜索的算法(网易云音乐)

  介绍  

基于内容搜索的算法是音媒常用的一种算法。这种算法背后的逻辑是计算两类内容的关联性,按内容分不同的属性再按权重推荐给用户。


  举个栗子  

- 问题 -

用户a很喜欢x这首歌,y歌曲和x歌曲曲调风格都很相似,那要不要把y歌曲推荐给用户a呢?


- 思路 -

网易云音乐会选取歌曲的某些属性,并且针对各种属性的对于用户选择的重要性进行一个主观的评估,然后赋上权值,进行累加计算,得出每首歌和其他歌曲的相似性。


- 解答 -

在歌曲中选择三个属性【主题】【风格】【歌手】,其中

【主题】重要等级为3,

【风格】重要等级为2,

【歌手】重要等级为1。

 

红豆(爱情,优雅,王菲)

晴天(爱情,轻松,周杰伦)

因为爱情(爱情,优雅,陈奕迅&王菲)

 

然后根据这个公式得出相似性的结果:

子询实验室 | 生活中无处不在的推荐算法

在这三首歌里相似性比较高的是“红豆”和“因为爱情”这两首。所以用户在听了“红豆”以后网易云音乐很有可能会给他推荐“因为爱情”而不是“晴天”。



04

  最后的碎碎念  

当然,目前任何算法都无法做到完美。简单说,如果一个分类算法单纯按照头发长短区分男女,有些男生头发比较长就会出现分类错误


作为新技术,机器推荐还有不完美的地方,仍然需优化和改进,这也是众多科学家努力的方向。不过,从比例上看优秀的算法对绝大多数的案例都进行正确分类,并有效的推荐给用户他们想要的东西。





子询AI-Lab

以最有趣的方式了解AI

(~ ̄▽ ̄)~ 


以上是关于子询实验室 | 生活中无处不在的推荐算法的主要内容,如果未能解决你的问题,请参考以下文章

25篇综述入门推荐系统

生活中的人工智能之搜索和推荐算法

机器学习探索-推荐引擎算法(实验二)

推荐算法

极端实验:推荐算法如何探寻我们的兴趣边界?

京东推荐广告算法彭长平:京东电商推荐系统做到60分容易,做到80分90分却很难