中国人工智能学会通讯——深度学习与推荐系统 2.2 深度交互函数学习 (Learning Interaction Function with Deep Learning)

简介:

2.2 深度交互函数学习 (Learning Interaction Function with Deep Learning)

作为早期使用神经网络进行评分建模的代表性工作,文献[42]使用限制玻尔兹曼机(RBM)学习交互函数,但该方法的近似优化算法较为费时[28],且不易扩展到有辅助信息的情况。近期,我们在WWW2017上[6]提出了一个简单通用的基于神经网络的协同过滤框架(Neural Collaborative Filtering,NCF)。其基本思想是将用户和物品表示为隐空间的低维向量后,使用多层神经网络从数据中学习交互函数。图5展示了NCF的基本框架。

image

输入层是对用户和物品原始数据进行one-hot编码后的特征向量;在没有辅助信息时,原始数据可以仅为用户ID和物品ID。随后是表示层,以获得用户和物品的隐向量表示。然后用户通道和物品通道的隐向量一起输入到一个多层神经网络,用于学习用户和物品之间的交互函数;该交互网络的最后一层通过全连接层输出模型预测分数。NCF是个通用的框架——通过设计输入数据和每一层的操作,NCF可以表示出许多现有的推荐模型。图1展示了如何将矩阵分解模型表示为NCF的一个特例;在此基础上,如果将用户通道的输入数据表示为用户评分历史(去除当前交互物品i),该模型为FISM模型[21];如果将用户通道的输入表示为用户ID和评分历史的拼接向量,该模型则为SVD++模型[1];如果将用户通道和物品通道的输入设计为ID和属性,该模型则为SVDFeature模型[29]。

除表示现有推荐模型之外,多个新的基于NCF的深度学习模型被提出。例如,文献[6]提出NeuralMF,在隐含层组合矩阵分解模型和多层感知机模型,其中多层感知机使用与矩阵分解不同的表示层,用于建模用户和物品之间的非线性交互关系。该模型有较强的表示能力和泛化能力,在Top-K物品推荐中有较好的效果。近期,文献[23]提出了属性敏感的(attribute-aware)NCF变种,重点考虑不同属性之间的交互。图6展示了该模型。其中,主要不同于NCF的地方在于Pooling层的操作:

image

NCF默认采取average pooling,假设所有属性的表示是独立的;而该模型使用一种新的bilinear pooling方式,受启发于分解机模型[25],可以考虑ID与属性,以及所有属性对之间的交互。该模型在跨域的物品推荐(cross-domain recommendation)中展示了较好的效果。

近期,来自于谷歌和微软的研究人员也分别发布了基于特征的深度学习推荐系统[12, 20,44]。其中Wide&Deep[12]的Wide部分采用线性回归模型,Deep部分采用基于特征表示学习的多层感知机模型。Deep Crossing[20]用于在线广告的点击率预测,但该模型架构同样可以用于推荐系统中(需加入用户ID和物品ID作为输入以学习协同过滤效果)。图7描述了Deep Crossing的模型架构,其中与Wide&Deep的主要区别在于使用了残差网络的部件(residual component)[45],可以防止加深网络时梯度消失的问题。

image

值得一提的是,Wide&Deep和Deep Crossing在模型底层融合多个特征的表示向量时,均采用了向量拼接(concatenation)的操作。由于该操作不考虑向量之间的交互,使得模型完全依赖于之后的多层感知机学习特征之间的交互。虽然深度网络被证明有极强的函数学习能力,但其同样也难以训练,例如过拟合、退化和对初始化高度敏感等问题[45]。而且在我们最近实测中[27],基于深度学习的Wide&Deep和Deep Crossing的预测结果反而弱于浅层的分解机模型。为了解决这个问题,我们在最近的SIGIR 2017的工作中[27]提出了一个新的深度学习模型,在Wide&Deep基础上将底层的向量拼接操作替换为新提出的Bilinear Interaction Pooling操作

image

该操作考虑了所有特征表示向量之间的pair-wise交互关系。如果将pooling层直接输出到预测值,该模型则和分解机模型相同,因此称之为深度分解机模型(Neural Factorization Machine,NFM)。在上下文敏感的推荐任务中(context-aware recommendation),仅加深一层的NFM显著提高分解机7%,其准确度不仅超过了3层的Wide&Deep和10层的Deep Crossing模型,而且NFM架构相对简单,训练起来更容易更高效。在随后的工作中[41],我们进一步扩展了NFM模型,将注意力机制引入pooling操作中,用于学习每个特征交互的权重,改进了模型的表示能力和可解释性。

