【好书推荐5】《精通推荐算法:核心模块+经典模型+代码详解》

【好书推荐5】《精通推荐算法:核心模块+经典模型+代码详解》


请添加图片描述

🌈你好呀!我是 是Yu欸
🌌 2024每日百字篆刻时光,感谢你的陪伴与支持 ~
🚀 欢迎一起踏上探险之旅,挖掘无限可能,共同成长!

前些天发现了一个人工智能学习网站,内容深入浅出、易于理解。如果对人工智能感兴趣,不妨点击查看

写在最前面

🌟 感谢大家的陪伴和支持!2024年,争取每周二开展粉丝福利活动,届时将赠送精选图书,欢迎关注 ~
🚀 本期活动,特别推荐@谢杨易老师的新作《精通推荐算法:核心模块+经典模型+代码详解》。

在我的自然语言处理学习之旅中,谢老师的博文极大地丰富了我的视野和知识。每篇博文开头的思维导图清晰地展示知识框架,然后对从基础到高级的算法模型进行了透彻讲解,详细分析了模型设计的思路及优缺点,最后通过示例代码帮助理解。谢老师深厚的技术功底、总结归纳能力令人钦佩。

为表达对谢老师的感谢和支持,同时帮助更多人了解nlp,我将自费购买并赠送新书。
亦可通过 此链接 限时五折优惠购买学习,并私信我获小红包(2024年6月6日以前)。

🌈 在评论区任意留言,即有机会获得免费包邮送书福利,每人最多支持3条评论。中奖结果将在上一期活动评论区、新一期图书赠送活动开头公布。

🎉恭喜上期活动中奖粉丝:一键难忘、孙小北,请私信联系 ~

在这里插入图片描述

编辑推荐

体系化、全链路,覆盖推荐算法核心模块。

有前沿、有经典,详解常用的模型和技术。

搜广推、适用广,轻松搞定入门面试进阶。

可下载本书配套代码,学习效果事半功倍。

加入本书读者群,交流技术、offer选择及职业规划问题。

内容简介

本书系统介绍了推荐算法的知识框架和技术细节,包括召回、粗排、精排和重排等模块。第1章从用户体验、内容生产和平台发展角度介绍为什么需要推荐系统,并阐述推荐系统的分类及整体技术架构。第2章介绍推荐算法模型的基础——数据样本和特征工程。第3章介绍传统推荐算法。第4~7章介绍推荐系统中最复杂的部分——精排模块,包括特征交叉、用户行为序列建模、Embedding表征学习和多任务学习。第8章介绍召回模块,并详细讲解非个性化召回和个性化召回算法。第9章介绍粗排模块,重点讲解特征蒸馏和轻量级特征交叉等方法。第10章介绍重排模块,包括打散和多样性、上下文感知和端上重排等技术细节。

本书适用于推荐算法初学者、有一定工作经验的推荐算法工程师,以及搜索、广告和营销等领域的从业者,也可作为高等院校计算机等相关专业师生的参考资料。

作者简介

谢杨易,本科毕业于华中科技大学,硕士毕业于中国科学院大学。主要研究方向为推荐算法、个性化搜索和自然语言处理,历任阿里巴巴算法专家、腾讯应用算法研究员等职位,在搜索和推荐算法领域积累了丰富的经验。CSDN博客专家,原创文章100余篇。发表专利15个,已授权6个。

精彩书评

搜索、推荐和广告一直以来都是工业界的核心业务。进入深度学习时代后,推荐算法技术的发展和更迭很快。本书深入讲解了深度学习时代下推荐算法技术的各方面内容。相信能给从业者带来较大帮助。

——蚂蚁集团前资深技术专家 刘恭亮

谢杨易从事搜索和推荐算法工作多年,具有非常丰富的理论和实践经验。如何优化搜索、推荐和广告业务效果?书中给出了详细的答案。本书非常适合搜索、推荐和广告算法领域的初学者和进阶者阅读和学习。

——华为消费者事业群前高级技术专家 王康

