深度学习推荐系统实战
王喆
Roku 推荐系统架构负责人,前 hulu 高级研究员,《深度学习推荐系统》作者
33298 人已学习
新⼈⾸单¥68
登录后,你可以任选4讲全文学习
课程目录
已完结/共 44 讲
深度学习推荐系统实战
15
15
1.0x
00:00/00:00
登录|注册

特别加餐 | “银弹”不可靠,最优的模型结构该怎么找?

课后思考
上次总结后续的文章
上次总结结果
主题总结

该思维导图由 AI 生成,仅供参考

你好,我是王喆。
推荐模型篇的课程到现在已经接近尾声了,我们也已经学习并且实践了六种深度学习推荐模型。最近,我发现很多同学会在留言区提出类似这样的问题:
老师,我的 Wide&Deep 模型在我的数据集上效果不好怎么办?
老师,是不是 DeepFM 模型的效果会比 NeuralCF 好?
老师,DIEN 模型是不是现在效果最好的模型?
其实,我完全理解同学们提问题的心情,就是希望在工作中通过不断地改进模型找到一个最强的模型,来尽快地提升推荐效果,击败当前的模型。我们团队中所有的新人也几乎都有这样的想法。
但是真的存在一个万能的模型结构,能在所有推荐系统上都达成最好的推荐效果吗?这节课,我希望我们能够放缓脚步,务虚一点,好好思考一下到底什么才是最好的模型结构,以及算法工程师正确的工作方法是什么。

有解决推荐问题的“银弹”吗?

在软件工程领域的著作《人月神话》中,作者 Brooks 凭借自己在 IBM 管理 2000 人完成大型项目的经验,得出了一个结论:没有任何技术或管理上的进展, 能够独立地许诺十年内使软件系统项目生产率、 可靠性或简洁性获得数量级上的进步。
Brooks 用“没有银弹”来形容这个结论。在欧洲的古老传说中,银色的子弹是能够一击杀死狼人这种怪物的特效武器。我们也可以把银弹理解成是最好的解决办法。“没有银弹”这个结论让很多期待寻找大型软件开发“捷径”的管理者和工程师们深感失望。但距离人月神话出版已经 45 年的今天,我们找到“银弹”了吗?
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 中文繁体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
    • 阿拉伯语
  • 解释
  • 总结

本文讨论了深度学习推荐模型的选择,并强调了模型结构的灵活性和因地制宜的重要性。作者以DIEN模型为例,指出模型的有效性与业务特点和数据特点密切相关。文章强调了模型选择的灵活性和因地制宜的重要性,为读者提供了深度学习推荐模型选择的思路和方法。作者还提出了算法工程师的正确工作方法,包括问题提出、数据和业务探索、初始解决方案、解决方案调优、工程落地调整、生产环境上线、迭代与复盘等步骤。最后,文章呼吁读者不要追求所谓的“银弹”,而是应该掌握业界的主流技术手段,建立自己的知识框架。总的来说,本文强调了在实践中不断进行参数调优,才能找到最合适自己业务场景的模型,同时提出了算法工程师的正确工作方法,为读者提供了实用的工作指导。

仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《深度学习推荐系统实战》
新⼈⾸单¥68
立即购买
登录 后留言

