32 | 强化学习案例:美团是如何在推荐系统中落地强化学习的?
王喆
该思维导图由 AI 生成,仅供参考
你好,我是王喆。今天我们来聊一聊美团的强化学习落地案例。
我们在第 22 讲中学过强化学习的基本原理、优点,以及微软的强化学习模型 DRN,但我们也说了强化学习在推荐系统中落地会有一个难点:因为强化学习涉及模型训练、线上服务、数据收集、实时模型更新等几乎推荐系统的所有工程环节,所以强化学习整个落地过程的工程量非常大,需要工程和研究部门通力合作才能实现。
即使很难,但业界依然有成功落地强化学习的案例,典型的就是美团在“猜你喜欢”功能中的应用。美团曾在官方博客中详细介绍过这一落地方案的技术细节,我们这节课就借助这个方案,来好好学习一下强化学习的实践。我也希望你能通过这个案例,串联起我们学过的所有推荐系统知识。
美团的强化学习应用场景
“猜你喜欢”是美团这个团购 App 中流量最大的推荐展位,产品形态是信息流。从图 1 的 App 截图中你可以看到,“猜你喜欢”列表中推荐了用户可能喜欢的餐厅,用户可以通过下滑和翻页的方式实现与 App 的多轮交互,在这个过程中,用户还可能发生点击、购买等多种行为。
图1 美团首页“猜你喜欢”场景
强化学习的应用场景就藏在用户和美团 App 的多轮交互之中。如果推荐系统能够在用户每次翻页的时候都考虑到用户刚刚发生的行为,就能够提供实时性更强的推荐体验。图 2 是美团的同学统计的用户翻页次数的分布图,我们可以看到,多轮交互确实是美团 App 中非常常见的用户场景,这也说明强化学习还是非常有用武之地的。
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
- 深入了解
- 翻译
- 解释
- 总结
美团成功将强化学习应用于推荐系统的“猜你喜欢”功能,通过多轮用户交互实现实时推荐体验。其强化学习建模方法包括智能体、环境、行动、奖励、目标和状态等六个要素。该方案的执行过程分为预训练、初始化、实时交互和在线学习四个步骤。美团的工程架构包含了数据流、模型训练、模型服务、线上推荐等多个模块,其中使用了Flink和TensorFlow等技术。针对TensorFlow Serving延迟大、更新时效率低的特点,美团采取了剥离Embedding层、切分线程池、模型预热等改进措施。整个方案展现了美团在推荐系统领域的技术实力和创新能力。
仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《深度学习推荐系统实战》,新⼈⾸单¥68
《深度学习推荐系统实战》,新⼈⾸单¥68
立即购买
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
登录 后留言
全部留言(8)
- 最新
- 精选
- Geek_e642b8课后思考题:能否用flink直接将梯度下降的算法写到数据流中?不过因为flink是对一个一个数据进行处理,可能梯度下降法就只能用mini-batch=1了
作者回复: 非常好的点,可以的,其实flink因为是每次进行window内部的数据处理,并不是一个一个数据处理,所以完全可以做成mini batch的训练方法,而且业界已经有很多实现了。
2021-01-0710 - Liam一直徘徊在 AI 的大门外,看完老师的教程,才真正入门了。作为后端开发者,终于知道怎么在工作中把AI加进来。
作者回复: 赞,希望真的能把咱们课程的知识落地。
2020-12-294 - ALAN老师,你好,Advantage 和 Value 函数相关的参数,这部分并不是在 TensorFlow 中训练的,而是利用实时数据流中的样本进行在线学习,并实时调整相关参数值。 请问这个具体是哪种方式实现的了?
作者回复: 美团并没有介绍细节。但我们可以思考一下怎么实现。从我的实践来看,有一些超参数是可以online tuning的,比如一些high level特征的混合权重,可以利用ftrl在线学习等。这部分完全可以在推荐服务器内部实现,通过flink进行近线准实时学习。
2020-12-2832 - 创之巅推荐系统太复杂了,知识点太多了。比nlp难多了
作者回复: 最难的点还是在工程和模型结合吧。
2021-05-131 - idiot没有mcts的部分?如果只是value net或者q函数的预测,那不是和一般的回归一样吗,只是实时更新模型而已?
作者回复: 并不是强化学习都要有mcts的部分。如果这么理解,重点确实是在value net,q函数的设计和模型的实时更新部分。
2021-05-121 - 一轩明月1. 借鉴预训练的思路。先全量计算一个 base model,实时数据进来后,在近线层组装样本,用小规模的新样本训练模型进行 fine-tune。数据量小 SGD,mini-batch 都可以用 2. 除了 RL,FTRL 在在线学习也很强
作者回复: 非常好,FTRL当然是工程价值很高的做法。不过不适合跟RL并列,RL应该是一个体系,FTRL是中在线梯度下降算法。
2021-01-131 - 李平请问老师,state网络为什么不用在线实时训练呢?每次预测action的时候不是要读取用户状态吗?这个状态又是历史行为,我理解这个历史行为应该是实时的才能更好表征用户兴趣2023-03-07归属地:北京
- Geek_732522美团的这个强化模型的架构和DDPG网络类似,是一个AC架构,Advantage网络类似DDPG网咯中的critic网络,输入是预判的action和当前的state,Value网络类似DDPG网络中的Actor网络,只输入当前的state。DDPG模型就是一种在线更新的深度学习模型,在线训练使用的是mini-batch的梯度下降。2022-11-10归属地:北京
收起评论