解决content稀疏的问题,一般方法是使用stacked denoising autoencoder去学习item的distributed representation,输入是item content的词袋表示。这篇paper的做法是,结合SDAE以及user vector,一起来拟合user-item矩阵,这个时候的loss就是sdae的loss + user-item的loss,最小化这个loss就能完成相应的优化。
写这篇文章的时候其实还在思考为什么作者会这样做以及这个图怎么理解的?
首先提出几个问题:
1、AE(Auto Encoder)加入SD(stacked denoising)是什么意思呢?
2、⋋从u、v、w到n是什么意思?
3、Xo和Xc又该怎么理解?
左边的贝叶斯图的目的是通过内容生成V矩阵,用户信息生成u矩阵,然后通过v和u生成user-item的关联打分矩阵R。
矩阵Xc扮演的角色是SDAE干净的输入,X0作为加入了噪声的输入矩阵,X1至Xl表示sdae中间各层。SDAE的输出层是Xl,W+是W和b表示权重和偏执。
要注意的是前L/2 层网络扮演encoder,后L/2层网络扮演decoder。
未完待续
参考:
https://blog.csdn.net/juanjuan1314/article/details/70045762
https://blog.csdn.net/juanjuan1314/article/details/68484589--SDAE
网友评论