推荐系统技术栈-答案篇
6. YoutubeDNN
YoutubeDNN将推荐问题转为多分类问题,在预测next watch的情况下,每一个备选video都会是一个分类,那总的分类数就会特别大,使得softmax采样十分低效,怎么办?
作者采用负采样降低类别数目。这里的负采样指的是总类别可能有几千万,只选取其中100个类别进行softmax
在召回的serving中,为什么
新闻推荐实战
1. 数据分析
通过数据分析的过程, 我们目前可以得到以下几点重要的信息, 这个对于我们进行后面的特征制作和分析非常有帮助:
训练集和测试集的用户id没有重复,也就是测试集里面的用户模型是没有见过的
训练集中用户最少的点击文章数是2, 而测试集里面用户最少的点击文章数是1
用户对于文章存在重复点击的情况, 但这个都存在于训练集里面
同一用户的点击环境存在不唯一的情况,后面做这部分特征的时候可以采用统计特征
用户点击文章的次数有很大的区分度,后面可以根据这个制作衡量用户活跃度的特征
文章被用户点击的次数也有很大的区分度,后面可以根据这个制作衡量文章热度的特征
用户看的新闻,相关性是比较强的,所以往往我们判断用户是否对某篇文章感兴趣的时候, 在很大程度上会和他历史点击过的文章有关
用户点击的文章字数有比较大的区别, 这个可以反映用户对于文章字数的区别
用户点击过的文章主题也有很大的区别, 这个可以反映用户的主题偏好
不同用户点击文章的时间差也会有所区别, 这个可以反映用户对于文章时效性的偏好
所以根据上面的一些分析,可以更好的帮助我们后面做好特征工程, 充分挖掘数据的隐含信息。
推荐系统技术栈
王树森学习笔记
1. 推荐系统基本概念
1. Embedding
1. 召回
fun-rec ch2.1.1
1. ItemCF
介绍及实战
物品相似度的公式
得到物品相似度后如何预测用户对物品的喜爱程度?
如何对热门物品进行惩罚
什么时候适合用 UserCF,什么时候适合用 ItemCF?
协同过滤的缺点是什么?什么思路可以缓解?
2. Swing 算法
公式
解决什么问题
3. UserCF
公式
如何降低热门物品权重
可以做哪些离线运算?
有哪些缺点?
4. 算法评估
recall
precision
coverage(覆盖率)
4. 隐语义模型与矩阵分解
什么是隐式分解?什么是潜在因子?
矩阵分解算法
5. Airbnb 召回
介绍
训练 listing embedding 的 objective(四个)
如何引入 booked list 信息的?
如何解决新 list 的冷启动问题
如何解决数据稀疏问题?(没太看懂,可以再看看 Airbnb如何解决数据稀疏问题)
6. YouTubeDNN
YouTubeDNN
召回阶段:
训练目标是什么?or 训练 ...
无题
1. 粗排
2. 特征交叉
Factorized Machine(FM)
适用早起用线性回归、逻辑回归时的替换方案,现很多已过时
DCN
DCN介绍及代码
应用于召回和排序
交叉层即对每一层的输出都乘一个原始输入 X_0,随后加残差。DCN 主要用于增强特征组合的表达能力,同时不增加模型参数。
LHUC/ppNet
只能用于精排
Tip:说话者特征过的两个神经网络最后一层输出都是 sigmoid*2(为什么乘 2?王树森说是扩大或缩小语音信号)。
在推荐系统中,语音信号换成了物品特征,说话者特征换成用户特征。
SENet
对 m 个物品的 k 维特征向量做 SENet:
SENet 对每个特征向量做 avgpool,所以不同物品的特征向量维度大小可以是不一样的,他们 avgpool 的结果是一样的。
3. 行为序列
用户历史行为序列建模
DIN 模型
候选物品:eg. 粗排选出了 100 个物品,精排要从这 100 个中再选 10 个,精排要给这 100 个打分,那这 100 个就是候选物品
LastN 物品:用户历史最近交互过的 N 个物品
DIN 模型就是把平均替 ...
推荐系统-召回
1. 基于物品的协同过滤 ItemCF
先找到用户感兴趣的物品 ID,然后根据物品 ID 找和物品相似的其他物品 ID 。因此,进行在线召回需要维护用户 -》物品以及物品 -〉物品相似度索引。
下图方法计算物品相似度考虑了用户对物品的喜欢程度 like,若不考虑,可以直接计算交集数量/sqrt(w1 数量*w2 数量)
2. ItemCF 的变体 —Swing
ItemCF 存在小圈子问题。当某个小圈子群体(例如某个微信群)同时分享了两篇完全不相关的物品,会导致模型错误推荐。因此 Swing 旨在计算用户重合度来解决。
3. 基于用户的协同过滤 UserCF
计算用户相似度:计算两个用户所喜欢物品的重合度
4. 双塔模型
注意神经网络的位置,用于得到物品和用户的表征,然后计算表征相似度,由于可以做离线运算,因此适合做召回。得到用户和物品表征后经过神经网络得到相似度的模型往往用于排序。
负样本选取方式如下。其中曝光但是未被点击的样本适用于做排序的负样本,而不适用于召回,召回的目的是找到用户可能感兴趣的样本,而不一定是特别感兴趣的样本。
为什么离线存储物品向量,而线上计 ...
LLM分布式训练并行技术
DP、PP、TP总览
1. 数据并行
数据并行总结1
2. 流水线并行
流水线并行总览
1F1B-PipeDream
3. 张量并行
张量并行总览
1. 1D 张量并行
2. 多维张量并行
4. 序列并行
总览
Prompt Tuning
Prompt技术介绍,包括Prompt-Tuning、P-Tuning、LoRA...
CROSSFORMER: TRANSFORMER UTILIZING CROSSDIMENSION DEPENDENCY FOR MULTIVARIATE TIME SERIES FORECASTING
变量内与变量间attention,使用router降低变量间attention复杂度
LoRA: LOW-RANK ADAPTATION OF LARGE LANGUAGE MODELS
通过微调外接低秩矩阵来替代全量微调