0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

关于深度神经网络的个性化推荐系统研究

电子工程师 来源:电子技术应用第1期 作者:字云飞 李业丽 孙 2021-04-26 18:08 次阅读

摘要:深度神经网络由于结构类似于生物神经网络,因此拥有高效、精准抽取信息深层隐含特征的能力和能够学习多层的抽象特征表示,且能够对跨域、多源、异质的内容信息进行学习等优势。提出了一种基于多用户-项目结合深度神经网络抽取特征、自学习等优势实现信息个性化推荐的模型,该模型通过对输入多源异构数据特征进行深度神经网络学习、抽取,再融合协同过滤中的广泛个性化产生候选集。

然后通过二次模型学习产生排序集,实现精准、实时、个性化推荐。通过真实数据集对模型评估实验,实验结果表明,该模型能够很好地学习、抽取用户隐特征,并且能够一定程度上解决传统推荐系统稀疏性、新物品等问题,同时实现了更加精准、实时、个性化的推荐。

0 引言

近几年,深度学习人工智能机器学习中取得了飞跃式的突破,特别是在语音识别和图像识别等领域[1-3]。其中,深度神经网络由于结构类似于生物神经网络,因此拥有高效、精准抽取信息深层隐含特征的能力和能够学习多层的抽象特征表示,且能够对跨域、多源、异质的内容信息进行学习等优势,可以一定程度上处理推荐系统稀疏性、新物品、可扩张性等问题,这为推荐系统解决固有问题带来了新的机遇。

本文提出了基于深度神经网络结合多用户-项目、协同过滤的推荐模型(Multi-View-Collaborative Filtering integrating Deep Neural Network,MV-CFiDNN)[4-6],基于深度神经网络理论,提取用户、项目信息的深层隐含特征并自学习、优化提取模型,最后结合多用户-项目、协同过滤(Collaborative Filtering)提供广泛的个性化推荐。

1 深度神经网络推荐模型

基于深度学习的推荐系统通过将用户和项目的各类原始数据信息提供给输入层,在隐含层通过神经网络学习模型进行用户、项目的隐特征学习及抽取,最后通过学习隐表示实现用户、项目推荐[7-8]。基于深度神经网络框架的两次自学习并结合协同过滤的CFiDNN框架如图1所示。CFiDNN框架两大核心为:候选生成网络融合协同过滤与排名网络结合协同过滤。

6368280191179453139748189.gif

其中,候选集产生以用户在浏览历史记录中的提取特征作为输入信息,然后基于多源数据库检索到与用户相关的一个数据集,这一数据集就是候选集。这部分候选集通过协同过滤(CF)实现广泛个性化。再通过用户、项目的多类特征源学习计算相似性,实现最小排名集,最后基于协同过滤实现推荐。

1.1 候选集生成模块

对于候选集生成,首先,将用户浏览及搜索项目等历史记录信息映射为向量,然后对其求平均值获取定长表示;并且,输入用户地理信息特征值优化个性化推荐效果,二值性和连续性特征值通过归一化得到[0,1]范围。其次,把所有输入特征值拼接到同一个向量,并且把拼接后的向量输予激活函数处理。最后,通过神经网络训练输给Softmax进行分类,通过训练的特征与源项目进行相似度计算,获取相似度最高的N个项目作为候选模块中的候选集,图2为候选生成结构图。

6368280193824759606409352.gif

基于生成的候选集协同过滤提供广泛的个性化,组合基于用户-项目相关度评价实现精准、实时、个性化推荐。

候选集生成部分是基于多源异构数据库中学习选择与用户相关度较高的项目,对于预测用户U,其浏览某一个信息的概率为:

6368280196554441123475868.gif

其中,U是用户特征值,V表示多源异构数据库,vi表示数据库中第i个项目的特征值,U与vi向量拥有相等长度,它两通过点积在隐层全连接实现。

1.2 排序生成模块

