查看原文
其他

刚买完手机,下一秒系统就推荐了耳机,为什么?

2018-03-16 二岳初 读芯术

全文共4140字,预计阅读时长4分钟



不知道你有没有这种感觉?

 

为了学习人工智能,你买了一本《深度学习》,在付款的时候,你会发现页面下方出现了:购买此书的人还浏览了以下书籍——《机器学习实践》《Python机器学习》,于是本来你只想买一本书却忍不住买了一本又一本。


 

你今天在网易云音乐上听了一首陈奕迅的歌,之后你就会发现,它会反复给你推荐陈奕迅或者相关类似的歌手的歌;在网上看了一部悬疑片,遇事每当你浏览这个视频网站它会自动给你推荐更多的悬疑片;你在购物网站浏览了一双运动鞋,之后就会收到各种运动鞋秒杀的广告……



就好像自己早已被看穿。


其实这就是算法的力量,确切的说,是推荐算法在起作用。


推荐系统的“3W”


What is it?


在百度百科上的解释,是利用电子商务网站向客户提供商品信息和建议,帮助用户决定应该购买什么产品,模拟销售人员帮助客户完成购买过程。


就是根据你平日里购物的行为习惯、兴趣特点以及社交关系等信息,去判断你当前需要或者感兴趣的商品。


Why is that?


为什么我们要用到推荐系统呢?随着信息技术和互联网的发展,人类从信息匮乏时代走向了信息过载时代。


铺天盖地的信息让人看得眼花缭乱,很难在短时间之内找到自己感兴趣的内容,从而也加大了信息生产者在传播推广信息的难度,因为在众多的信息轰炸中,很难将自己在信息同质化越来越严重的信息洪流中脱颖而出。


于是乎,推荐系统应运而生。



它主要是用来干什么的呢?


它是信息和个体之间的桥梁。对我们而言,推荐系统通过各种信息收集,能够在大量的信息中帮助我们找到感兴趣的信息,发现我们可能喜欢的新事物;对于商家而言,推荐系统在给用户提供个性化推荐服务的时候,能够提高用户的信任度和粘性,从而提高业绩。


我们可以通过一组数据了解推荐系统的价值:


Netflix:2/3被观看的电影来自推荐

Google新闻:38%的点击量来自推荐

Amazon:35%的销量来自推荐


当你看到这些数字,推荐系统的价值就不言而喻了吧?


Where to apply?


我们现在凡是干什么总爱强调“个性化”“量身打造”“私人定制”,于是催生了推荐系统在我们日常生活中方方面面的渗透:私人定制推荐歌单、各类视频网站、个性化阅读、电子商务……无论你是在看剧、订外卖、逛淘宝、听电台,你都能收到一系列自己感兴趣的内容。


和搜索引擎不同的是,个性化推荐系统需要依赖用户的行为数据,一般都是作为一个应用存在于不同网站之中。在互联网的各大网站中都可以看到推荐系统的影子。例如都是逛淘宝,女同胞们和男同胞们看到的网页界面会有所不同。


以淘宝为例,女生看到的淘宝界面:



男生看到的淘宝界面:



每个人的喜好不同,在页面上浏览的内容就不同,这些信息都会随着我们每一次的浏览点击进行变换,从而不断向我们推荐合适的商品,从而提高网站的点击率和转化率。


尽管不同的网站使用不同的推荐系统,但是总的来说,几乎所有的推荐系统的结构都是类似的,都由线上和线下两部分组成。


线下部分包括后台的日志系统和推荐算法系统,线上部分就是我们看到的前台页面展示。线下部分通过学习用户资料和行为日志建立模型,在新的上下文背景之下,计算相应的推荐内容,呈现于线上页面中。


下面我们通过近几年靠人工智能算法火起来的今日头条和大家详细分析一下,怎样通过推荐算法实现“私人定制”?


详尽干货:揭秘“你关心的,才是头条”


推荐系统,如果用形式化的方式去描述实际上是拟合一个用户对内容满意度的函数,这个函数需要输入三个维度的变量。


第一个维度是内容。头条现在已经是一个综合内容平台,图文、视频、UGC小视频、问答、微头条,每种内容有很多自己的特征,需要考虑怎样提取不同内容类型的特征做好推荐。


第二个维度是用户特征。包括各种兴趣标签,职业、年龄、性别等,还有很多模型刻划出的隐式用户兴趣等。


