嘿,记得给“机器学习与推荐算法”添加星标
| 作者:YEN
| 单位:东北大学
| 研究方向:推荐系统、计算广告
本文分享一篇谷歌团队发表在KDD’21的推荐系统文章:不使用嵌入表的方式获得类别特征的表征用于推荐系统[1]。
本文结构组织如下:
背景
已有的类别特征嵌入方法
-
One-hot Full Embedding方法
One-hot Hash Embedding方法
其他Emb方法
提出的Deep Hash Embeddings (DHE)方法
-
Deep Hash Embeddings (DHE)结构
实验对比
背景
类别特征(用户ID/物品ID)的学习在推荐系统中扮演着重要的作用,标准的方式是为每个类别特征分配一个嵌入向量(embedding vector)。然而这种方式在推荐系统中存在以下几个挑战:
嵌入特征数量大(Huge vocabulary size):推荐系统通常包含几百万的用户ID/视频ID。
特征的动态的( Dynamic nature of input):推荐系统中经常会出现全新的用户ID/视频ID。
特征分布高度倾斜(Highly-skewed data distribution):推荐数据中低频特征的训练实例数量较少,因此对特征嵌入质量有显著影响。
这篇文章提出一个Deep Hash Embeddings (DHE)的方式来缓解以上问题。
已有的类别特征嵌入方法
One-hot Full Embedding方法
做法:这种方式把所有类别特征进行编号,假设共 个特征。每个特征 首先通过one-hot进行编码: ,其中 并且 ;接着通过一个可学习的线性变换矩阵(可以看作一层神经网络,但没有bias项)得到对应的嵌入表示: 。
优点:简单
缺点:embedding table随特征数量线性增长(即内存问题);无法处理新出现的特征
One-hot Hash Embedding方法
做法:为了解决One-hot Full Embedding中的内存问题,不少方法使用Hash函数的方式对类别特征进行映射,将原始的 维的one-hot特征编码映射为 纬的one-hot特征编码(