排序生成结构与候选生成结构类似,区别在于排序生成是对候选生成集升级细致分类排序。与传统排序抽取特征值类似,神经网络排序也是通过拼接大量用户、项目相关特征值(文本ID、浏览时长等)。特征值的处理与候选生成类似,都基于向量化,区别在于排序生成网络最后通过加权逻辑回归训练,给前期产生的候选集再评分,评分较高的K个项目返回给用户或通过协同过滤实现个性化推荐[8-10]。图3为排序生成结构图。

6368280200296619596060058.gif

设定部分Softmax分类过程:首先,对于候选生成集或排序生成列表的训练过程,通过对负样本类别采用实际类别计算将数量减小到数千;其次,在推荐阶段,不计Softmax归一化,将项目评分转化为点积空间的最近邻寻找或协同过滤根据相关度计算;最后,选取与用户U相关度最高的K项作为候选集或排序列表,然后通过协同过滤个性化推荐,把信息推荐给用户。

1.3 多用户—项目模型

基于多用户、多项目的多源异构特征结合两次深度神经网络学习,从而实现个性化推荐。其实现思想为:首先,将原始特征值向量化后映射为用户、项目两个通道;然后利用深度神经网络模型把用户、项目信息向量映射到一个隐空间;最后,通过评估相似度(如余弦相似度法)把隐空间的用户、项目进行相关度等排名、匹配,从而实现精准、个性化推荐。图4为多用户-项目DNN(Deep Neural Network)模型结构[11-12]。

6368280206875933185811440.gif

在用户视角,利用其浏览历史、搜索(Search tokens)、位置信息、二值性(登录与否、性别)和连续性(年龄)、观看时长等作为源特征值输入xu,然后通过深度神经网络学习模型学习输出隐表示yu。在项目视角,利用项目的描述、标签、类型等作为源特征值输入xi,通过深度神经网络学习模型学习输出隐表示yi。
其中模型拥有多个用户、项目,分别为m、N。用户视角DNN模型为fu(xu,wu),第i个项目视角DNN模型为fi(xi,wi)。若拥有M个样本{(xu,j,xa,j)},0≤j≤M,(xu,j,xa,j)是用户u与项目a的交互,利用用户、项目的拟合交互记录进行调参学习:

6368280209539101608675854.gif

通过模型训练、学习之后获得的用户隐表示yu与项目隐表示yi,利用在隐空间中计算用户与项目的相关度、排名,选择相关度排序较高的k项目以及源数据库协同过滤实现精准、个性化推荐。

1.4 特征值向量化

特征值向量化是通过词组嵌入,将特制文本映射到w维空间向量。首先,把用户、项目所有相关联特征值分别合并,并对特征值量化为评分数据然后求其平均值,即对多源异构原始数据进行评分式数据处理及归一化。

(1)用户特征数据为:

6368280239626207863540807.gif

6368280241284014346763766.gif

1.5 全连接层

全连接层(隐层)输入数据为用户、项目源特征值向量化后的值,设隐含层共m个神经元,通过隐含层ReLU激活函数处理后,获得向量ui,就是用户useri隐特征值,同理,项目itemj的隐特征值向量为vj,计算过程如下:

6368280246213875338525932.gif

1.6 矩阵分解

6368280248305000174734569.gif

最后,利用Adam深度学习优化方式对预测与真实评分进行拟合[13],对于一些拥有评分的项目,使预测最大可能接近真实,由此学习推荐,对新物品实现个性化推荐(未评分项目预测真实评分无限接近预测值)。

6368280250241281158428736.gif

2 实验仿真及分析

2.1 实验环境

算法性能分析的实验环境以Windows Server2012 R2操作系统为实验支撑,相关配置为:Intel Xeon Silver 4116 CPU处理器编程语言Python,128 GB内存,双GPU。编译环境在Anaconda的Jupyter Notebook中实现并采用MATLAB进行仿真。

2.2 数据集合