第三个维度是环境特征。这是移动互联网时代推荐的特点,用户随时随地移动,在工作场合、通勤、旅游等不同的场景,信息偏好有所偏移。


结合三方面的维度,模型会给出一个预估,即推测推荐内容在这一场景下对这一用户是否合适。


 

那如何引入无法直接衡量的目标?


推荐模型中,点击率、阅读时间、点赞、评论、转发包括点赞都是可以量化的目标,能够用模型直接拟合做预估,看线上提升情况可以知道做的好不好。但一个大体量的推荐系统,服务用户众多,不能完全由指标评估,引入数据指标以外的要素也很重要



比如广告和特型内容频控。像问答卡片就是比较特殊的内容形式,其推荐的目标不完全是让用户浏览,还要考虑吸引用户回答为社区贡献内容。这些内容和普通内容如何混排,怎样控制频控都需要考虑。


此外,平台出于内容生态和社会责任的考量,像低俗内容的打压,标题党、低质内容的打压,重要新闻的置顶、加权、强插,低级别账号内容降权都是算法本身无法完成,需要进一步对内容进行干预。


以下是几种典型的推荐算法:



前面提到的公式y = F(Xi ,Xu ,Xc),是一个很经典的监督学习问题。可实现的方法有很多,比如传统的协同过滤模型,监督学习算法Logistic Regression模型,基于深度学习的模型,FactorizationMachine和GBDT等。



模型之后再看一下典型的推荐特征,主要有四类特征会对推荐起到比较重要的作用。


第一类是相关性特征,就是评估内容的属性和与用户是否匹配。显性的匹配包括关键词匹配、分类匹配、来源匹配、主题匹配等。像FM模型中也有一些隐性匹配,从用户向量与内容向量的距离可以得出。

 

第二类是环境特征,包括地理位置、时间。这些既是bias特征,也能以此构建一些匹配特征。


第三类是热度特征。包括全局热度、分类热度,主题热度,以及关键词热度等。内容热度信息在大的推荐系统特别在用户冷启动的时候非常有效。


第四类是协同特征,它可以在部分程度上帮助解决所谓算法越推越窄的问题。协同特征并非考虑用户已有历史。而是通过用户行为分析不同用户间相似性,比如点击相似、兴趣分类相似、主题相似、兴趣词相似,甚至向量相似,从而扩展模型的探索能力。



模型的训练上,头条系大部分推荐产品采用实时训练。实时训练省资源并且反馈快,这对信息流产品非常重要。用户需要行为信息可以被模型快速捕捉并反馈至下一刷的推荐效果。我们线上目前基于storm集群实时处理样本数据,包括点击、展现、收藏、分享等动作类型。


但因为头条目前的内容量非常大,加上小视频内容有千万级别,推荐系统不可能所有内容全部由模型预估。



所以需要设计一些召回策略,每次推荐时从海量内容中筛选出千级别的内容库。召回策略最重要的要求是性能要极致,一般超时不能超过50毫秒



召回策略种类有很多,我们主要用的是倒排的思路。离线维护一个倒排,这个倒排的key可以是分类,topic,实体,来源等,排序考虑热度、新鲜度、动作等。线上召回可以迅速从倒排中根据用户兴趣标签对内容做截断,高效的从很大的内容库中筛选比较靠谱的一小部分内容。



推荐系统之内容分析


内容分析包括文本分析,图片分析和视频分析。文本分析在推荐系统中一个很重要的作用是用户兴趣建模。没有内容及文本标签,无法得到用户兴趣标。举个例子,只有知道文章标签是互联网,用户看了互联网标签的文章,才能知道用户有互联网标签,其他关键词也一样。



另一方面,文本内容的标签可以直接帮助推荐特征,比如魅族的内容可以推荐给关注魅族的用户,这是用户标签的匹配。


如果某段时间推荐主频道效果不理想,出现推荐窄化,用户会发现到具体的频道推荐(如科技、体育、娱乐、军事等)中阅读后,再回主feed,推荐效果会更好。


因为整个模型是打通的,子频道探索空间较小,更容易满足用户需求。只通过单一信道反馈提高推荐准确率难度会比较大,子频道做的好很重要。而这也需要好的内容分析。



上图是今日头条的一个实际文本case。可以看到,这篇文章有分类、关键词、topic、实体词等文本特征。


当然不是没有文本特征,推荐系统就不能工作,推荐系统最早期应用在Amazon,甚至沃尔玛时代就有,包括Netfilx做视频推荐也没有文本特征直接协同过滤推荐。


