Youtube DNN
- 《Deep Neural Networks for YouTube Recommendations》
- 创新点
- 降低训练规模
- 传统的基于二分类的推荐方法中,设用户总数为m,商品总数为n,则训练数据是mn条;YouTubeNet,我们将问题转变成大规模多分类问题,训练数据是用户数点击数,设平均点击数为k,则训练数据为m*k条,其中k<<n, 例如,假设实验平台中商品五十万 ,用户数两百万,每天用户的平均点击数(如,一百,一千)是远远小于五十万的商品数,训练数据大大降低,提升训练速度。
- 减少特征工程
- 传统的推荐方法中,我们总是避免不了要去构造商品的特征,如商品的热度,销量,点击数,收藏数,加购数,品牌,品类等商品特征,同时也躲不开去获取用户的特征,如年龄,性别,职业,最近一次的访问时间等用户特征。YouTubeNet,取消了商品特征的构造,根据商品的id,利用DNN自动学习商品的embedding特征。利用用户历史点击喜好来表达用户的特征。
Wide&Deep
- Wide模型与Deep模型的结合,目的是为了平衡记忆性和泛化性的结果
- tf实现https://blog.csdn.net/heyc861221/article/details/80131369
wide and deep 模型的核心思想是结合线性模型的记忆能力(memorization)和 DNN 模型的泛化能力(generalization),在训练过程中同时优化 2 个模型的参数,从而达到整体模型的预测能力最优。相比于 ensemble learning 中单个模型进行独立训练,模型的融合仅在最终做预测阶段进行,joint training 中模型的融合是在训练阶段进行的,单个模型的权重更新会受到 wide 端和 deep 端对模型训练误差的共同影响。
模型结构
wide model
* id feature: item_id, seller_id,学习已经出现过的商品,卖家在训练数据上的表现。
* id cross feature: user_id x item_id , user_id x seller_id
连续值统计特征是非常有用的特征,Google的模型是把embedding向量和统计特征放到同一个DNN网络中学习,但实验发现这样会削弱统计特征的作用。我们为统计特征专门又组建了一个包含2个隐层的网路,并且为了增强非线性效果,激活函数从RELU改为TanH/Sigmiod。
deep model
- 首先需要把离散特征(item_id,item_tag, user_id,user_tag,query_tag)embedding成连续特征。
- 将embedding后的向量作为DNN的输入。考虑到最终线上预测性能的问题,目前我们的DNN网络还比较简单,只有1到2个隐层。
整体模型使用三层全连接层用于sparse+dense特征表征学习,再用两层全连接层用于点击/购买与否分类的统一深度学习模型解决方案:
- 第一层为编码层,包含商品编码,店家编码,类目编码,品牌编码,搜索词编码和用户编码。
- 从第二层到第四层组成了“域间独立”的“行为编码网络”,其中第二层为针对稀疏编码特别优化过的全连接层( Sparse Inner Product Layer ),通过该层将压缩后的编码信息投影到16维的低维向量空间中,第三层和第四层均为普通全连接层,其输出维度分别为16和32。“行为编码网络”也可以被看做是针对域信息的二次编码,但是与第一层不同,这部分的最终输出是基于行为数据所训练出来的结果,具有行为上相似的商品或者用户的最终编码更相近的特性。
- 第五层为concat层,其作用是将不同域的信息拼接到一起。
- 第六层到第八层网络被称为“预测网络”,该部分由三层全连接组成,隐层输出分别为64,64和1。该部分的作用在于综合考虑不同域之间的信息后给出一个最终的排序分数。
- 最后,Softmax作为损失函数被用在训练过程中; 非线性响应函数被用在每一个全连接之后。
Online Update
双11当天数据分布会发生巨大变化,为了能更好的fit实时数据,我们将WDL的一部分参数做了在线实时训练。embeding层由于参数过多,并没有在线训练,其他模型参数都会在线学习更新。
deep端网络参数和wide端参数更新的策略有所不同,wide端是大规模稀疏特征,为了使训练结果有稀疏性,最好用FTRL来做更新。deep端都是稠密连续特征,使用的普通的SGD来做更新,学习率最好设置小一点。
和离线Batch training不同,Online learning会遇到一些特有的问题:
- 实时streaming样本分布不均匀
现象:线上环境比较复杂,不同来源的日志qps和延迟都不同,造成不同时间段样本分布不一样,甚至在短时间段内样本分布异常。比如整体一天下来正负例1:9,如果某类日志延迟了,短时间可能全是负例,或者全是正例。 解决:Pairwise sampling。Pv日志到了后不立即产出负样本,而是等点击到了后找到关联的pv,然后把正负样本一起产出,这样的话就能保证正负样本总是1:9 - 异步SGD更新造成模型不稳定
现象:权重学飘掉(非常大或者非常小),权重变化太大。解决:mini batch,一批样本梯度累加到一起,更新一次。
DCN
- deep & cross network
- 《Deep & Cross network for Ad Click Predictions》
DCN-M
改进版DCN,用于大规模排序系统的特征交叉学习
《DCN-M: Improved Deep & Cross Network for Feature Cross Learning in Web-scale Learning to Rank Systems》
DSSM(recall)
- CIKM2013
- Deep Structured Semantic Model 深度语义匹配模型
基于深度网络的语义模型- 核心思想是将query和doc映射到共同维度的语义空间中,通过最大化query和doc语义向量之间的余弦相似度,从而训练得到隐含语义模型,达到检索的目的
- 优点:DSSM 用字向量作为输入既可以减少切词的依赖,又可以提高模型的范化能力,因为每个汉字所能表达的语义是可以复用的。另一方面,传统的输入层是用 Embedding 的方式(如 Word2Vec 的词向量)或者主题模型的方式(如 LDA 的主题向量)来直接做词的映射,再把各个词的向量累加或者拼接起来,由于 Word2Vec 和 LDA 都是无监督的训练,这样会给整个模型引入误差,DSSM 采用统一的有监督训练,不需要在中间过程做无监督模型的映射,因此精准度会比较高。
- 缺点:上文提到 DSSM 采用词袋模型(BOW),因此丧失了语序信息和上下文信息。另一方面,DSSM 采用弱监督、端到端的模型,预测结果不可控。
序列化推荐
- 基于用户的行为序列建模产生的特征
- 动态序列是许多推荐系统的关键特征
- ICDM2018 | Self-Attentive Sequential Recommendation
- https://www.jianshu.com/p/a42db4856d1d
DIN
- Deep Interest Network 深度兴趣网络
- 通过引入Attention 机制计算用户历史行为序列与当前 Item 的相关程度,来刻画用户多样的兴趣分布
DIEN
- Deep Interest Evolution Network
- GRU单元
DSIN
- Deep Session Interest Network
- Bi-LSTM
MIMN
阿里巴巴提出的基于记忆网络的模型MIMN,实现了学习算法和服务系统的协同设计。MIMN是第一个对长度高达1000的序列用户行为数据进行建模的工业解决方案。然而,当用户行为序列的长度进一步增加(例如,增加10倍或更多)时,MIMN无法精确地捕捉对特定候选项的用户兴趣。这种挑战在以前提出的方法中普遍存在。
MIND Multi-Interest Network with Dynamic Routing
引入胶囊网络来生成多个用户兴趣向量
SIM
Search-based User Interest Modeling with Lifelong Sequential Behavior Data for Click-Through Rate Prediction
- 长序列用户行为数据进行建模方法
本文中,通过设计一种新的建模范式来解决这一问题,我们称之为基于搜索的兴趣模型(Search-Based Interest Model,SIM)。SIM算法通过两个级联搜索单元来提取用户兴趣:(i)通用搜索单元(General Search Unit,GSU),根据候选项的查询信息,从原始的及任意长的序列行为数据中进行搜索,得到与候选项相关的子用户行为序列(Sub User Behavior Sequential,SBS);(ii)精确搜索单元(Exact Search Unit,ESU),为候选项与SBS之间的精确关系建模。这种级联搜索范式使SIM能够在可伸缩性和准确性上更好地建模Life-Long序列行为数据。除了学习算法外,我们还介绍了如何在大规模工业系统中实现SIM的实践经验。自2019年以来,SIM已部署在阿里巴巴的展现广告系统中,带来了7.1%的CTR和4.4%的RPM提升,这对业务来说意义重大。SIM现在服务于我们真实系统中的主要流量,它对序列用户行为数据进行建模,最大长度可达54000,将SOTA提升到54倍。
SDM
Sequential Deep Matching Model for Online Large-scale Recommender Systemm
融合了长期偏好与短期偏好,分别对二者进行向量表示,然后利用long-short term gated fusion将长期兴趣向量与短期兴趣向量融合后,预测用户行为进行推荐。
MMoE(Multi-gate Mixture-of-Experts)
- 《Modeling Task Relationships in Multi-task Learning with Multi-gate Mixture-of-Experts》
- 多任务学习结构
AutoInt
AutoInt: Automatic Feature Interaction Learning via Self-Attentive Neural Networks
- 基于Multi-Head Self-Attention构造高阶特征
更多使用深度学习做推荐的论文
Deep Learning
论文总结了 2013 年以来,最近 33 篇深度学习应用于推荐系统领域的文章。按照内容相关,协同过滤,混合方法分别进行介绍,可以作为不错的索引。
论文链接 https://www.paperweekly.site/papers/1417
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/38875.html