相关文章
|
14天前
|
机器学习/深度学习 人工智能 算法
猫狗宠物识别系统Python+TensorFlow+人工智能+深度学习+卷积网络算法
宠物识别系统使用Python和TensorFlow搭建卷积神经网络,基于37种常见猫狗数据集训练高精度模型,并保存为h5格式。通过Django框架搭建Web平台,用户上传宠物图片即可识别其名称,提供便捷的宠物识别服务。
171 55
|
1月前
|
机器学习/深度学习 人工智能 TensorFlow
人工智能浪潮下的自我修养:从Python编程入门到深度学习实践
【10月更文挑战第39天】本文旨在为初学者提供一条清晰的道路,从Python基础语法的掌握到深度学习领域的探索。我们将通过简明扼要的语言和实际代码示例,引导读者逐步构建起对人工智能技术的理解和应用能力。文章不仅涵盖Python编程的基础,还将深入探讨深度学习的核心概念、工具和实战技巧,帮助读者在AI的浪潮中找到自己的位置。
|
23天前
|
机器学习/深度学习 人工智能 算法
【宠物识别系统】Python+卷积神经网络算法+深度学习+人工智能+TensorFlow+图像识别
宠物识别系统,本系统使用Python作为主要开发语言,基于TensorFlow搭建卷积神经网络算法,并收集了37种常见的猫狗宠物种类数据集【'阿比西尼亚猫(Abyssinian)', '孟加拉猫(Bengal)', '暹罗猫(Birman)', '孟买猫(Bombay)', '英国短毛猫(British Shorthair)', '埃及猫(Egyptian Mau)', '缅因猫(Maine Coon)', '波斯猫(Persian)', '布偶猫(Ragdoll)', '俄罗斯蓝猫(Russian Blue)', '暹罗猫(Siamese)', '斯芬克斯猫(Sphynx)', '美国斗牛犬
129 29
【宠物识别系统】Python+卷积神经网络算法+深度学习+人工智能+TensorFlow+图像识别
|
1月前
|
机器学习/深度学习 人工智能 算法
基于Python深度学习的【垃圾识别系统】实现~TensorFlow+人工智能+算法网络
垃圾识别分类系统。本系统采用Python作为主要编程语言,通过收集了5种常见的垃圾数据集('塑料', '玻璃', '纸张', '纸板', '金属'),然后基于TensorFlow搭建卷积神经网络算法模型,通过对图像数据集进行多轮迭代训练,最后得到一个识别精度较高的模型文件。然后使用Django搭建Web网页端可视化操作界面,实现用户在网页端上传一张垃圾图片识别其名称。
84 0
基于Python深度学习的【垃圾识别系统】实现~TensorFlow+人工智能+算法网络
|
1月前
|
机器学习/深度学习 人工智能 算法
【手写数字识别】Python+深度学习+机器学习+人工智能+TensorFlow+算法模型
手写数字识别系统,使用Python作为主要开发语言,基于深度学习TensorFlow框架,搭建卷积神经网络算法。并通过对数据集进行训练,最后得到一个识别精度较高的模型。并基于Flask框架,开发网页端操作平台,实现用户上传一张图片识别其名称。
98 0
【手写数字识别】Python+深度学习+机器学习+人工智能+TensorFlow+算法模型
|
1月前
|
机器学习/深度学习 人工智能 算法
基于深度学习的【蔬菜识别】系统实现~Python+人工智能+TensorFlow+算法模型
蔬菜识别系统,本系统使用Python作为主要编程语言,通过收集了8种常见的蔬菜图像数据集('土豆', '大白菜', '大葱', '莲藕', '菠菜', '西红柿', '韭菜', '黄瓜'),然后基于TensorFlow搭建卷积神经网络算法模型,通过多轮迭代训练最后得到一个识别精度较高的模型文件。在使用Django开发web网页端操作界面,实现用户上传一张蔬菜图片识别其名称。
95 0
基于深度学习的【蔬菜识别】系统实现~Python+人工智能+TensorFlow+算法模型
|
1月前
|
人工智能 自然语言处理 搜索推荐
人工智能与教育:个性化学习的未来
【10月更文挑战第31天】在科技飞速发展的今天,人工智能(AI)正深刻改变教育领域,尤其是个性化学习的兴起。本文探讨了AI如何通过智能分析、个性化推荐、智能辅导和虚拟现实技术推动个性化学习,分析了其带来的机遇与挑战,并展望了未来的发展前景。
|
2月前
|
人工智能 搜索推荐 语音技术
人工智能与未来教育:重塑学习方式的双刃剑
在21世纪,人工智能(AI)技术正以前所未有的速度发展,深刻影响着社会的各个方面,其中包括教育领域。本文探讨了AI如何改变传统教育模式,提出其既带来积极影响也伴随着挑战的观点。通过分析具体案例和数据,文章旨在启发读者思考如何在保留人类教师不可替代价值的同时,有效利用AI技术优化教育体验。
|
1月前
|
机器学习/深度学习 人工智能 算法
【车辆车型识别】Python+卷积神经网络算法+深度学习+人工智能+TensorFlow+算法模型
车辆车型识别,使用Python作为主要编程语言,通过收集多种车辆车型图像数据集,然后基于TensorFlow搭建卷积网络算法模型,并对数据集进行训练,最后得到一个识别精度较高的模型文件。再基于Django搭建web网页端操作界面,实现用户上传一张车辆图片识别其类型。
88 0
【车辆车型识别】Python+卷积神经网络算法+深度学习+人工智能+TensorFlow+算法模型
|
1月前
|
机器学习/深度学习 传感器 人工智能
深度学习在人工智能中的最新进展
深度学习在人工智能中的最新进展

热门文章

最新文章