Sequential Scenario-Specific Meta Learner for Online Recommendation简析

Sequential Scenario-Specific Meta Learner for Online Recommendation

Introduction

​ 冷启动是个长期存在的挑战对于一般的推荐场景来说。大多数推荐算法依赖于大量的观察数据,以及对于没什么联系的推荐算法产生不了足够好的效果。为了解决这个问题,文章使用了few-shot learning以及meta learning,提出了Scenario-specific Sequential Meta learner。元学习器可以产生一个一般的初始化模型通过整合许多预测任务的上下文信息同时模型可以有效适用于具体任务。

​ 序列过程主要包括三个步骤:

  1. 元学习器自动初始化推荐器以对多数场景适用
  2. 利用灵活的更新 策略来微调参数
  3. 及时停止学习以避免过拟合

FrameWork

在这里插入图片描述

Recommender Network

Embedding Module:

与一般one-hot 向量的embedding方法相同。

e u = U x u , e i = I x i e_u=Ux_u, e_i=Ix_i

Hidden Layer Module:

将user和item embedding concat后,送入多层感知机。

e u i = [ e u , e i ] e_{ui}=[e_u,e_i]

在这里插入图片描述

在这里插入图片描述

Output Module:

z u i f c ( u , i ) z_{ui}\rightarrow f_c(u,i)

f c ( u , i ) = w T z u i f_c(u,i)=w^Tz_{ui}

值得注意的是,embedding矩阵U和I是不会被学习的,也就是说在不同的场景embedding矩阵会被共享但是在具体场景学习中是保持固定的。

s 2 M e t a s^2Meta

在具体场景的学习中,作者主要总结了三个挑战。

  1. 参数 θ c \theta_c 如何被初始化?
  2. 参数 θ c \theta_c 如何根据损失函数进行更新?
  3. 学习过程应该在何时停止?

参数初始化

利用全局初始值来对推荐参数进行初始化。利用 w R w_R 进行表示。合适的初始化可能在具体的场景表现的不够好但是可以快速的适应新的场景。

更新策略

一般的参数更新策略:

在这里插入图片描述

在这里插入图片描述

但是针对few-shot learning,不合适的学习率很容易导致糟糕的本地最优。因此更新策略如下:
在这里插入图片描述

β α \beta和\alpha 通过下式计算:

在这里插入图片描述

w u { w F , b F , W I , b I } w_u包括\{w_F,b_F,W_I,b_I\} 以及LSTM相关的参数

早停止策略

在这里插入图片描述

w s { W s , b s } w_s包括\{W_s,b_s\} 以及LSTM相关的参数

元学习器的训练

w s w_s θ c \theta_c 并没有直接的关系,所以无法直接使用梯度下降来学习优化 w s w_s

因此使用一个对于损失下降的奖励函数来对 w s w_s 进行优化:

在这里插入图片描述

在这里插入图片描述

Experiments

在这里插入图片描述

发布了151 篇原创文章 · 获赞 110 · 访问量 10万+

猜你喜欢

转载自blog.csdn.net/qq_35564813/article/details/92431097
今日推荐