推荐算法的知识体系十分复杂,新模型层出不穷。本书的亮点不在于罗列各种模型,而是详细阐述每个经典模型诞生的原因和具体实现方案,使读者领悟推荐算法的核心要义。

——腾讯平台与内容事业群前副总监 赵争超

推荐算法是互联网行业中业务增长的重要引擎,其地位十分重要。本书是一本介绍推荐算法的佳作,理论与实践相结合,深入浅出,非常适合互联网从业者了解和掌握推荐算法。

——阿里巴巴淘天集团高级算法专家 朱俊雄

本书体系化地归纳了深度学习时代的推荐算法领域知识框架,包含近年来发布的模型及其代码实现,内容十分新颖,能够让读者快速掌握推荐算法的各项技术,并在实际工作中学以致用,非常值得一读。

——蚂蚁集团网商银行高级技术专家 管维刚

推荐算法是目前互联网领域中商业价值很高的技术方向。本书包含丰富的思维导图,全面介绍了推荐算法的技术框架,图文并茂,代码详尽,有利于读者加深对技术细节的理解,希望大家阅读后有所进益!

——蚂蚁集团智能服务业务高级算法专家 刘佳

本书以全链路的视角介绍了推荐算法中的召回、粗排、精排和重排等模块的技术细节。知识结构完整,脉络十分清晰,能够帮助读者举一反三。书中介绍了很多经典模型,代码详细,非常适合入门和进阶使用。

——之江实验室算法研究员、淘宝首页前推荐算法专家 彭爽

市场上介绍推荐系统方面的书很多,但详细讲解推荐算法知识体系和经典模型的书却很稀缺。自从进入深度学习时代后,推荐算法的发展可以说是日新月异。本书囊括了近两年推荐算法方向的重要进展,希望大家读后有所收获。

——腾讯优图实验室前应用算法研究员 丁中干

推荐系统与个性化搜索、计算广告一脉相承,它们在算法上的优化手段具有很强的复用性。本书不仅适合推荐算法的初学者和进阶者,还适合搜索和广告方向的工程师。

——蚂蚁集团网商银行技术专家 周宇

目录

