小异最近听说一位做推荐算法的同学通过面试,顺利入职某大厂核心盈利部门,真是太羡慕他了。为什么会推荐算法就能在大厂这么吃香?
因为大厂要依靠推荐系统来变现。例如,电商企业要向用户推荐最需要的商品;视频流媒体平台要向用户推送最喜欢的内容;社交新闻媒体平台要让用户看到最感兴趣的信息……
因此,推荐系统和企业的收入直接相关,推荐算法做得好,企业就可以更好地理解用户需求,从而精准地推荐商品,增加销售额,提高用户忠诚度。
那对于技术人来说,做好推荐系统都有哪些挑战?
推荐算法是一项综合性很强的技术,它需要运用多种技术手段去解决实际问题,包括机器学习、数据挖掘、自然语言处理等。技术人可能会困惑,这么多知识要学习,要学到什么程度?怎样才能学好推荐算法?
有一位在大厂做推荐算法的资深技术人专门写了一本书来解答上面的疑问,这本书就是《互联网大厂推荐算法实战》。从书名就可以看出来,这本书讲的都是大厂的实战经验,想学推荐算法,看这本书就对了。
《【官方旗舰店】互联网大厂推荐算法实战 推荐算法机器学习推荐系统深度学习人工智能Python计算机书籍》【摘要 书评 试读】- 京东图书 (jd.com)
我们先来了解一下推荐算法的工作原理。
推荐系统的主要原理是通过对用户的历史行为数据(如点击、购买、评分、评论等)进行分析和挖掘,提取用户的兴趣和喜好,并将其映射到物品空间中,从而预测用户对未来物品的偏好程度,最终生成个性化推荐结果。
在推荐系统中有两个最基本的角色:一个是用户(User),推荐系统要服务的对象,同时也是推荐系统的重要贡献者;另一个是物料(Item),统称为被推荐的信息和内容,例如具体商品、视频、音乐、新闻等。
推荐系统会执行四个步骤,从数百万量级的物料中挑选出最优的几十个物料,最终呈现在用户面前。下面按顺序介绍这四个步骤。
·?召回:主要依赖“离线计算+在线缓存”模式,从百万规模候选集中快速筛选。这一步可以牺牲一部分精度,换取时间。
·?粗排:召回会以数量来弥补质量的不足,在送往下一步之前,粗排要进行一次筛选,保留最具潜力的 10% 物料。
·?精排:精排模型会让用户信息与物料信息充分交叉,从而精选出最符合用户品味的几十个物料。
·?重排:调整精排结果的顺序,将相似内容打散,使得用户可以看到丰富多样的推荐结果。
推荐系统的四个步骤
为我们揭秘大厂推荐算法的那位资深技术人,是毕业于清华大学电气工程专业的赵传霖博士,他目前在快手担任算法专家,拥有 10 多年互联网算法从业经验,主要研究方向为推荐系统、计算广告、个性化搜索。
赵博士还是知乎“机器学习”话题优秀答主,曾经 4 次获得知乎创作排行榜“知势榜·影响力榜”(科技互联网领域)第一名。
有感于市面上讲推荐算法的图书要么内容老旧,要么只讲算法理论,脱离实际太远,于是赵博士决定创作《互联网大厂推荐算法实战》,分享一线实战经验,帮助大家理解推荐算法并灵活组合应用,从“术”上升到“道”的层面。
现在我们就跟着赵博士深入到大厂一线来学习推荐算法吧。
推荐算法应该怎么学?
是不管三七二十一狠钻现在最流行的算法,然后就指望一年知识用十年?这显然是不现实的,因为新算法和新模型在未来会层出不穷,不可能每个算法都要靠大力出奇迹的方式去学习。
所以赵传霖博士在书中明确反对孤立、机械地学习算法,而是提倡“透过现象看本质”,要充分理解算法的思想。要想在实际工作中灵活运用,就要悟透算法之道。
本书将重心放在了帮助读者梳理算法的发展脉络,指导读者由“术”入“道”,达到“举一反三”的目的。全书内容可分为三个部分,我们来了解一下各部分的内容。
首先是基础知识部分。介绍了推荐系统的基础知识、推荐系统中的特征工程、推荐系统中的 Embedding 技术。
然后介绍推荐系统的各组成模块所使用的算法技术,包括召回、粗排、精排、重排四个模块。还对推荐算法实践中经常遇到的难题给出了应对之道。
这部分内容极具价值,因为书中对多任务推荐、多场景推荐、新用户冷启动、新物料冷启动、评估模型效果等实际应用场景进行细致的分析,定位并解决问题,是作者对大厂经验的直接分享。
最后一部分是写给推荐算法工程师的,涵盖工作中的注意事项、学习方法,以及一些面试求职方面的宝贵建议。毕竟赵博士面试过许多求职者,可谓“阅人无数”,有他为读者把关,进大厂的希望那是相当大的。
通过以上三个部分的学习,读者可以对推荐算法知识融汇贯通,对各种实践场景了然于胸,工作时能做到举重若轻,各种难题纷纷迎刃而解。
赵博士的理念是“授人以鱼,不如授人以渔”,他希望通过自己的分享,能让读者透彻理解推荐算法,并且在工作中灵活运用解决实际问题,少走弯路。
本书最大的特点是“实战”,书中讲述的都是互联网大厂主流的推荐算法。对于“经典但过时”的协调过滤、矩阵分解算法则干脆不讲,因为大厂都不玩这些了,而且也不是面试时考察的重点,所以没有去浪费笔墨。
本书兼顾理论与实践,除了讲解最基本的算法原理,还聚集于算法工程师的工作实际,关注他们日常遇到的实际难题。例如下面所列问题。
·?新用户与新物料怎么冷启动?
·?如何打开模型的黑盒,以排查问题或找到下一步升级改进的方向?
·?线下 AUC 涨了,但是线上 AB 实验的指标却不涨!这到底是什么原因造成的?
学习技术不仅要“talk”,也要有“code”。赵博士认为算法工程师也属于广义上的程序员,源代码是最清晰直接的说明文档。所以书中针对核心算法都给出了相应的源码。
书中对于核心代码还给出了说明注释,帮助读者彻底理解算法的重要细节。至此,大厂是怎么玩推荐系统的,可说是一目了然,读者诸君切莫辜负了赵博士,定要多加学习思考,勤于练习。
还在羡慕做推荐算法的同学拿到大厂的 offer 吗?与其临渊羡鱼,不如退而结网,有《互联网大厂推荐算法实战》的加持,也许你很快也能进大厂和同学做同事。
《【官方旗舰店】互联网大厂推荐算法实战 推荐算法机器学习推荐系统深度学习人工智能Python计算机书籍》【摘要 书评 试读】- 京东图书 (jd.com)
最后祝大家都能快快上岸大厂,走向人生巅峰!