【王喆-推荐系统】开篇词

举报
野猪佩奇996 发表于 2022/01/22 23:31:22 2022/01/22
【摘要】 这个系列是学习王喆的【深度学习推荐系统实战】时做的笔记和自己的学习总结。 文章目录 零、一个栗子的引入一、学习目标和要求1.学习目标2.课前要求 二、课程体系1.基础架构篇2.特征工程篇3.线...

这个系列是学习王喆的【深度学习推荐系统实战】时做的笔记和自己的学习总结。

零、一个栗子的引入

先从一个栗子入手,2019 年,阿里著名的千人千面系统驱动了天猫“双 11”2684 亿元的成交额。假设我们通过改进天猫的商品推荐功能,让平台整体的转化率提升 1%,那么在 2684 亿元成交额的基础上,我们就能再增加 26.84 亿元。 也就是说,推荐工程师仅通过优化推荐技术,就创造了 26.84 亿元的价值。这无疑是这个职位最大的魅力所在。

2013 年,百度率先在广告系统中应用了深度学习,2015 到 2020 年,阿里提出并应用了从 MLR 到 DIEN 等一系列的深度学习模型。国外的互联网巨头也不逞多让,从最早的 Google 的 Word2vec,到 2015 年 YouTube 的深度学习推荐系统,再到之后的 Facebook、Amazon、微软等等,几乎所有头部公司的成功应用,让深度学习如后浪般席卷了推荐系统业界,将传统的推荐模型彻底取代。
再或者说,我们最熟悉的天猫淘宝的双十一活动。

一、学习目标和要求

1.学习目标

在所有业界巨头的推荐引擎都由深度学习驱动的今天,作为一名推荐系统从业者,我们不应该止步于:
(1)不能满足于继续使用协同过滤、矩阵分解这类传统方法,而应该加深对深度学习模型的理解;加强对大数据平台的熟悉程度,培养结合业务和模型的技术直觉,提高我们整体的技术格局。
(2)王喆大佬之前在硅谷担任推荐算法架构师,团队踩过很多坑,其中他说最宝贵的一点: 只有建立起深度学习推荐系统的知识体系,从系统的层面考虑问题,我们才能够实现整体效果上的优化。
(3)最现实的问题是,企业的一些推荐、广告、搜索算法部分在招聘时,更喜欢动手能力强、有实习经历、有业界项目经验的(所以即使可能不放实习,卑微读研生就应该多做项目,提交到github上!)。
(4)很多师兄师姐也确实说过。。算法工程师知识更新很快,一不小心就处于淘汰的边缘,王喆大佬说人才的分布都是金字塔式的,与其抱怨,不如提高自己的知识储备、工程能力和技术视野。

2.课前要求

(1)有一定编程基础;(2)有基本的机器学习概念知识。

自己将会学习的资料:
(1)东北大学的字节大佬github推荐系统项目:
https://github.com/zhongqiangwu960812/AI-RecommenderSystem还有强哥的博客
(2)王喆大佬的书《深度学习推荐系统》,注意书中的勘误
(3)推荐算法的论文:
1.盘一盘推荐系统里值得一读的那些论文
2.从200多篇顶会论文看推荐系统前沿方向与最新进展
(4)动手搭建项目,像之前的京东NLP项目一样的工业级项目(尝试)。
(5)王喆大佬网站:http://wzhe.me/(有书中说的paper)
(6)推荐系统是否进入图神经网络时代?,一篇综述

二、课程体系

在这里插入图片描述

1.基础架构篇

(1)讲解我们要从 0 开始实现的推荐系统,Sparrow RecSys 的主要功能和技术架构。由于缺少工业级的实验环境,Sparrow RecSys 不可能是一个真正的工业级推荐系统,但是它的每一行代码都是严谨的,其中的每个方法都是经过业界验证的主流方法。
(2)还会使用到 Spark、Flink、TensorFlow 这些业界目前最流行的机器学习和大数据框架

2.特征工程

(1)讨论推荐系统会用到的特征,以及主要的特征处理方式,并且把它们都实践在 Spark 上。
(2)讲解深度学习中非常流行的 Embedding、Graph Embedding 技术。特征工程是在准备食材。利用学到的 Embedding 方法,来实现 Sparrow Recsys 中的相似电影推荐功能,在实践中快速成长起来。

3.线上服务篇

(1)一个工业级推荐系统和实验室 Demo 的最大区别就在于线上服务部分。我们要搭建一个推荐服务器,它包括了服务器、存储、缓存、模型服务等相关知识。
(2)初步掌握 Jetty Server、Spark、Redis,这些工程领域的核心技能。

4.推荐模型篇

(1)学习深度学习推荐模型的原理和实现方法,主要包括 Embedding+MLP 、Wide&Deep、PNN 等深度学习模型的架构和 TensorFlow 实现
(2)注意力机制、序列模型、增强学习等相关领域的前沿进展。

5.效果评估篇

(1)学习效果评估的主要方法和指标。
(2)对一个成熟的推荐系统来说,还需要建立起包括线下评估、线上 AB 测试、评估反馈闭环等整套的评估体系,真正能够用业界的方法而不是实验室的指标来评价一个推荐系统。

6.前沿拓展篇

讲解 YouTube、阿里巴巴、微软、Pinterest 等一线公司的深度学习应用,帮助你追踪业界发展的最新趋势,并且找到自己技术道路上的方向。

三、小结

不要老想着一蹴而就,推荐系统的每个模块都有着极深的技术纵深,不管是 TensorFlow 还是 Spark,还是 Redis、Flink,它们中的每一个都需要我们持续性的钻研。这里我贴加一张之前看到过的58同城的推荐系统整体架构:
在这里插入图片描述
毛小伟大佬对上图的总结:
数据层:前后端通过埋点记录用户日志数据,KaFka消息队列将数据存入HDFS大数据文件系统中。这一层技术栈是Hadoop、Spark大数据组件

策略层:平常所说的推荐算法就是指这一层,需要重点掌握。首先是召回,主要根据用户部分特征,从海量的物品库里,快速找回一小部分用户潜在感兴趣的物品,然后交给排序环节,排序环节可以融入较多特征,使用复杂模型,来精准地做个性化推荐。召回强调快,排序强调准。这一块重点掌握模型:协同过滤、矩阵分解、FM、Embeding、Wide&Deep及其改进

应用层:根据业务需求而不同。比如:广告点击、商品推荐、短视频推荐。

《深度学习推荐系统》,这本书高屋建瓴的介绍了推荐系统整体架构,发展历史以及未来趋势,各种推荐模型的演化之路,很适合前期用来搭建推荐系统知识框架。但是具体的模型并没有深入讲解,还得自己去看论文。这个也很正常,作为算法人员,经常看论文是必须的,就像开发人员要时常看官方技术文档。

Reference

(1)《深度学习推荐系统实战》——王喆
(2)知乎:如何评价「深度学习推荐系统」这本书

文章来源: andyguo.blog.csdn.net,作者:山顶夕景,版权归原作者所有,如需转载,请联系作者。

原文链接:andyguo.blog.csdn.net/article/details/120521323

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。