新書推薦:
《
甲骨拼合六集
》
售價:HK$
333.8
《
视觉美食家:商业摄影实战与创意解析
》
售價:HK$
132.2
《
中国经济发展的新阶段:机会与选择
》
售價:HK$
99.7
《
DK月季玫瑰百科
》
售價:HK$
210.6
《
为你想要的生活
》
售價:HK$
66.1
《
关键改变:如何实现自我蜕变
》
售價:HK$
77.3
《
超加工人群:为什么有些食物让人一吃就停不下来
》
售價:HK$
99.7
《
历史的教训(浓缩《文明的故事》精华,总结历史教训的独特见解)
》
售價:HK$
62.7
|
編輯推薦: |
以往专注于算法模型或特征工程等某一细分领域推荐系统已经无法满足用户不断变化的需求。推荐系统涉及的技术越来越多。除了算法模型和特征工程,现在的推荐系统的核心还包括计算平台的优化、用户画像的构建与更新、产品策略的制定等。这些因素相互关联、相互影响,共同构成了一个完整的推荐系统生态。本书聚焦于业务场景、多层推荐框架、特征处理、测评指标定义、冷启动系统等关键问题,通过深入剖析核心痛点,帮读者更好地理解和应用新时代推荐系统的核心技术。掌握了这些技术,读者就可以轻松提升推荐系统的效果和性能,满足用户日益增长的个性化需求。
|
內容簡介: |
这是一本指导中高级从业者高质量落地现代推荐系统,围绕现代推荐系统核心技术展开深度解读的专业工具书,又是一套完整的推荐系统高质量落地解决方案。本书基于推荐算法工程师实际工作场景规划内容,融合了作者在阿里巴巴、58同城等多家大厂做推荐系统设计和优化的经验,是一本方法和实践兼具的好书。
本书不针对零基础从业者,而是以帮助初级算法工程师向中高级进阶为目标。书中从底层剖析推荐系统在实际业务场景中可能出现的各种问题,直指问题的本质,并按照推荐系统工作流程逐一破解。
本书共包括11章:
第1章 主要介绍推荐系统在各个互联网业务场景中的落地情况,包括构建推荐系统可能面临的问题,以及电商、视频、电子书、广告系统、信息流、拉活促销等相关推荐系统落地指导。
第2章 介绍现代推荐系统的整体架构,以帮助读者从宏观层面整体了解推荐系统。
第3章 对推荐系统所需要的数据和特征处理进行深度剖析,包括数据的收集、非结构化数据的结构化清洗、连续特征处理和离散特征处理等重点内容。
第4章 对推荐系统的在线指标和离线指标,以及AB实验的设计进行深度讲解。
第5章和第6章,主要对机器学习和神经网络的设计和调参进行详细解读。这是本书的重点,也是很多推荐算法工程师的痛点。这部分包括XGBoost的重要参数调优、集成学习最DA化推荐效果利用、DNN网络深度和宽度的影响、激活函数的选择、优化器选择、损失函数、过/欠拟合等内容。
第7~9章 分别对召回层、精排层、粗排层进行详细解读,包括5种召回方案、4种精排建模方式、2种粗排设计方案,以及模型可解释性、近离线计算等重点内容。
第10章 主要介绍精排模型的分析方法,重排模型(PRM、生成式重排模型)和混排(混排的原理和强化学习在混排的应用)的原理。
第11章 主要介绍冷启动链路的设计,主要包括新用户如何冷启动、新物料如何冷启动和冷启动涉及的流量分配算法。这是本书的特色内容。
|
關於作者: |
唐楠烊(网名:Tang) 资深算法工程师,精通推荐算法和NLP算法。曾就职于阿里巴巴、58同城等多家知名互联网公司,专门从事推荐系统和NLP算法相关工作。具有多年的算法经验,在推荐系统的全链路优化和NLP对话业务方面经验尤其丰富。
知乎作者、Github资深玩家,专注于推荐算法和NLP相关内容分享。在Github上有多个项目,最高获得100多颗星;在知乎上发表数十篇技术文章,总阅读量近百万。
|
目錄:
|
目 录
前言
第1章 什么是推荐系统1
1.1 深度理解推荐系统1
1.2 企业在构建推荐系统时会面临哪些问题3
1.3 4类主流推荐系统构建点拨3
1.3.1 电商是怎么做推荐系统的4
1.3.2 视频网站是怎么做推荐系统的9
1.3.3 推荐系统是怎么应用于广告业务的12
1.3.4 推荐系统是怎么应用于信息流的13
1.4 推荐系统怎么拉活促销16
1.5 架构和模型在推荐系统落地中的作用17
第2章 推荐系统架构18
2.1 推荐系统架构概述19
2.2 召回层概述20
2.2.1 非个性化召回21
2.2.2 个性化召回21
2.3 粗排层概述23
2.3.1 双塔粗排23
2.3.2 交叉粗排24
2.4 精排层概述24
2.5 重排层概述25
2.6 冷启动环节27
2.6.1 用户冷启动28
2.6.2 物料冷启动30
第3章 构建推荐系统的特征31
3.1 怎么收集数据31
3.2 怎么清洗数据33
3.2.1 物料侧数据33
3.2.2 用户侧数据34
3.2.3 内容侧数据35
3.2.4 交叉数据36
3.3 怎么处理连续特征36
3.3.1 标准化36
3.3.2 无监督分箱39
3.3.3 有监督分箱40
3.4 怎么处理离散特征47
第4章 为推荐系统选择评价指标54
4.1 不同业务的线上指标54
4.2 精排层应该选择什么评价指标56
4.3 召回层应该选择什么评价指标62
4.4 重排层应该选择什么评价指标66
4.5 怎么设计合理的AB实验68
第5章 机器学习模型调参71
5.1 决策树调参71
5.2 随机森林调参72
5.3 XGBoost调参73
5.4 LightGBM调参76
5.5 全局优化调参77
5.5.1 网格搜索77
5.5.2 贝叶斯调参77
5.6 利用集成学习提高推荐效果81
第6章 神经网络模型调参83
6.1 怎么对DNN调参83
6.1.1 DNN的深度和宽度调参83
6.1.2 DNN激活函数的选择84
6.2 怎么为神经网络选择优化器90
6.3 怎么为神经网络选择损失函数94
6.4 怎么解决神经网络的拟合问题100
第7章 个性化召回层样本选择和模型选择102
7.1 协同过滤召回102
7.1.1 传统协同过滤102
7.1.2 协同过滤的改进106
7.1.3 协同过滤优缺点108
7.2 双塔召回109
7.2.1 DSSM模型109
7.2.2 Youtube召回模型110
7.2.3 Facebook召回模型113
7.2.4 FM召回115
7.2.5 MIND模型117
7.2.6 ESAM模型120
7.3 Word2vec在召回中的应用123
7.3.1 基于Word2vec的经典召回模型123
7.3.2 Airbnb召回模型128
7.3.3 “随机游走”在召回中的应用134
7.4 基于图网络的召回137
7.4.1 Graph Sage137
7.4.2 PinSage141
7.4.3 GraphTR143
7.5 基于树网络的召回147
7.5.1 TDM树召回147
7.5.2 DR151
第8章 精排层的样本选择和模型选择156
8.1 传统DNN建模156
8.1.1 Youtube DNN精排模型156
8.1.2 Wide&Deep158
8.2 交叉模型159
8.2.1 FM模型家族160
8.2.2 DCN系列模型164
8.3 偏置问题170
8.3.1 位置偏置170
8.3.2 曝光偏置172
8.3.3 热门偏置173
8.3.4 选择偏置173
8.3.5 服从性偏置173
8.3.6 不平等偏置174
8.4 模型可解释性174
8.4.1 FiBiNET174
8.4.2 夏普利值177
8.4.3 SHAP179
8.5 因果场景182
8.5.1 提升模型建模方式183
8.5.2 基于树模型的因果模型185
8.5.3 标签转换法188
8.5.4 提升模型的评价指标188
8.5.5 因果模型应用于偏置消除189
8.6 序列建模192
8.6.1 DIN192
8.6.2 DIEN195
8.6.3 MIMN197
8.6.4 SIM203
8.7 多目标建模206
8.7.1 MMOE206
8.7.2 ESMM MMOE208
8.7.3 SNR209
8.7.4 CGC209
8.7.5 PLE211
8.7.6 多目标模型的损失优化212
第9章 粗排层的样本选择和模型选择214
9.1 蒸馏215
9.2 工程优化217
第10章 重排层的设计与实现219
10.1 精排数据分析219
10.2 模型重排221
10.2.1 PRM221
10.2.2 生成式重排机制223
10.3 混排225
10.3.1 混排公式推导225
10.3.2 强化学习在混排中的应用226
第11章 冷启动环节的设计与实现233
11.1 用户冷启动233
11.2 物料冷启动233
11.3 PID算法235
|
內容試閱:
|
前 言
为什么要写这本书
2019年,我正式接触推荐系统。在此之前,在我的印象中,推荐系统就是利用机器学习算法或者深度学习算法去改进推荐效果,所以那时我把主要精力放在了研究基础的算法理论和一些经典算法模型上。当时,市面上大多数与推荐系统相关的书籍是讲算法理论或者代码实践的。这其实会给新手造成一种错误的引导——只要掌握了算法理论和复现算法,就可以搞好推荐系统。
当我真的参与推荐系统的工作以后我才发现,推荐系统是一套很复杂的系统,不仅涉及算法,还涉及对推荐业务的理解,以及不同推荐链路的作用、推荐策略的应用等内容。可惜的是,对于算法以外的内容,尤其是推荐系统在不同业务场景中的应用及对应的设计原理,无论媒体还是图书都少有涉及。
在开始的时候,我对推荐系统的理解也处于懵懵懂懂的状态,但“功夫不负有心人”,在遇到不懂的问题时我就记下来,然后去和同行交流、查找文献、自己实验,努力弄明白问题是如何产生的,以及怎么去解决或者规避问题。慢慢地,大量的问题被我解决。在这个过程中,我收获很多,并有幸得到了不少同行的认可。回顾之前遇到的问题和得到的解决方案,我发现很多内容对于当前处于迷茫状态的推荐系统从业者很有价值,可以帮他们迅速走出困境,提高工作效率,激发自我成长。所以我对自己这几年的经验和教训进行了总结与提炼,最终形成了这本书。
读者对象
本书适合所有推荐系统相关从业者,尤其是从初级向中高级进阶的推荐算法工程师阅读。另外,互联网产品经理、互联网推荐相关(如信息流、电商、短视频等)从业者也可以通过本书了解推荐系统底层的工作原理,进而帮助自己更好地应对本职工作。
本书特色
相比于其他同类书,本书的主要特色如下。
1)不介绍过于基础和理论化的内容,完全根据推荐系统从业者的实际工作展开。比如,本书对推荐系统的剖析完全基于不同互联网业务场景中的应用。本书开篇就从与各个App的交互页面开始,一步步地深入讲解整个推荐流程是如何在App中进行流转和产生作用的,包括电商业务、视频推荐业务、广告业务、信息流业务和拉活促销业务等场景。
2)按推荐系统的流程(冷启动、召回、精排、粗排和重排)进行精讲,这样不仅能让读者更好地理解内容,还能让读者把所学内容直观对应到实际工作中。
3)囊括所有重点内容,比如用户冷启动、物料冷启动和流量分配机制、协同过滤召回、双塔召回、Word2vec召回、图召回、树网络召回、模型蒸馏、工程优化、传统DNN模型、交叉模型、偏置建模、因果模型、序列建模和多目标建模。
4)对模型的调参进行精讲,这是不少有关推荐系统的书讲得不够好但又非常重要的内容。书中讲解了常用的机器学习模型的调参,如决策树调参、随机森林调参、XGBoost调参、LightGBM调参和全局优化调参等,并深度解读了神经网络调参,如DNN网络深度和宽度的影响、激活函数的选择、优化器的选择、各个损失函数的原理和适合的业务场景、过拟合和欠拟合等相关问题。
如何阅读本书
这是一本基于实际工作场景指导中高级推荐算法工程师高质量推动推荐系统落地的专业工具书。本书不针对零基础从业者,而是帮助初级算法工程师向中高级进阶,帮助推荐算法工程师从底层理解推荐系统在实际业务场景中出现的各种问题的本质,并按照推荐系统工作流程逐一破解。本书既是作者在阿里巴巴做推荐算法工程师的工作总结,又是一套完整的推荐系统高质量落地的解决方案。
本书共包括11章。
第1章 主要介绍推荐系统的总体情况及其在各个互联网业务场景中的落地,包括构建推荐系统可能面临的问题、电商推荐系统、视频网站推荐系统、广告业务推荐系统、信息流推荐系统、拉活促销推荐系统。
第2章 介绍推荐系统的整体架构。本书将推荐系统的框架分为冷启动链路、召回链路、粗排链路、精排链路和重排链路。针对各个链路的原理和应用,本章进行了整体梳理。通过这一章,读者可以对推荐系统形成比较深刻的整体认知。
第3章 对推荐系统所需要的数据和特征处理进行深度阐述,主要包括数据的收集、非结构化数据的结构化清洗、连续特征处理(标准化、无监督分箱和有监督分箱)等内容。
第4章 对推荐系统的线上指标和线下指标进行深度解读。此外,因为AB实验是推荐系统中重要的一环,所以本章也对AB实验的设计和需要注意的细节进行了一一讲解。
第5、6章 主要对机器学习和神经网络的设计及调参进行了详细的解读。这是本书的重点,也是很多推荐算法工程师的难点。这部分内容非常丰富,包括XGBoost的重要参数调优、集成学习最大化推荐效果利用、DNN网络深度和宽度的影响、激活函数的选择、优化器的选择、各个损失函数的原理和适合的业务场景、过拟合和欠拟合等。
第7~9章 分别对召回层、精排层、粗排层进行详细解读,包括协同过滤召回、双塔召回、Word2vec召回、图召回、树网络召回、传统DNN建模、偏置建模、模型可解释性、因果建模、序列建模、模型蒸馏、特征蒸馏、近离线计算等重点内容。
第10章 主要介绍精排模型的模型分析方法和定位优化方向、重排模型(PRM、生成式重排模型)和混排(混排的原理和强化学习在混排中的应用)。
第11章 主要介绍冷启动环节的设计,主要包括新用户如何冷启动、新物料如何冷启动和冷启动涉及的流量分配算法。这是本书的特色内容。
勘误和支持
由于作者水平有限,书中难免会出现一些错误或者不准确的地方,恳请读者批评指正。欢迎提出宝贵意见,可发送邮件至邮箱tomtang110@outlook.com或者知乎咨询Tang AI,期待你的真挚反馈。
致谢
感谢同学和朋友对我的指导及帮助,尤其是冯洁、刘智柯花费了很多时间对本书格式进行校正。
感谢我的父母,感谢他们将我培养成人,并时时刻刻鼓励我,让我充满信心和力量!
谨以此书献给广大推荐领域从业者,希望行业越来越好。
|
|