• 推荐系统介绍


    1 推荐系统发展史

    1998年,Amazon平台上线了基于物品的协同过滤算法(ItemCF算法),将推荐系统推向服务千万级用户和处理百万级商品的规模。这一技术机制的革新产生了良好的效果,Amazon销售额提高了35%左右——这是推荐算法从实验室走向商业公司的一次成功应用。

    2006年,一家原本做DVD租赁的公司悬赏百万招募算法推荐系统,希望改善其影片推荐效果。最终,凭借此次大赛的成果,这家公司成功转型为线上影片点播平台,并向用户普及了“推荐”的概念——这家公司就是Netflix

    视频平台YouTube同样以算法推荐为特色。它最早只通过点击和浏览量对内容进行排序,2012年YouTube开始采用复杂的推荐算法,尝试加入观看时长、分享、喜欢等参数来向观众呈现视频流。2016年9月,YouTube将其技术文档整理成论文《Deep Neural Networks for YouTube Recommendations (深度神经网络在YouTube推荐系统中的应用)》发表,公布了从大规模可选内容中寻找最适合推荐结果的算法路径,探讨了深度学习带来的性能跨越式提升。

    在视频网站之后,Facebook、Twitter等社交媒体也纷纷采用个性化信息流,将内容按用户兴趣程度进行排列。从时间顺序切换到算法乱序推荐,尽管初期引发了部分使用者的不适,但之后便被证明,这一举动带来了用户使用时长、广告点击率的大幅增长。

    国内互联网行业同样拥抱算法。二十一世纪的第一个十年之后,内容资讯平台、短视频应用改变过往人工推荐的习惯,逐步加大算法推荐的比重,一大批代表性应用在这一浪潮中涌现出来。2016年又被称为“智媒元年”,以纪念算法推荐在内容分发领域所做出的重大贡献。

    毫无疑问,身处信息大爆炸的背景下,算法推荐是继分类条目与搜索引擎之后的又一技术革新,它极大地提升了信息分发的效率和精准度,以此颠覆了人与信息的相处方式,也得益于这种能力,逐渐被应用于交通、金融、法律等等人类社会的其他领域。

    参考:https://mp.weixin.qq.com/s/_NemiGmr04YuxtCsx7y3gg

    2 推荐系统搭建

    推荐算法主要分为以下几步:

    1. 召回:当用户以及内容量比较大的时候,往往先通过召回策略,将百万量级的内容先缩小到百量级
    2. 过滤:对于内容不可重复消费的领域,例如实时性比较强的新闻等,在用户已经曝光和点击后不会再推送到用户面前。
    3. 精排:对于召回并过滤后的内容进行排序,将百量级的内容并按照顺序推送
    4. 混排:为避免内容越推越窄,将精排后的推荐结果进行一定修改,例如控制某一类型的频次。

    在这里插入图片描述

    2.1 召回

    召回的目的:当用户与内容的量级比较大,例如对百万量级的用户与内容计算概率,就会产生百万*百万量级的计算量。但同时,大量内容中真正的精品只是少数,对所有内容进行一次计算将非常的低效,会浪费大量的资源和时间。因此采用召回策略,例如热销召回,召回一段时间内最热门的 100 个内容,只需进行一次计算动作,就可以对所有用户应用。

    召回方法:召回的策略不应该是简单的策略堆砌,而应该是方法的相互补充。

    1. 热销召回:将一段时间内的热门内容召回。
    2. 协同召回:基于用户与用户行为的相似性推荐,可以很好的突破一定的限制,发现用户潜在的兴趣偏好。
    3. 标签召回:根据每个用户的行为,构建标签,并根据标签召回内容。
    4. 时间召回:将一段时间内最新的内容召回,在新闻视频等有时效性的领域常用。是常见的几种召回方法。

    2.2 精排

    精排是召回的下游,其目标是尽可能准确地预测商品与用户的相关性。此外相比于召回模型,其使用的特征更多,模型也更复杂,因此数据量不能太大。
    在这里插入图片描述

    3 推荐算法应用场景

    3.1 Feed(信息流)

    像头条、微博、知乎的首页一样,刷不完的信息,而且刷着还挺符合自己的兴趣爱好的,于是就放不下了

    3.2 猜你喜欢

    比如淘宝、网易云音乐、懒人听书、腾讯电影,几乎各行各业都在猜你喜欢什么。
    猜你喜欢,也可以衍生成,猜你需要,猜你想听,猜你想看,只是统计算法维度的不同而以。

    3.3 相关推荐

    案例:调整推荐算法,提高阅读点击量
    原始版本为人工编辑推荐的形式,即由小编决定文章是否会被放在“相关阅读”板块中;而试验版本是第三方推荐算法自动生成的文章列表。

    3.4 热门推荐

    这个和feed流有点相似,但有些不同,可单独拿出来,是因为热门推荐的机制与当事人没有关系,它的机制属性或者数据全来源于外部。
    案例:调整模块位置,助力提高转化
    原始版本用户进入参考消息后,默认显示人工编辑的“热点”栏目;试验版本将默认展示由推荐算法生成的“推荐”栏目,调整用户进入APP后的默认展示版块,并将信息流文章点击量作为优化指标。

    参考:https://mp.weixin.qq.com/s/ZSKjQo5s-kXVx5GbnKAN2A

  • 相关阅读:
    【LeetCode: 210. 课程表 II:拓扑排序+图】
    C++ vector 功能强大的数组
    SQLite实现的学生管理系统
    自动化运维——ansible (五十三) (02)
    STM32+ MAX30102通过指尖测量心率+血氧饱和度
    java小游戏-扫雷游戏
    AbortController的使用
    Git 修改已提交的用户名和邮箱
    MySQL约束和事务知识归纳。
    C++之Singleton单例和单例模板类讲解
  • 原文地址:https://blog.csdn.net/zephyr_wang/article/details/126719803