论文笔记: Deep Learning based Recommender System: A Survey and New Perspectives

  (聊两句,突然记起来以前一个学长说的看论文要能够把论文的亮点挖掘出来,合理的进行概括23333)

  传统的推荐系统方法获取的user-item关系并不能获取其中非线性以及非平凡的信息,获取非线性以及非平凡的信息恰恰是深度学习所具备的特点.论文对基于深度的学习的推荐系统方法进行了对比以及分类.文章的主要贡献有以下三点:

  > 对基于深度学习技术的推荐模型进行系统评价,并提出一种分类和组织当前工作的分类方案.

  > 提供现有技术的概述和总结

  > 我们讨论挑战和开放性问题,并确定本研究中的新趋势和未来方向,以分享愿景并拓展基于深度学习的推荐系统研究的视野。

OVERVIEW OF RECOMMENDER SYSTEMS AND DEEP LEARNING

  推荐系统算法:协同过滤算法,基于内容的推荐系统以及混合推荐系统(混合推荐系统是指整合两种或者多种推荐策略的推荐系统).前面的笔记都有大致的描述,这里就不展开.

>深度学习:旨在获取深层次,愈加抽象的数据表示.和文章有关一些深度学习方法如下:

  (1) Multilayer Perceptron(MLP)  多个隐层的前匮神经网络,感知器可以用任意的激活函数,MLP可以被表示为非线性变换的堆叠层,用来学习层次化的特征.

  (2) Autoencoder(AE) Autoencoder 一种无监督模型,用于在输出层重构输入数据.一般而言bottlenect layer(最中间的网络层也叫做瓶颈层)用来表示输入数据的显著性表示.(后续看情况要不要补充学习一下稀疏自编码器和变分自编码器)

  (3) Convolutional Neural Network(CNN) 卷积神经网络是一种特殊的前馈神经网络.包含了池化以及卷积操作.能获取输入数据的局部以及全局特征并且可以显著性的提高准确率以及效率. (看情况去补补基础的,之间看的大概都忘记了)

扫描二维码关注公众号,回复: 7078909 查看本文章

  (4) Restricted Boltzmann Machine (RBM) 受限波尔兹曼机是一个由可见层和隐藏层组成的双层神经网络。 它可以很容易地堆叠到深网。 此处受限制意味着可见层或隐藏层中没有层内通信。(看情况细化翻花书)

  (5) Neural Autoregressive Distribution Estimation (NADE) 神经自回归密度估计器是一个在自回归模型和前馈神经网络之上构建的无监督神经网络。 它是用于建模数据分布和密度的易处理且有效的估计器。(和(4)一样)

  (6) Adversarial Networks(AN) 对抗网络是一个生成神经网络,由判别器和生成器组成。 通过在极小极大游戏框架中相互竞争,同时训练两个神经网络.(GANS)

  (7) Attentional Models (AM)  注意力机制是基于输入序列(或图像)上的内容寻址操作的可靠的神经架构。 注意力机制通常无处不在,并在计算机视觉和自然语言处理领域被接受。 然而,它也是深度推荐系统研究的新兴趋势。(nlp中的self-attention)

  (8) Deep Reinforcement Learning (DRL)  强化学习是在一种反复试验的范例下运作的。 整个框架主要由以下组件组成:代理,环境,状态,动作和奖励。 深度神经网络和强化学习之间的结合形成了DRL,它在游戏和自动驾驶汽车等多个领域实现了人性化的表现。 深度神经网络使代理能够从原始数据中获取知识并导出高效的表示,而无需手工编写特征.

>深度学习为什么能够应用于推荐系统:

  (1) 深度学习端到端的稳定性(不是很明白)

  (2) 提供适合的对输入数据归纳偏差的方法,也就是说如果数据本身具有内部结构的话,深度学习相关的技术能够较好的发掘其内部的结构.例如RNN和CNN长期的利用图像以及人类语言内在的结构来达到预期的效果.类似地,会话或点击日志的顺序结构非常适合于循环/卷积模型提供的归纳偏差.

  (3) 深度学习的可组合性以及稳定的端到端学习方式比较使用与基于内容的推荐系统例如,为了处理评论,人们将不得不执行昂贵的预处理(例如,关键短语提取,主题建模等),而新的基于深度学习的方法能够端到端地摄取所有文本信息.

  (4) 在之考虑item-user交互的情况下,也就是最基础的协同过滤过程,user-item相似矩阵在之前的传统推荐系统算法中是用机器学习的方法训练出来,然而当交互过于复杂的时候,传统的方法并不能较好的表示,抽象复杂的数据是深度学习的强项.

>基于深度学习的推荐模型优势:

  (1) 非线性表示 传统的MF算法都是建立在线性模型的基础之上的,使用线性模型会限制模型的表达能力.而深度学习的激活函数例如sigmoid,relu,tanh都是非线性表示.非线性的表示能扩大模型的可表示空间,进而获取效果很好的模型.

  (2) 表示学习 深度学习方法能够有效的从输入数据中学习潜在的解释因素以及有用的表示形式.在基于内容的推荐算法中,深度学习这个特性能够避免繁琐的特征工程以及其能使推荐模型包括异构信息,比如文本,视频以及图像数据并存的数据集合.深度学习具备从各种来源学习的表现形式的潜力.

  (3) 序列模型 CNN以及RNN在NLP,语音识别领域有着重大的突破,他们在处理时间序列上有着很不错的成效.对顺序信号建模是挖掘用户行为和物品演变的时间动态的重要主题,深度学习在时间序列模型处理上的优势能够在推荐系统解决时效问题上得到充分发挥.

  (4) 灵活性 深度学习的一些热门框架都是基于模块化的开发模式.基于模块化的开发模式能够是工程的构建快速且有效.

>潜在的局限性

  (1) 可解释性 深度学习的表示为黑盒子,提供可解释性是深度学习(2017年)存在的问题(现在2019了不知道啥情况,后面有空去看看).目前(2017)而言,解释单个神经元还是一个问题,但是整体上的可解释性得到了软性的解决.基于深度学习的推荐方法在某种程度上不受影响

  (2) 数据要求 深度学习需要大量的数据来学习其丰富的参数以及深层次的特征.RS不太需要考虑这一点,或许大量的数据不是难事.

  (3) 大量的超参数调整问题  

DEEP LEARNING BASED RECOMMENDATION: STATE-OF-THE-ART

>基于深度学习方法的推荐系统分类

  (1) 基于神经结构的推荐系统 划分为八个子类别,分别为MLP, AE, CNNs, RNNs, RBM, NADE, AM, AN and DRL 为基础的推荐系统算法.这一类的推荐系统算法使用的深度学习方法都含有神经网络结构.

  (2) 基于混合模型的推荐系统 指使用多个深度学习技术的推荐系统方法

  分类的图示如下:

  

> MLP推荐算法

  主要为推荐算法提供非线性表达.核心思想为使用神经网络来计算用户以及物品之间的交互行为(相似度).Neural Network Matrix Factorization (NNMF)以及Neural Collaborative Filtering (NCF)是该思想具有代表性的方法.NCF的网络结构图如下所示:

  评分预测的函数如下所示:

  其中$s_{u}^{user}$以及$s_{i}^{item}$表示辅助信息,例如标签信息.f()表示MLP,$\theta$为网络训练的参数.在训练的时候可以使用交叉熵损失作为loss function.负采样方法能够减少未被观测实例的数量.

> Deep Factorization Machine

(未完待续)

猜你喜欢

转载自www.cnblogs.com/z1141000271/p/11399916.html