Sequential Scenario-Specific Meta Learner for Online Recommendation
Introduction
冷启动是个长期存在的挑战对于一般的推荐场景来说。大多数推荐算法依赖于大量的观察数据,以及对于没什么联系的推荐算法产生不了足够好的效果。为了解决这个问题,文章使用了few-shot learning以及meta learning,提出了Scenario-specific Sequential Meta learner。元学习器可以产生一个一般的初始化模型通过整合许多预测任务的上下文信息同时模型可以有效适用于具体任务。
序列过程主要包括三个步骤:
- 元学习器自动初始化推荐器以对多数场景适用
- 利用灵活的更新 策略来微调参数
- 及时停止学习以避免过拟合
FrameWork
Recommender Network
Embedding Module:
与一般one-hot 向量的embedding方法相同。
Hidden Layer Module:
将user和item embedding concat后,送入多层感知机。
Output Module:
值得注意的是,embedding矩阵U和I是不会被学习的,也就是说在不同的场景embedding矩阵会被共享但是在具体场景学习中是保持固定的。
在具体场景的学习中,作者主要总结了三个挑战。
- 参数 如何被初始化?
- 参数 如何根据损失函数进行更新?
- 学习过程应该在何时停止?
参数初始化
利用全局初始值来对推荐参数进行初始化。利用 进行表示。合适的初始化可能在具体的场景表现的不够好但是可以快速的适应新的场景。
更新策略
一般的参数更新策略:
但是针对few-shot learning,不合适的学习率很容易导致糟糕的本地最优。因此更新策略如下:
通过下式计算:
以及LSTM相关的参数
早停止策略
以及LSTM相关的参数
元学习器的训练
与 并没有直接的关系,所以无法直接使用梯度下降来学习优化 。
因此使用一个对于损失下降的奖励函数来对 进行优化: