1.导读
现在出现了很多大模型,大模型已经成为现在的主流研究方向,那么推荐模型是否也可以做成大模型呢?
本文作者从embedding角度,去探索了放大推荐模型的可行性和效果。如图1所示,在放大推荐模型的过程中,作者发现了embedding塌陷现象,这会影响模型的可扩展性。从图1a中可以发现,随着模型中embedding维度的放大,不同模型的性能或多或少都出现了下跌的情况,对embedding矩阵可视化后,可以发现,对于更大的embedding矩阵,其中很多值都非常小,这就是文中所述的塌陷现象。 本文做了一系列实验,有两个发现:
- 在推荐模型的特征交互中,低信息丰富度的field embedding会影响其他字段的信息丰富度,导致embedding矩阵塌陷,即和已经存在塌陷的embedding做交互会加剧后续产生的embedding的塌陷现象。
- 那由于上述情况,是不是限制特征交互就行了呢?限制特征交互虽然可以缓解塌陷现象,但是会影响模型的整体性能和泛化性。
实验方式和现象数据详见论文,这里不赘述,基于上述分析,本文提出一种简单有效的multi-embedding设计,设计多个embedding进行特征交互,缓解塌陷。
2.信息丰富度
简单介绍下这里的信息丰富度(Information Abundance,IA):如图1b所示,学习到的embedding矩阵近似为具有一些极小的奇异值的低秩矩阵。为了确定这种具有低秩趋势的矩阵的塌陷程度,先进行矩阵分解
通过奇异值来反应矩阵的信息丰富度,
,即绝对值的和除以元素绝对值的最大值。具有高信息丰富度的矩阵在向量空间中表现出平衡分布,因为它具有相似的奇异值。相反,具有低信息丰富度的矩阵表明,可以在不显著影响结果的情况下压缩与较小奇异值相对应的分量。
3.multi-embedding设计
multi-embedding的设计简单有效,结果如图7所示,这里以两个特征(N=2)为例,左边是原始方法,即分别得到各自的embedding然后做特征交互;右边是N=2的情况下为每个特征产出多个embedding,这里embedding个数也是2(M=2),然后分别做特征交互。
从上述两个发现中,可以得出特征交互还是需要保留的,但是需要降低embedding塌陷问题,作者这里借鉴多头注意力和分组卷积的思路,设计multi-embedding。直觉上理解是:单个embedding的交互方式是唯一的,多个embedding可以学习到不同的交互模式,那么即使其中有些交互是塌陷的,其他交互模式上的信息可以对整体有补充作用。需要注意的是在特征交互的时候需要考虑非线性性,如加入ReLU等。
4.结果
image.png
信息丰富度的对比