论文背景
AutoRec - Autoencoders Meet Collaborative Filtering
WWW’15
作者:Suvash Sedhain, Aditya Krishna Menon, Scott Patrick Sanner, Lexing Xie
谷歌学术引用次数580(截至2021年2月4日)
关键词:Recommender Systems; Collaborative Filtering; Autoencoders
INTRODUCTION 引言
本文提出一种新的基于自动编码器范例的CF模型,思路来自于针对视觉和语音任务的深度神经网络模型。
和CF相比,具有表示和计算的优越性。
THE AUTOREC MODEL 模型
每个用户U={1,…,m}可表示为
r
(
i
)
=
(
R
u
1
,
.
.
.
,
R
u
n
)
∈
R
n
r^{(i)} = (R_{u1},...,R_{un})∈\mathbb{R}^n
r(i)=(Ru1,...,Run)∈Rn。
每个物品I={1,…,n}可表示为
r
(
i
)
=
(
R
1
i
,
.
.
.
,
R
m
i
)
∈
R
m
r^{(i)} = (R_{1i},...,R_{mi})∈\mathbb{R}^m
r(i)=(R1i,...,Rmi)∈Rm,评分矩阵R。
目标:设计一种基于物品(用户)的自动编码器,可以输入部分显式
r
(
i
)
r_{(i)}
r(i)(
r
(
u
)
r_{(u)}
r(u)),将其映射到低维潜在空间,然后在输出空间重建
r
(
i
)
r_{(i)}
r(i)(
r
(
u
)
r_{(u)}
r(u))来预测缺失的评分用于推荐。
自动编码器解决
m
i
n
θ
∑
r
∈
S
∣
∣
r
−
h
(
r
;
θ
)
∣
∣
2
2
min_{\theta}\sum_{r∈S}||r - h(r;\theta)||^2_2
minθr∈S∑∣∣r−h(r;θ)∣∣22
h
(
r
;
θ
)
h(r;\theta)
h(r;θ)是输入r的重构
h
(
r
;
θ
)
=
f
(
W
⋅
g
(
V
r
+
μ
)
+
b
)
h(r;\theta) = f(W · g(Vr + μ) + b)
h(r;θ)=f(W⋅g(Vr+μ)+b)
f、g是激活函数。
θ
=
{
W
,
V
,
μ
,
b
}
\theta = \{W, V, μ, b\}
θ={W,V,μ,b}
W
∈
R
d
×
k
W∈\mathbb{R}^{d×k}
W∈Rd×k,
V
∈
R
k
×
d
V∈\mathbb{R}^{k×d}
V∈Rk×d,
μ
∈
R
k
μ∈\mathbb{R}^k
μ∈Rk,
b
∈
R
d
b∈\mathbb{R}^d
b∈Rd
该目标对应于具有单个k维隐藏层的自连接神经网络。使用反向传播来学习参数θ。
基于物品的AutoRec模型I-AutoRec
r
(
i
)
i
=
1
n
{r^{(i)}}^n_{i=1}
r(i)i=1n
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-8PugB0Fx-1634386976573)(\images\Paper-AutoRec-Itembased.png)]
两点改变:
- 每个 r ( i ) r^{(i)} r(i)通过反向传播更新和输入有关的权重得到,这在矩阵分解和RBM策略中常用。
- 设计了学习参数正则化防止过拟合。
I-AutoRec需要估计2mk + m + k个参数。
对于给定的已学习参数
θ
\theta
θ,对于用户u和物品i的预测评分为
R
^
u
i
=
(
h
(
r
(
i
)
;
θ
^
)
)
u
\hat{R}_{ui} = (h(r^{(i)};\hat{\theta}))_u
R^ui=(h(r(i);θ^))u
目标函数:
m
i
n
θ
∣
∣
r
(
i
)
−
h
(
r
(
i
)
;
θ
)
∣
∣
o
2
+
λ
2
⋅
(
∣
∣
W
∣
∣
F
2
+
∣
∣
V
∣
∣
F
2
)
min_{\theta}||r^{(i)}-h(r^{(i)};\theta)||^2_o + \frac{\lambda}{2}·(||W||^2_F + ||V||^2_F)
minθ∣∣r(i)−h(r(i);θ)∣∣o2+2λ⋅(∣∣W∣∣F2+∣∣V∣∣F2)
∣
∣
∣
∣
o
2
||||^2_o
∣∣∣∣o2代表只考虑可观测评分的贡献。
基于用户的AutoRec模型U-AutoRec
r
(
u
)
u
=
1
m
{r^{(u)}}^m_{u=1}
r(u)u=1m
和CF策略的区别:
对比基于RBM的CF模型(RBM-CF)
- RBM-CF是基于限制玻尔兹曼机的生成概率模型,AutoRec是一个基于自动编码器的判别模型。
- RBM-CF通过最大化似然log函数估计参数,AutoRec直接最小化RMSE。
- 训练RBM-CF需要使用对比散度,训练AutoRec需要相对更快的基于梯度的反向传播。
- RBM-CF只使用于离散评分,并对每个评分估计一个分散的参数集。对r个可能的评分,它使用了基于RBM的nkr或者mkr个参数用于用户(物品)。AutoRec与r无关,因此需要较少的参数。 较少的参数使AutoRec的内存占用量更少,更不容易过度拟合。
对比矩阵分解(MF)
MF学习线性潜在表示,AutoRec可以通过激活函数学习非线性潜在表示。
EXPERIMENTAL EVALUATION 实验评估
基线:RBM-CF, BiasedMF, LLORMA.
数据集:Movielens 1M, 10M 和Nerflix数据集
没有训练数据的测试集默认评分为3。
训练集:测试集=9:1
将训练集10%作为验证集。
重复划分步骤5次并记录平均RMSE。
每次实验95%在RMSE偶然的间隔在±0.003之间。
正则化参数λ∈{0.001, 0.01, 0.1, 1, 100, 1000}
潜在维度k∈{10, 20, 40, 80, 100, 200, 300, 400, 500}
三种实验
- 和RBM对比
- 激活函数选取对比
- 隐藏单元k的数量
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-8U7Lw2Fr-1634386976581)(\images\Paper-AutoRec-k.png)] - 基线性能对比
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Xg9TrHC3-1634386976592)(\images\Paper-AutoRec-baselines.png)] - 深度扩展对Auto的帮助
代码
https://github.com/mesuvash/NNRec
总结
AutoRec是最简单的深度学习推荐系统。
它是一种单隐层神经网络推荐模型,将自动编码器与协同过滤相结合。