全部留言(14)

  • 最新
  • 精选
  • 张弛 Conor
    我认为“没有银弹”,对于算法工程师而言恰巧是最好的情况。如果存在银弹,那么所谓的“银弹”就成了主角,到时候哪怕是没有任何知识背景和经历经验的人,按照说明书一步步操作“银弹使用教程”,就能获得企业的商业目标,那么还要算法工程师干什么呢?我认为“没有银弹”,正是体现算法工程师价值的地方。 虽然还没有工作,但我非常认同老师所说的“没有最好,只有最合适”的观点。感觉大道相同,很多事情的基本哲学都是相似的。我认为对于算法工程师而言,了解最新的模型结构,拥有体系的算法知识固然重要,但是了解自身业务特点,并能挑选最合适的技术组件来解决问题才是算法工程师的核心竞争力。 最后,非常感谢老师分享了自身多年的从业经验和方法论,让我纠正了一些思维上的误区。

    作者回复: 非常非常好的感悟,推荐给其他在校的同学和刚工作的同学。

    2020-12-01
    54
  • Leo Zhao
    很好的流程总结。我觉得 前面还要加入 如何把算法工程的目标与业务目标对接。毕竟业务目标是从上到下拆解出来的,每次拆解 都有信息缺失和假设在里面。建立与业务联系 是个艺术和经验问题,需要很大的智慧和对业务的理解。比如 推荐系统精度提高5个百分点 对销售增长的意义是什么。 在业务中 算法工程师不得不要与domain experts 充分融合。

    作者回复: 这一点非常非常好,涉及到跨团队合作和一些education的问题。有机会我在最后一章再总结一些经验,多谢分享!

    2020-12-02
    15
  • 范闲
    作为一个服务端,看深度学习推荐系统和这个课程感触比较深的是 1.除了不涉及模型部分,其他技术栈基本一致,要求上更高一点 2.算法模型的落地也是因时因地制宜,和系统工程架构殊途同归,最终都是妥协和折中的结果。 3.没有银弹,从本质上来说我们更需要站到业务的角度来将业务问题技术化。站在技术的角度来看,如何探索新的可能性来提高业务的效率与收益。 4.业务与技术最终还是齐头并进的。

    作者回复: 非常好的感触分享。 所以我一直跟带过的新人强调,算法工程师首先是一名工程师,不能总盯着算法模型,它们是重要的,但远不是推荐系统的全部。 在实际的工作中,我们永远需要的是技术栈全面的工程师,能把你的机器学习知识落地才是真的影响力。 永远要避免学生思维,唯技术论,被所谓前沿技术奴役,而不是你去驾驭技术。一天不去除这个概念,就一天不会入高级工程师的门。

    2020-12-03
    12
  • 那时刻
    老师提到的避免学生思维颇有感触,从学生时代积累下的思维习惯,使我们想要一个标准答案,缺少了自己去探索与以反向思维去挑战答案。对于数据处理工作尤其明显,首先对于要处理的数据有清晰地认识,然后再依据数据特征去尝试模型,模型结果不理想的话,再返回来重新认识数据和对数据进行特征工程处理,再次尝试模型后者其它模型。感谢老师分享经验,以及模型的介绍,建立我们自己的知识体系,这样方便我们在实际工作中应用。

    作者回复: 非常好的感想,推荐给其他同学。也期待后续多分享自己的经验和总结,多谢分享!

    2020-12-02
    3
  • 🍃
    本来还有各种焦虑,要怎么选模型,现在打消顾虑。与其找银弹,不如去适合当前场景的子弹。不存在万能,这也是算法工程师存在的意义。算法工程师除了具备机器学习、深度学习的基础知识,还得具备工程能力,最重要的能力是用这些手段实现业务需求,并不断自我思考,自我改进。做这个工作的乐趣也在于自我审视中成长!玄学炼丹,还有点哲学。

    作者回复: 说的很好

    2021-05-08
    2
  • 小匚
    在选择模型时确实会看看某个功能的模型,最传统长什么样,最潮流最新的又是什么样。倒也不是追时尚,只是能明白这个模型哪个地方其实是可以调的,哪里可以换一下或者有其他的。具体决定用哪个还是要看业务和数据。

    作者回复: 是这样。对于最新的模型,借鉴思路是最重要的,不要追求完美复制,不要过多质疑为什么新的模型在你的场景不work。合适的才是最重要的。

    2020-12-01
    2
  • 浣熊当家
    非常有帮助!!在学习了技术细节后,特别想听这种思维模式的指导,很难得,感谢老师

    作者回复: 最后一章会再总结分享一些经验,也欢迎多分享自己的想法。

    2020-12-01
    2
  • FayeChen
    老师我想请教一下,我是做楼盘推荐的,楼盘就有价格、面积这些属性,业务方希望对一个特定用户推荐的楼盘价格、面积的方差不要过大,我也明白这个要求非常合理, 但是模型结果有的时候是不受控制的,很难避免bad case 的发生。这个算是排序层后续的补充策略,希望老师能就这种带约束条件的推荐方法进行补充。

    作者回复: 这是一个比较特例的业务问题,不好讲有没有通用的解决策略。还是要你们自己从业务出发想一些约束和过滤方法。我们课程还是以通用的框架和原理讲解为主。

    2021-03-21
    2
    1
  • 大魔王
    非常赞同老师说的

    作者回复: thumbs up

    2020-12-01
    1
  • 南海长风九万里
    这波加餐量太足了 哭了

    作者回复: 加油

    2021-07-01
收起评论
显示
设置
留言
14
收藏
沉浸
阅读
分享
手机端
快捷键
回顶部