本文通过2个真实、实时数据集,对深度神经网络融合协同过滤推荐模型进行评估,数据集分别为Amazon Movies and TV(AMT)评论评分与Amazon Clothing(AC)视频评论、评分。数据包括用户ID、物品ID及用户评论、评分。评分值为1~5,值越大用户喜好度越高。同时,实验数据按需求进行训练集TrainSet与测验集TestSet划分,且二者没有交集。

2.3 评价标准

本文提出的深度神经网络融合协同过滤推荐模型通过用户与项目的各类历史记录中抽取隐特征,然后对特征值进行学习预判、排序。因此本文应用均方根误差(RMSE)作为评价此模型的指标,通过学习特征模型与真实特征计算偏差,并求平方,然后与预测数据量N做比值平方根,计算公式如下:

6368280254644490511165444.gif

2.4 实验对比

实验通过3个有效模型进行比较,分别为Probabilistic Matrix Factorization(PMF)、LibMF和DNNMF。

2.5 执行时间对比分析

深度神经网络(DNN)推荐算法与传统协同过滤(CF)运行时间对比:实验处理数据为AMT、AC真实数据,大小为1.88 GB。深度神经网络输入节点为1 024个,隐含层18个,输出节点1 024个,Spark集群节点为3,比较深度神经网络训练与传统协同过滤处理数据集的耗时。实验结果如图5所示,其中user表示用户测试数据集耗时,item表示商品测试数据集耗时。显然,DNN执行效率更高。

6368280257433859417838196.gif

2.6 实验结果与分析

实验在2个真实数据集下通过本文提出的MV-CFi-DNN模型进行计算评估,同时用RMSE来对模型进行评估预测,在相同实验环境与同一数据前提下,将MV-CFi-DNN与PMF、LibMF做比较分析。

参数设置为:用户、项目特征值权重分别为α=1,β=0.5,MV-CFiDNN模型学习率为lr=0.000 65,用户、项目隐特征正则化为λuser=λitem=λ,深度神经网络神经元数为1 026个。

为了将MV-CFiDNN模型与PMF、LibMF模型对比,把2个真实数据集随机分为80%的TrainSet与20%的TestSet,且两者没有交集,同时把TestSet中的20%数据集随机用于验证,用来调整模型参数。

从图6可知,通过在2个真实数据集中测试后,PMF、LibMF的RMSE值相差不大,但与MV-CFiDNN模型的RMSE值有一定差异,表明深度神经网络融合多用户-项目、协同过滤模型对于特征值抽取有很好效果。通过实验结果可以看出,本文提出的深度神经网络融合多用户-项目协同过滤模型(MV-CFiDNN)的RMSE值与PMF、LibMF模型比较,都有下降,说明MV-CFiDNN模型能够解决传统算法模型的稀疏性、新物品等问题。

6368280265737090199814601.gif

3 结束语

本文通过深度神经网络融合协同过滤,提出了MV-CFiDNN模型,该模型首先对原数据库进行深度神经网络结合协同过滤个性化进行学习、提取特征值然后生成候选集,再对候选集进行二次学习、提取等生成排序集。产生候选集与排序集过程的深度神经网络学习方法包括输入层、隐含层及输出层,其中输入层是对输入特征值进行向量化后与用户、项目权重内积传输给隐含层,隐含层根据接收到的值进行调参、重置等神经网络学习,然后学习、提取的特征值传递给输出层。通过计算得到预测值与真实值拟合。

未来研究可以通过多种神经网络结合更多基础推荐模型,以便使系统实现智能且符合人为思想的精准、个性化推荐。

参考文献

[1] PENG Y,ZHU W,ZHAO Y,et al.Cross-media analysis and reasoning:advances and directions[J].Frontiers of Information Technology & Electronic Engineering,2017,18(1):44-57.

[2] COVINGTON P,ADAMS J,SARGIN E.Deep neural networks for youtube recommendations[C].Proceedings of the10th ACM Conference on Recommender Systems.ACM,2016:191-198.