1章 推荐系统概述 1
1.1 为什么需要推荐系统 1
1.1.1 推荐系统与用户体验 2
1.1.2 推荐系统与内容生产 3
1.1.3 推荐系统与平台发展 4
1.2 推荐系统分类 5
1.2.1 业务领域分类 5
1.2.2 内容介质分类 5
1.2.3 交互形态分类 6
1.2.4 应用场景分类 6
1.3 推荐系统技术架构 7
1.4 本章小结 92章 数据样本和特征工程 10
2.1 数据样本 10
2.1.1 样本不均衡问题 11
2.1.2 样本不置信问题 14
2.1.3/在线样本不一致问题 16
2.2 特征工程 17
2.2.1 特征类目体系 18
2.2.2 特征处理范式 21
2.2.3 特征重要性评估 22
2.3 本章小结 233章 传统推荐算法 25
3.1 协同过滤 25
3.1.1 基于用户的协同过滤 26
3.1.2 基于物品的协同过滤 27
3.1.3 协同过滤的优点和局限性 28
3.2 矩阵分解 29
3.2.1 矩阵分解实现方法 30
3.2.2 矩阵分解的优点和局限性 31
3.3 逻辑回归 31
3.3.1 逻辑回归求解过程 33
3.3.2 逻辑回归的优点和局限性 34
3.4 因子分解机 35
3.4.1 因子分解机模型简化 35
3.4.2 因子分解机的优点和局限性 36
3.5 组合模型 37
3.5.1 GBDT + LR组合模型结构 38
3.5.2 GBDT特征转换过程 39
3.5.3 组合模型的思考和总结 40
3.6 本章小结 404章 特征交叉 42
4.1 特征交叉概述 43
4.1.1 特征交叉的意义 43
4.1.2 特征交叉基本范式 44
4.1.3 特征交叉的难点 45
4.2 Deep Crossing:经典DNN框架模型 46
4.2.1 业务背景和特征体系 46
4.2.2 模型结构 48
4.2.3 实现方法 52
4.3 FNN 54
4.3.1 为什么Embedding收敛慢 55
4.3.2 模型结构 55
4.4 PNN 58
4.4.1 模型结构 58
4.4.2 特征交叉实现方法 59
4.5 Wide&Deep:异构模型奠基者 61
4.5.1 “记忆”和“泛化” 61
4.5.2 模型结构 62
4.5.3 系统实现 64
4.5.4 代码解析 66
4.6 DeepFM:异构模型Wide侧引入FM 68
4.6.1 模型结构 68
4.6.2 代码解析 70
4.7 DCN:异构模型Wide侧引入高阶交叉 74
4.8 NFM:异构模型Deep侧引入显式交叉 77
4.9 xDeepFM:异构模型引入子分支 79
4.10 本章小结 835章 用户行为序列建模 85
5.1 用户行为序列建模概述 86
5.1.1 行为序列建模的意义 87
5.1.2 行为序列建模的基本范式 87
5.1.3 行为序列建模的主要难点 88
5.1.4 行为序列特征工程 89
5.2 DIN:基于注意力机制建模用户行为序列 90
5.2.1 背景 90
5.2.2 模型结构 92
5.2.3 模型训练方法 95
5.2.4 代码解析 98
5.3 DIEN:GRU建模用户行为序列 100
5.3.1 模型结构:兴趣抽取层 100
5.3.2 模型结构:兴趣进化层 103
5.4 BST:Transformer建模用户行为序列 105
5.4.1 模型结构 105
5.4.2 代码解析 109
5.5 DSIN:基于Session建模用户行为序列 114
5.6 MIMN:基于神经图灵机建模长周期行为序列 117
5.6.1 工程设计:UIC模块 118
5.6.2 MIMN模型结构 119
5.7 SIM:基于检索建模长周期行为序列 123
5.8 ETA:基于SimHash实现检索索引在线化 126
5.8.1 ETA模型结构 127
5.8.2 SimHash原理 128
5.9 本章小结 1296章 Embedding表征学习 131
6.1 Embedding表征学习概述 132
6.1.1 Embedding概述 133
6.1.2 Embedding表征学习的意义 134
6.1.3 Embedding表征学习的基本范式 134
6.1.4 Embedding表征学习的主要难点 135
6.2 基于序列的Embedding建模方法 135
6.2.1 Word2vec任务定义:CBOW和Skip-gram 136
6.2.2 Word2vec模型结构 137
6.2.3 Word2vec训练方法 138
6.2.4 Item2vec:推荐系统引入序列Embedding 139
6.2.5 序列建模总结和思考 139
6.3 基于同构图游走的Graph Embedding 139
6.3.1 DeepWalk:同构图游走算法开山之作 140
6.3.2 LINE:一阶相似度和二阶相似度探索 141
6.3.3 Node2vec:同质性和结构等价性探索 142
6.3.4 同构图游走的优缺点 144
6.4 基于异构图游走的Graph Embedding 145
6.4.1 Metapath2vec 145
6.4.2 EGES 146
6.4.3 异构图游走的优缺点 149
6.5 图神经网络 149
6.5.1 GCN:图神经网络开山之作 149
6.5.2 GraphSAGE:图神经网络工业应用的高潮 152
6.5.3 图神经网络总结 153
6.6 向量检索技术 153
6.6.1 向量距离计算方法 154
6.6.2 向量检索算法 156
6.6.3 向量检索常用工具:Faiss 161
6.7 本章小结 1627章 多任务学习 165
7.1 多任务学习发展历程 166
7.1.1 为什么需要多任务学习 166
7.1.2 多任务学习的基本框架 167
7.1.3 多任务学习的难点和挑战 168
7.2 ESMM模型:解决SSB和DS问题的利器 169
7.2.1 样本选择偏差和数据稀疏问题 169
7.2.2 ESMM模型结构 170
7.2.3 ESMM核心代码 172
7.3 MMOE模型:多专家多门控网络 174
7.3.1 MMOE模型结构 174
7.3.2 MMOE核心代码 177
7.4 PLE模型:解决负迁移和跷跷板现象的利器 179
7.4.1 负迁移和跷跷板现象 180
7.4.2 单层CGC模型结构 180
7.4.3 PLE模型结构 183
7.4.4 PLE核心代码 184
7.5 多任务融合 188
7.5.1 网格搜索 189
7.5.2 排序模型 190
7.5.3 强化学习 190
7.6 本章小结 1928章 召回算法 194
8.1 召回概述 196
8.1.1 推荐底池 196
8.1.2 多路召回 197
8.1.3 召回的难点 198
8.1.4 召回评价体系 199
8.2 个性化召回 200
8.2.1 基于内容的个性化召回 200
8.2.2 基于协同过滤的个性化召回 201
8.2.3 基于社交关系的个性化召回 203
8.3 向量召回 203
8.3.1 实现方法 204
8.3.2 YouTube DNN 204
8.3.3 Facebook EBR 206
8.3.4 百度MOBIUS 208
8.4 用户行为序列类向量召回 209
8.4.1 多峰兴趣建模的意义 210
8.4.2 MIND的模型结构 210
8.4.3 胶囊网络 212
8.5 样本选择偏差问题 213
8.5.1 召回样本构建方法 213
8.5.2 ESAM和迁移学习 215
8.6 召回检索优化和TDM 218
8.6.1 TDM在线检索过程 218
8.6.2 TDM索引构建和模型训练过程 220
8.6.3 JTM 221
8.6.4 OTM 222
8.7 本章小结 2239章 粗排算法 226
9.1 粗排概述 228
9.1.1 粗排样本和特征 228
9.1.2 粗排发展历程 228
9.1.3 粗排的难点 230
9.1.4 粗排评价体系 230
9.2 PFD模型:知识蒸馏学习交叉特征 231
9.2.1 PFD模型结构 231
9.2.2 PFD模型原理 232
9.2.3 PFD与传统蒸馏相结合 233
9.2.4 PFD在精排中的应用 234
9.3 COLD模型:显式特征交叉 235
9.3.1 双塔内积模型 235
9.3.2 COLD模型 237
9.4 FSCD模型:效果和效率联合优化 238
9.4.1 FSCD特征选择原理 239
9.4.2 FSCD训练步骤 241
9.5 本章小结 24210章 重排算法 243
10.1 重排概述 245
10.1.1 为什么需要重排 245
10.1.2 重排的难点和挑战 245
10.1.3 流量调控 246
10.2 打散和多样性 246
10.2.1 打散 247
10.2.2 多样性 248
10.2.3 多样性发展历程 248
10.3 上下文感知和PRM模型 249
10.3.1 什么是上下文感知 250
10.3.2 PRM模型结构 250
10.3.3 其他上下文感知实现方案 253
10.4 实时性和延迟反馈问题 254
10.4.1 推荐系统实时性的意义 254
10.4.2 推荐系统实时性分类 255
10.4.3 延迟反馈问题 256
10.4.4 延迟反馈优化方案 257
10.5 端上重排和EdgeRec 257
10.5.1 为什么需要端上模型 258
10.5.2 端上推理引擎 259
10.5.3 EdgeRec系统架构 259
10.5.4 EdgeRec模型结构 260
10.6 本章小结 262