但对资讯类产品而言,大部分是消费当天内容,没有文本特征新内容冷启动非常困难,协同类特征无法解决文章冷启动问题。



今日头条推荐系统主要抽取的文本特征包括以下几类。首先是语义标签类特征,显式为文章打上语义标签。这部分标签是由人定义的特征,每个标签有明确的意义,标签体系是预定义的。此外还有隐式语义特征,主要是topic特征和关键词特征,其中topic特征是对于词概率分布的描述,无明确意义;而关键词特征会基于一些统一特征描述,无明确集合。



另外文本相似度特征也非常重要。在头条,曾经用户反馈最大的问题之一就是为什么总推荐重复的内容这个问题的难点在于,每个人对重复的定义不一样。


同样,还有时空特征,分析内容的发生地点以及时效性。比如武汉限行的事情推给北京用户可能就没有意义。最后还要考虑质量相关特征,判断内容是否低俗,色情,是否是软文,鸡汤?


今日头条推荐系统的线上分类采用典型的层次化文本分类算法。最上面Root,下面第一层的分类是像科技、体育、财经、娱乐,体育这样的大类,再下面细分足球、篮球、乒乓球、网球、田径、游泳等,足球再细分国际足球、中国足球,中国足球又细分中甲、中超、国家队等,相比单独的分类器,利用层次化文本分类算法能更好地解决数据倾斜的问题。



还没听够?


来一波小视频~三分钟彻底了解推荐系统算法

 

https://v.qq.com/txp/iframe/player.html?vid=g05349lb80j&width=500&height=375&auto=0


读芯君开扒


随着信息技术和互联网的发展,人们逐渐从信息匮乏的盲区走入了信息过载的时代。互联网上的信息是海量的:YouTube用户每分钟上传超过400小时的视频;微信上超过1000万个公众账号每天产生丰富的自媒体内容;Instagram用户每天贴出超过800万照片;Snapchat用户每天生成5亿多“故事”(Story),全部看完需要158年……类似的例子数不胜数。

 

以推荐算法为核心技术的推荐系统凭借其个性化推荐和有效降低信息噪音的特点开始被广泛使用,比如国外的 Google、Facebook 和国内的今日头条。

 

时至今日,已经很难想象一个新的互联网应用没有利用推荐系统来优化用户体验。

 

人工智能技术对于推荐系统的影响是巨大的。从人工推荐到深度学习模型,在日新月异的技术浪潮中,推荐系统已经成为了诸多互联网应用的基石。过去十多年的研究和开发,使得这个领域迅猛发展,推动了人工智能很多方向的前进。

 

从现实来看,推荐系统要成为智能系统,还有很长的路要走。我们需要站在更高的维度来看待和思考推荐系统,提出更加具有挑战的问题,基于这些问题才能引领我们去革新方法论,创新出一整套能够大幅度丰富用户体验与提高产品价值的推荐系统理论与实践。


留言 点赞 发个朋友圈

我们一起探讨AI落地的最后一公里


作者:二岳初

参考文献链接:

http://geek.csdn.net/news/detail/112318

http://www.sohu.com/a/217314007_297710


如需转载,请后台留言,遵守转载规范


推荐文章阅读


昨天,世界又变得笨了一点

AI+电影大片,意想不到的事情发生了……

怼完小扎怼上哈佛教授,马斯克咋想的?

中国高校AI学院哪家强?在线等,挺急的

想年薪百万?你的命运可能在AI手中

不必你死我活,人与AI可以共生

小心!入门机器学习,你可能遇到这些“陷阱”!

AI挑大梁,妹纸不如男?我呸!

AI热词你居然只知道“深度学习”?

敲黑板!全世界都在谈AI,但“重点”你Get到了吗?!

那些毕业生挤破脑袋也想去的中国AI公司

闪开!AI高校排行榜来了!哪家戳中了你?

为啥人工智能的声音多是“妹纸”?

致国足:AI来了,你会不会突然出线?

Python这么火,原因在这里!

你以为报了AI培训班就真的能入行?

冬奥会“北京8分钟”:中国AI开挂了

“最燃的AI岗位是哪个?”“AI产品经理啊!”

对AI最花痴的城市是这些!你的家乡上榜了没?

大家一起来找茬,全都找到算我输

韩国留学生带你零距离看冬奥

人类智能搞不定春晚了,人工智能上!

你说虐不虐?!我用AI表白后,她竟然说“好哒”!


长按识别二维码可添加关注

读芯君爱你



您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存