[3] LI P,WANG Z,REN Z,et al.Neural rating regression with abstractive tips generation for recommendation[Z].2017.

[4] SONG Y,ELKAHKY A M,HE X.Multi-rate deep learning for temporal recommendation[C].Proceedings of the 39th International ACM SIGIR Conference on Research and Development in Information Retrieval.ACM,2016:909-912.

[5] VASILE F,SMIRNOVA E,CONNEAU A.Meta-Prod2Vec:product embeddings using side-information for recommendation[C].ACM Conference on Recommender Systems.ACM,2016:225-232.

[6] HSIEH C K,YANG L,CUI Y,et al.Collaborative metric learning[C].Proceedings of the 26th International Conference on World Wide Web.International World Wide Web Conferences Steering Committee,2017:193-201.

[7] WANG X,HE X,NIE L,et al.Item silk road: recommending items from information domains to social users[Z].2017.

[8] ROY S,GUNTUKU S C.Latent factor representations for cold-start video recommendation[C].Proceedings of the 10th ACM Conference on Recommender Systems.ACM,2016:99-106.

[9] ZHENG L,NOROOZI V,YU P S.Joint deep modeling of users and items using reviews for recommendation[C].Proceedings of the Tenth ACM International Conference on Web Search and Data Mining.ACM,2017:425-434.

[10] EBESU T,FANG Y.Neural citation network for context-aware citation recommendation[C].International ACM SIGIR Conference on Research and Development in Information Retrieval.ACM,2017:1093-1096.

[11] Zhang Qi,Wang Jiawen,Huang Haoran,et al.Hashtag recommendation for multimodal microblog using co-attention network[C].IJCAI2017,2017.

[12] WEI J,HE J,CHEN K,et al.Collaborative filtering and deep learning based recommendation system for cold start items[J].Expert Systems with Applications,2017,69:29-39.

[13] WANG S,WANG Y,TANG J,et al.What your images reveal: exploiting visual contents for point-of-interest recommendation[C].Proceedings of the 26th International Conference on World Wide Web.International World Wide Web Conferences Steering Committee,2017:391-400.

编辑:jq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 语音识别
    +关注

    关注

    37

    文章

    1635

    浏览量

    111831
  • 人工智能
    +关注

    关注

    1776

    文章

    43824

    浏览量

    230575
  • 机器学习
    +关注

    关注

    66

    文章

    8116

    浏览量

    130546