前言/序言

当前互联网高速发展,用户规模和内容规模均迅猛提升。身处信息严重过载的时代,如何让用户从海量信息中发现自己感兴趣的内容,成了很多公司的核心问题。在此背景下,搜索系统和推荐系统应运而生。前者主要解决用户主动寻找内容的问题,后者则将合适的内容分发给合适的用户,偏被动型消费。它们是连接用户和内容的桥梁,重要性不言而喻。

自从2012年AlexNet在ImageNet大规模视觉识别比赛中一举夺魁后,深度学习就深入各大业务领域,推荐系统也不例外。基于深度学习的推荐系统,大幅提升了内容分发的准确性和用户体验,已被应用在各大推荐场景中。推荐算法工程师也由此步入了新的时代。

当前深度学习技术仍然在快速更新中,推荐算法也在飞速发展,因此,从业者必须持续学习新知识。同时,推荐系统链路很长,包括召回、粗排、精排和重排等诸多模块,如何掌握整体架构,并深入每个模块理解其细节,就成为一件困难且重要的事。

本书主要介绍推荐算法技术,覆盖召回、粗排、精排和重排等模块,目的是让读者熟悉推荐算法的全部链路,加深体系化理解,并掌握关键技术细节。另外,本书介绍的很多技术也可应用在搜索和广告等领域。

