推荐算法之AutoRec与Deep Crossing模型

前言

这一章节算是从传统的机器学习推荐模型转到深度学习的推荐模型中去了。在2016年, 随着微软的Deep Crossing, 谷歌的Wide&Deep以及FNN、PNN等一大批优秀的深度学习模型被提出, 推挤系统和计算广告领域全面进入了深度学习时代, 时至今日, 依然是主流。 在进入深度学习时代, 推荐模型主要有下面两个进展:

1、与传统的机器学习模型相比, 深度学习模型的表达能力更强, 能够挖掘更多数据中隐藏的模式
2、深度学习模型结构非常灵活, 能够根据业务场景和数据特点, 灵活调整模型结构, 使模型与应用场景完美契合

后面我也会继续更新一些深度学习的推荐模型,并且进行实战,使得大家原理+代码进行结合,更深一步的理解推荐系统。首先先放一张《深度学习推荐系统》上面的图片,用来梳理脉络:

这一篇文章是我的博客中关于推荐系统深度学习模型的第一篇,来整理两个比较简单的神经网络模型AutoRec和DeepCrossing模型, 这两个模型的进化方式是增加了深度神经网络的层数和结构复杂度。 前者是将深度学习的思想用于推荐系统的初步尝试, 后者是一次深度学习框架在推荐系统中的完整应用。我们会先从最简单的神经网络模型AutoRec开始, 介绍其相关原理和局限性, 这个模型2015年由澳大利亚国立大学提出, 是个单隐层的神经网络推荐模型,网络结构简单,非常适合深度学习推荐系统的入门模型,但由于比较简单, 表达能力不足, 并没有真正的被应用。 在2016年,微软基于ResNet的经典DNN结构, 提出了DeepCrossing模型, 该模型完整的解决了从特征工程、稀疏向量稠密化, 多层神经网络进行优化目标拟合等一系列深度学习在推荐系统中的应用问题, 为后面研究打下了良好的基础, 这个模型也是本篇内容的重点部分, 首先会介绍该模型的原理, 结构特点, 然后进行网络的复现, 完成一个点击率预测的任务。

一、AutoRec的结构及推荐原理

这是将自编码器的思想和协同过滤结合起来的一种神经网络推荐模型,原理也很简单,用一句话总结就是:利用协同过滤中的共现矩阵, 完成物品向量或者用户向量的自编码。 再利用自编码的结果得到用户对物品的预估评分, 进而进行的推荐排序。

第一个问题那么什么是共现矩阵,以及共现矩阵的含义,忘记的小伙伴可以参考我这篇文章,在这里我就不多做解释了。

第二个问题什么是自编码,以及如何完成自编码器的训练。自编码器就是指自己根据权重能够完成数据的自编码。假设数据向量是r那么将r进行自编码器的输入,得到的输出向量会尽可能地接近其本身。假设自编码器的重建函数为h ( r ; θ ) , 那么自编码器的目标函数:

 自编码器输出层的节点数与输入层相等,训练这个网络以期望得到近似恒等函数, 具体的模型图如下所示。

 其中这个自编码器的模型图也基本就是AutoRec的模型图了。AutoRec使用单隐层神经网络结构来解决重建函数的问题。 模型的结构图如下(该图来自《深度学习推荐系统》:

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值