人工智能|推荐系统——工业界的推荐系统之召回
离散特征可以用Embedding Layers,连续特征可以归一化、分桶等处理。Swing额外考虑重合的⽤户是否来⾃⼀个⼩圈⼦,两个⽤户重合度⼤,则可能来⾃⼀个⼩圈⼦,权重降低。简单负样本可以是全体物品(考虑非均匀采样打压热门物品)或者Batch内负样本。⽤户兴趣动态变化,⽽物品特征相对稳定,事先存储物品向量𝐛,线上现算⽤户向量𝐚。困难负样本主要考虑被召回,但是被排序淘汰的样本。一个物品的两个
基于物品的协同过滤
⽤索引,离线计算量⼤,线上计算量⼩
Swing额外考虑重合的⽤户是否来⾃⼀个⼩圈⼦,两个⽤户重合度⼤,则可能来⾃⼀个⼩圈⼦,权重降低。
基于用户的协同过滤
同样是离线计算索引,在线召回的流程
离散特征处理
Embedding 层参数数量=向量维度× 类别数量
矩阵补充模型
矩阵补充模型有很多缺点,效果不好
训练好后线上召回
双塔模型
除了ID还要考虑一些离散特征、连续特征;离散特征可以用Embedding Layers,连续特征可以归一化、分桶等处理
训练方式主要有pointwise、pairwise、listwise
pointwise就是常规的分类的思想
pairwise希望拉开用户与正负样本的距离
listwise考虑更多的负样本
正样本的选择需要考虑冷门、热门物品
负样本可以是简单和困难样本的混合
简单负样本可以是全体物品(考虑非均匀采样打压热门物品)或者Batch内负样本
困难负样本主要考虑被召回,但是被排序淘汰的样本
一个常见的错误!
双塔模型的线上召回和更新
⽤户兴趣动态变化,⽽物品特征相对稳定,事先存储物品向量𝐛,线上现算⽤户向量𝐚
为了适应用户兴趣变化需要更新模型
双塔模型的问题
可以通过减去对数抽样概率来进行纠偏
自监督学习
一个物品的两个向量可以通过一些特征变换得到
训练模型
最终的损失函数包含两部分
Deep Retrieval 把物品表征为路径(path),线上查找⽤户最匹配的路径
其他召回通道
⽤户可能对附近、同城发⽣的事感兴趣
索引:GeoHash优质笔记列表(按时间倒排)
索引:城市优质笔记列表(按时间倒排)
关注作者召回
有交互的作者召回
相似作者召回
缓存召回,缓存⼤⼩固定,需要退场机制。
曝光过滤问题
Bloom filter 判断⼀个物品ID是否在已曝光的物品集合中
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)