论文笔记《AutoRec: Autoencoders Meet Collaborative Filtering》

参考

参考以下资料

python代码复现
中文阅读笔记
b站解读教程

b站代码详解

总结


AutoRec利用自编码器具有非监督聚类的特性,能够在一定程度上还原压缩后的数据,把还原后的结果作为预测值。在数据稀疏的情况下,表现效果也比较差。但是提供了把深度学习应用在推荐系统上的一种思路。

拓展阅读

自编码器

以下内容源于知乎介绍自编码器

自编码器(Autoencoder,AE),是一种利用反向传播算法使得输出值近似于输入值的神经网络,它先将输入压缩成潜在空间表征,然后通过这种表征来重构输出。它由编码器和解码器两部分构成,分别用于压缩和重构。整个自编码器可以用函数g(f(x)) = r来描述,其中输出r与原始输入x相近。
主要应用于数据去噪和可视化降维。
代码示例如下:

input_size = 784
hidden_size = 64
output_size = 784

# x为输入层,size大小784
x = Input(shape=(input_size,))

# Encoder h为隐藏层,通过relu(x)来得到?size64
# Dense为全连接层 可参考 https://blog.csdn.net/orDream/article/details/106355491
h = Dense(hidden_size, activation='relu')(x)

# Decoder r为输出层 通过sigmoid(h)得到
r = Dense(output_size, activation='sigmoid')(h)

autoencoder = Model(input=x, output=r)
autoencoder.compile(optimizer='adam', loss='mse')

受限玻尔兹曼机(RBM,Restricted Boltzmann machine)

RBM在本文中作为一个SOTA方法用来对比,可参考机器之心RBM介绍
其特点为相邻层之间是相连的,但是同层之间的节点是不相连。
对于简单的前馈网络,RBM 节点起着自编码器的作用,除此之外,别无其它。
想继续深入了解,可以看从玻尔兹曼机到深度置信网络
区别和联系:Hopfield网络、BM(玻尔兹曼机)、退火算法、BP

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值