本书既适合搜索、推荐和广告算法领域的初学者,也适合有一定经验的工程师进阶学习。它能帮助你掌握推荐算法的整体架构、每个核心模块的知识框架,以及一些工作必备的经典模型,同时,能帮助你深入理解它们的出发点和具体实现方案,在实际工作中融会贯通。

身处信息爆炸时代的推荐算法工程师是幸运的,但仍然需要不断学习新知识,接受更多挑战。希望本书分享的知识和经验能够助广大读者一臂之力!

本书特色

本书主要介绍推荐算法技术,特点如下。

(1)内容全面,结构合理。书中囊括推荐算法的所有核心模块,涵盖召回、粗排、精排和重排等内容,帮助读者掌握完整链路,加深对推荐算法的整体理解。先介绍算法模块的知识框架,使读者对其有整体认知,再展开讲解每个细节技术点,帮助读者加深对该模块的理解。

(2)由浅入深,深入本质。针对每个算法模块的讲解,都按照从基础实现到复杂优化的思路,从简到难,由浅入深。通过讲解这些优化手段的出发点和具体实现,以及不同优化手段的关键点,让读者抓住算法本质。

(3)模型经典,代表性强。针对每个模块都选取一些有代表性的经典模型进行重点讲解,这些经典模型都是推荐算法工程师必须掌握的。

(4)贴近工作,实战性强。本书不会利用大量篇幅讲解理论,也不会只介绍一些入门知识。书中介绍的模型和技术细节大多已被应用在实际工作场景中,实战性很强。

(5)代码详细,操作性强。本书为关键的算法模型和模块配备了具体实现代码,并附有详细的注释和运行流程讲解,帮助读者深入理解其运行机理和实现方法。

本书内容

本书包括10章,各章的具体内容如下。

第1章介绍为什么需要推荐系统、推荐系统的分类及其主要技术架构。

第2章介绍如何构建数据样本和特征工程,从而训练模型。这是推荐算法的基础。

第3章介绍深度学习之前的主流推荐算法,包括协同过滤、矩阵分解、逻辑回归和因子分解机等算法。

第4~7章讲解精排模型算法。

第4章讲解特征交叉,并介绍Wide&Deep和DeepFM等经典模型。

第5章讲解用户行为序列建模,包括短序列建模和长序列建模方法,重点讲解DIN、DIEN和SIM等模型。

第6章讲解Embedding表征学习,并介绍Node2vec和GraphSAGE等模型。

第7章讲解多任务学习,包括多任务建模和多任务融合,重点讲解ESSM、MMOE和PLE等模型。

第8章介绍召回算法,包括非个性化召回和个性化召回,重点讲解YouTubeDNN、ESAM和TDM等模型。

第9章介绍粗排算法,包括特征蒸馏和轻量级特征交叉等方法,重点讲解PFD、COLD和FSCD等模型。

第10章介绍重排算法,包括打散和多样性、上下文感知和端上重排等,重点讲解PRM和EdgeRec等模型。

此外,本书会根据推荐算法的发展情况,在后续版本中增加一些新内容,欢迎读者持续关注。

在这里插入图片描述

  • 155
    点赞
  • 109
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 214
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 214
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

是Yu欸

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值