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

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

    关注

    38

    文章

    1739

    浏览量

    112650
  • 人工智能
    +关注

    关注

    1791

    文章

    47244

    浏览量

    238381
  • 机器学习
    +关注

    关注

    66

    文章

    8414

    浏览量

    132612
收藏 人收藏

    评论

    相关推荐

    FPGA在深度神经网络中的应用

    随着人工智能技术的飞速发展,深度神经网络(Deep Neural Network, DNN)作为其核心算法之一,在图像识别、语音识别、自然语言处理等领域取得了显著成果。然而,传统的深度神经网络
    的头像 发表于 07-24 10:42 674次阅读

    深度神经网络在雷达系统中的应用

    深度神经网络(Deep Neural Networks,DNN)在雷达系统中的应用近年来取得了显著进展,为雷达信号处理、目标检测、跟踪以及识别等领域带来了革命性的变化。以下将详细探讨深度
    的头像 发表于 07-15 11:09 729次阅读

    残差网络深度神经网络

    残差网络(Residual Network,通常简称为ResNet) 是深度神经网络的一种 ,其独特的结构设计在解决深层网络训练中的梯度消失和梯度爆炸问题上取得了显著的突破,并因此成为
    的头像 发表于 07-11 18:13 1087次阅读

    简单认识深度神经网络

    深度神经网络(Deep Neural Networks, DNNs)作为机器学习领域中的一种重要技术,特别是在深度学习领域,已经取得了显著的成就。它们通过模拟人类大脑的处理方式,利用多层神经
    的头像 发表于 07-10 18:23 1017次阅读

    rnn是递归神经网络还是循环神经网络

    RNN(Recurrent Neural Network)是循环神经网络,而非递归神经网络。循环神经网络是一种具有时间序列特性的神经网络,能够处理序列数据,具有记忆功能。以下是
    的头像 发表于 07-05 09:52 577次阅读

    深度神经网络概述及其应用

    深度神经网络(Deep Neural Networks, DNNs)作为机器学习的一种复杂形式,是广义人工神经网络(Artificial Neural Networks, ANNs)的重要分支。它们
    的头像 发表于 07-04 16:08 1178次阅读

    深度神经网络与基本神经网络的区别

    在探讨深度神经网络(Deep Neural Networks, DNNs)与基本神经网络(通常指传统神经网络或前向神经网络)的区别时,我们需
    的头像 发表于 07-04 13:20 858次阅读

    深度神经网络的设计方法

    结构的构建,还包括激活函数的选择、优化算法的应用、正则技术的引入等多个方面。本文将从网络结构设计、关键组件选择、优化与正则策略、以及未来发展趋势四个方面详细探讨深度
    的头像 发表于 07-04 13:13 461次阅读

    反向传播神经网络和bp神经网络的区别

    反向传播神经网络(Backpropagation Neural Network,简称BP神经网络)是一种多层前馈神经网络,它通过反向传播算法来调整网络中的权重和偏置,以达到最小
    的头像 发表于 07-03 11:00 799次阅读

    bp神经网络深度神经网络

    BP神经网络(Backpropagation Neural Network)是一种常见的前馈神经网络,它使用反向传播算法来训练网络。虽然BP神经网络在某些方面与
    的头像 发表于 07-03 10:14 843次阅读

    卷积神经网络和bp神经网络的区别

    能力。随着深度学习技术的不断发展,神经网络已经成为人工智能领域的重要技术之一。卷积神经网络和BP神经
    的头像 发表于 07-02 14:24 3818次阅读

    深度神经网络模型cnn的基本概念、结构及原理

    深度神经网络模型CNN(Convolutional Neural Network)是一种广泛应用于图像识别、视频分析和自然语言处理等领域的深度学习模型。 引言 深度学习是近年来人工智能
    的头像 发表于 07-02 10:11 9729次阅读

    深度神经网络模型有哪些

    深度神经网络(Deep Neural Networks,DNNs)是一类具有多个隐藏层的神经网络,它们在许多领域取得了显著的成功,如计算机视觉、自然语言处理、语音识别等。以下是一些常见的深度
    的头像 发表于 07-02 10:00 1381次阅读

    利用深度循环神经网络对心电图降噪

    进行训练。我们还研究了使用合成数据 集如何影响网络性能。 我们建议使用深度循环去噪神经网络(DRDNN) 对心电图信号进行去噪。它们是一种深度
    发表于 05-15 14:42

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

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