由于近些年深度学习技术的飞速发展,大力加速推动了AI在互联网以及传统各个行业的商业化落地,其中,推荐系统、计算广告等领域彰显的尤为明显。由于推荐系统与提升用户量以及商业化变现有着密不可分的联系,各大公司都放出了众多推荐系统相关职位,且薪水不菲,目前发展势头很猛。但是,这里存在几个问题,很多欲从事推荐系统的同学大多数学习的方式是自学,1、往往是学了很多的推荐算法模型,了解些推荐里常用的算法,如:协同过滤、FM、deepFM等,但是却不清楚这些模型在工业界推荐系统中是如何串联、如何配合、有哪些坑,哪些trick的,导致无论面试还是真正去业界做推荐系统,都会被推荐领域的”老枪老炮“们一眼识别出小白属性。2、对于算法原理理解不深刻,这就会导致实际应用时不能很好地将模型的性能发挥出来,另外面试时对于大厂面试官的刨根问底,只能是眼睁睁的丢掉offer。CF、FM、DSSM、DeepFM等这些推荐业界明星模型,你真的清楚他们的内部运行原理以及使用场景吗?真的了解FM模型与SVM有什么相似之处吗?FM固然可以用作为打分模型,但它可以用来做matching吗,如果可以,如何做?item2Vec模型在业界是如何缓解冷启动的问题的?双塔模型优势在哪?深度模型到底是如何做matching的,是离线计算好结果还是实时的对网络进行前向计算?DeepFM具体实现时,wide端和deep端的优化方式是一样的吗?基于Graph的推荐方法在业界的应用目前是怎样的?基于上述的目的,贪心学院推出了《推荐系统工程师培养计划2期》,由一线的推荐系统负责人亲自全程直播讲解。
逻辑回归模型
梯度下降法
神经网络模型
过拟合与正则
常用的评价指标
常用的优化算法
向量、矩阵基础
推荐系统概述、架构设计
推荐系统后台数据流设计
常用的技术栈
推荐系统中的评价指标
简单的用户协同
环境搭建
内容画像的搭建基础
关键词提取技术tf-idf, textRank
LSTM与注意力机制
Attention的几种常用方式
Self-Attention
Multi-head Attention
双线性Attention
NLP工具的使用
MySQL数据库的搭建与内容画像存储
用户画像与内容画像的关系
用户画像的架构
用户画像的扩展
用户画像与排序特征
用途:基于标签的用户画像
标签权重的计算方法(贝叶斯平滑、时间衰减)
基于用户画像的召回方法
Redis的搭建与使用
基于Redis的用户画像存储
Hadoop, Hive, Spark等工具使用
MF召回法以及求解
特征值分解
传统奇异值分解之SVM
FunkSVD
ALS方法
SVD++
基于物品的协同Item-CF
MF召回法以及求解
理解Embedding技术
Embedding为什么有效
Embedding与稀疏ID类特征的关系
Item-CF召回与Item2Vec
Airbnb序列召回与冷启动缓解思路
NCF召回以及变种
YouTube召回方法
从DSSM到双塔模型
双塔模型工业界的部署方法
多兴趣召回
MIND召回
Faiss工具介绍
KD树,LSH,Simhash
Week7: Graph Embedding与用户行为构建图
MIND召回
随机游走于传统协同方法
Deepwalk
Node2Vec及其同质性与结构性
LINE
随机游走的实现
Alias采样方法
Neo4j讲解
Graph Embedding的实现
Node2Vec的实现
MIND召回
Graph Embedding优化
EGS,注意力机制及其变种
Ripple网络方法
召回层采样的坑与技巧
热度抑制
EGES的实现
GCN和GAT
GraphSage
MIND召回
Ranking与用户画像
物品画像
LR模型
GBDT+ LR
FM模型详解、业界使用方法与坑
FFM模型
AUC与GAUC
增量学习与Online Learning
从L1稀疏化、FOBOS到FTRL算法
基于FM实现Ranking精排序
Week10: 深度Ranking模型与工业采样技巧
粗排与精排及其意义
主流深度推荐模型的集中范式
特征自动组合:Deep&Cross, XDeepFM, PNN
特征重要度提取以及无用特征去噪:AFM, DeepFFM
序列推荐模型:DIN,DIEN, AttRes,Stamp
独辟蹊径之序列推荐的优化思路
深度模型工具的介绍与使用
MLSQL
DeepCTR等与工业界采样方法
Week12-13: 工业界新闻推荐系统中冷启动与热点文章实时召回
人群分桶
实时交互正反馈
实时召回与实时画像技术
人群投票
人群等级投票
降维分发
后验与先验的结合
引入注意力机制的优化兴趣增加和衰减
热点文章召回策略
本地文章召回策略
算法策略与运营配合协作
Week14: 强化学习与推荐系统、AutoML与推荐系统
强化学习概念、以及在推荐系统中的对应
DP算法本质思想
马尔科夫决策
蒙特卡洛搜索所树(MCTS)
UCB及其在推荐系统中的应用
汤普森采样法
Q-Learning、DRN、策略梯度
强化学习在推荐场景中的应用
工业界项目的部署
推荐系统岗位的面试要点
大厂的面试攻略
如何准备简历、包装自己
职业规划
推荐系统主要分为两个环节:召回和排序。这两个阶段,都离不开用户画像的支持,而用户画像又是在内容画像基础之上不断累积用户行为而来,故首先需要有内容画像,构建文本物品的内容画像需要nlp技术的支持,存储内容和用户画像依赖常用数据库以及贝叶斯平滑、威尔逊置信区间等技术;学习本项目后,你将了解到如何使用nlp技术抽取物品信息形成内容标签,依托mysql、Redis等数据库存储内容画像,并基于内容画像和用户行为形成用户画像,在此基础之上建立基于画像的推荐系统。目前业界最主流的推荐系统使用 “多路召回 + 精排” 的方式,本项目中,带你掌握这种工业界最流行的推荐方式,你将使用MF、双塔等深度网络进算法对用户和物品进行表达,并基于ANN检索的方式实现召回,最后使用精排,对每个候选物品进行打分并排序,最后按照得分对用户进行物品展示。目前业界有个趋势:“ 将图方法引入推荐系统 ”,那么具体要如何操作呢,有哪些图的推荐算法是目前业界比较流行的?这些方法是如何嵌入到推荐系统中的?哪些方法是基于用户行为的?哪些方法是同时引入先验的知识图谱信息与用户行为的?本项目带你掌握这些图方法,基于图方法对用户进行兴趣建模,从而实现召回目的;在精排打分阶段,目前业界各大厂也已经由传统模型全面替换成深度网络及其各种变种了,本项目将在排序阶段带你掌握深度网络的排序玩儿法。目前业界流行的 “ 召回 + 精排 ” 模式的推荐方式有没有弊端呢?仔细想想,如果只基于这种方式来为用户展示物品,很多时候模型很难及时响应用户的实时交互需求,在本项目中,将带你实现推荐领域的实时交互策略、以及热点文章推荐的实时交互技术;让你了解如何计算实时收益、实现实时画像、增加推荐系统的实时交互性。在深度学习盛行的时代,经典的协同过滤方法是否还在各大公司的推荐引擎中使用呢?答案是肯定的,协同算法在推荐领域中有这不可磨灭的基因,作为分发和传播能力极强的方法,至今,协同过滤方法仍然在工业界有这广泛的应用。此案例中,同学们将亲手实践协同算法的威力。6. 基于NLP技术、Redis构建与存储内容画像用户画像在推荐领域有着至关重要的作用,主流的协同以及今天大火的深度召回方法,如双塔、YouToBe召回方法等的情况下,基于用户画像的召回方法仍然适用,因其极具可控性与解释性,推荐领域,因其有这天然的业务性,导致推荐系统对可解释性要求极高,当出现推荐的bad case时,基于用户画像的召回策略是查找bad case的重要手段。推荐业务领域常常有如下场景,相关推荐、猜你还喜欢等,熟悉吧?背后支持的算法和系统策略逻辑是什么呢?答案就在此案例中,类似的相关推荐场景,即为:根据现有物品推荐另一相关的物品或者商品,借助于用户行为与word2vec思路,将item Embedding引入此场景,并适当引入side info信息来做商品的相关推荐方法,此案例将为你揭晓其中的秘密。MF(矩阵分解)算法作为推荐算法经典代表作之一,其是最早体现出Embedding泛化扩展思想的雏形;之后,FM(因子分解机)算法在MF(矩阵分解)基础之上发扬光大,将Embedding思想进一步引入传统的机器学习做推荐,FM算法看成推荐领域的万金油,召回、粗排、精排均可用FM实现,在深度学习上线资源较困难的情况下,可视为推荐领域的baseline的不二法门,此案例中,你将亲自感受FM算法的魅力。推荐算法本质上就是在解决两个问题:记忆和泛化,传统的LR等模型,将大量的ID类稀疏特征直接喂给模型,再由广义线性模型直接学习这些ID类特征的权重,本质上就是模型对特征的简单粗暴的记忆,因此,泛化扩展性得不到保证,从未出现过的特征(如很重要的交叉特征等),模型无法学习该特征权重,故特征的指征能力无法体现;因此,深度学习模型引入Embedding稠密向量概念,将不同特征之间的一部分共性抽象出,放入Embedding空间进行学习,这样的操作可以近乎看作是模糊查找,具有较强的泛化能力,但记忆性显然不如LR等模型,wide&&deep的提出是兼容记忆性与泛化性的考虑,在此基础上,后续的DeepFM等模型,也只是在wide端加强了模型对特征的显式交叉,但架构本质与wide&&deep模型是一样的。此案例就来带大家实操WDL方法。03 学习收获
1、掌握每一个核心技术点、学完之后在技术上可满足绝大部分推荐系统岗位的要求
2、深入理解每一个技术背后的算法细节和全部推导过程
3、通过大量案例的实战,达到学以致用的目的,并学习工业界一线的经验
4、紧跟技术的发展、走在时代的前沿
05 入学标准
理工科相关专业学生,或者IT从业者
具有良好的Python编程能力
机器学习基础(如线性回归、逻辑回归、SVM等)