收藏 人收藏

    评论

    相关推荐

    详解深度学习、神经网络与卷积神经网络的应用

    处理技术也可以通过深度学习来获得更优异的效果,比如去噪、超分辨率和跟踪算法等。为了跟上时代的步伐,必须对深度学习与神经网络技术有所学习和研究。本文将介绍
    的头像 发表于 01-11 10:51 711次阅读
    详解<b class='flag-5'>深度</b>学习、<b class='flag-5'>神经网络</b>与卷积<b class='flag-5'>神经网络</b>的应用

    浅析深度神经网络压缩与加速技术

    深度神经网络深度学习的一种框架,它是一种具备至少一个隐层的神经网络。与浅层神经网络类似
    的头像 发表于 10-11 09:14 393次阅读
    浅析<b class='flag-5'>深度</b><b class='flag-5'>神经网络</b>压缩与加速技术

    《 AI加速器架构设计与实现》+第一章卷积神经网络观后感

    连接块是一种模块,通常用于深度卷积神经网络中,特别是在残差网络(Residual Network,ResNet)中广泛使用,也是我比较熟悉的。组卷积块是一种卷积神经网络中的模块,其主要
    发表于 09-11 20:34

    深度学习的神经网络架构解析

    感知器是所有神经网络中最基本的,也是更复杂的神经网络的基本组成部分。它只连接一个输入神经元和一个输出神经元。
    发表于 08-31 16:55 843次阅读
    <b class='flag-5'>深度</b>学习的<b class='flag-5'>神经网络</b>架构解析

    卷积神经网络深度神经网络的优缺点 卷积神经网络深度神经网络的区别

    深度神经网络是一种基于神经网络的机器学习算法,其主要特点是由多层神经元构成,可以根据数据自动调整神经元之间的权重,从而实现对大规模数据进行预
    发表于 08-21 17:07 2314次阅读

    卷积神经网络的介绍 什么是卷积神经网络算法

    深度学习算法。CNN模型最早被提出是为了处理图像,其模型结构中包含卷积层、池化层和全连接层等关键技术,经过多个卷积层和池化层的处理,CNN可以提取出图像中的特征信息,从而对图像进行分类。 一、卷积神经网络算法 卷积神经网络算法
    的头像 发表于 08-21 16:49 1425次阅读

    卷积神经网络的基本原理 卷积神经网络发展 卷积神经网络三大特点

    卷积神经网络的基本原理 卷积神经网络发展历程 卷积神经网络三大特点  卷积神经网络的基本原理 卷积神经网络(Convolutional Ne
    的头像 发表于 08-21 16:49 1435次阅读

    卷积神经网络计算公式

    神经网络计算公式 神经网络是一种类似于人脑的神经系统的计算模型,它是一种可以用来进行模式识别、分类、预测等任务的强大工具。在深度学习领域,深度
    的头像 发表于 08-21 16:49 1197次阅读

    卷积神经网络的工作原理 卷积神经网络通俗解释

    卷积神经网络的工作原理 卷积神经网络通俗解释  卷积神经网络(Convolutional Neural Network, CNN)是一种众所周知的深度学习算法,是人工智能领域中最受欢迎
    的头像 发表于 08-21 16:49 2734次阅读

    基于传感器和深度学习神经网络的血压监测系统

    这项研究开发了一款基于保形(conformal)柔性应变传感器阵列和深度学习神经网络的智能血压和心功能监测系统。该传感器具有高灵敏度、高线性度、快速响应与恢复、高各向同性等多种优点。
    发表于 08-20 09:53 576次阅读
    基于传感器和<b class='flag-5'>深度</b>学习<b class='flag-5'>神经网络</b>的血压监测<b class='flag-5'>系统</b>

    卷积神经网络原理:卷积神经网络模型和卷积神经网络算法

    卷积神经网络原理:卷积神经网络模型和卷积神经网络算法 卷积神经网络(Convolutional Neural Network,CNN)是一种基于深度
    的头像 发表于 08-17 16:30 913次阅读

    PyTorch教程10.3之深度递归神经网络

    电子发烧友网站提供《PyTorch教程10.3之深度递归神经网络.pdf》资料免费下载
    发表于 06-05 15:12 0次下载
    PyTorch教程10.3之<b class='flag-5'>深度</b>递归<b class='flag-5'>神经网络</b>

    浅析三种主流深度神经网络

    (MLP),卷积神经网络(CNN)和递归神经网络(RNN)。2、什么是深度神经网络机器学习是一门多领域交叉学科,专门研究计算机怎样模拟或实现
    的头像 发表于 05-17 09:59 1075次阅读
    浅析三种主流<b class='flag-5'>深度</b><b class='flag-5'>神经网络</b>

    浅析三种主流深度神经网络

    神经网络(MLP),卷积神经网络(CNN)和递归神经网络(RNN)。 2、什么是深度神经网络 机器学习是一门多领域交叉学科,专门
    的头像 发表于 05-15 14:20 608次阅读
    浅析三种主流<b class='flag-5'>深度</b><b class='flag-5'>神经网络</b>

    三个最流行神经网络

    在本文中,我们将了解深度神经网络的基础知识和三个最流行神经网络:多层神经网络(MLP),卷积神经网络(CNN)和递归
    发表于 05-15 14:19 1174次阅读
    三个最流行<b class='flag-5'>神经网络</b>