一种基于堆栈降噪自编码器的图书推荐方法技术

技术编号:26731506 阅读:80 留言:0更新日期:2020-12-15 14:34
本发明专利技术公开了一种基于堆栈降噪自编码器的图书推荐方法,首先获得的图书训练集进行预处理,得到完整图书训练集;其次构建特征提取模块,SDAE模块对完整图书训练集中的数据进行特征转换和特征提取,获取表示该图书样本的用户特征向量、用户偏置向量、图书特征向量以及图书偏置向量;将这些向量作为深度学习模型的输入;最后通过随机梯度下降法和反向传播算法训练获得的深度学习模型,损失函数收敛训练结束后即得到最终完成的模型;最后将此模型应用到本校图书馆中,验证模型的有效性和可行性。本发明专利技术通过加入辅助信息和偏置向量,打破深度学习和传统推荐算法之间的壁垒,关联两者之间的关系,进一步提升推荐算法的性能。

【技术实现步骤摘要】
一种基于堆栈降噪自编码器的图书推荐方法
本专利技术属于基于深度学习的推荐
,具体涉及一种基于堆栈降噪自编码器的推荐技术研究,并且用于实现图书领域的智能推荐。
技术介绍
2016年的YouTube发表论文将深度学习应用于视频推荐取得了非常好的效果,自此之后,深度学习技术在推荐系统上的应用越来越广泛,各种论文、产业应用层出不穷。国际著名的推荐系统会议RecSys从2016开始专门组织关于深度学习的会议,深度学习在推荐圈中越来越受到重视。传统的推荐算法需要根据用户-项目评分矩阵进行推荐,这种方式不但特别依赖于评分矩阵的稀疏性而且推荐精度并不理想。相对于传统方法,堆栈降噪自动编码器(SDAE)的最大特点在于能够学习用户和项目的隐向量。一方面,为了解决冷启动和数据稀疏性等问题,利用辅助信息主要包括用户和图书的辅助信息,将其当作深度学习模型的输入,结果表明通过利用辅助信息能够有效提高推荐精度。另一方面,在探索深度网络中,在推荐算法领域中深度学习被提出以前,推荐精度的提高一直都是推荐领域一个重要的问题。通过改进SDAE的深度模型用来学习用户和项目的隐向量,本专利技术在此基础上结合用户和项目的评分矩阵R,结合辅助信息和偏置向量来学习用户和项目的隐向量矩阵U和V,进而预测出评分矩阵R中的缺失的值,并使用评分矩阵为用户进行图书推荐。
技术实现思路
本专利技术提供一种基于堆栈降噪自编码器的图书推荐方法,通过加入辅助信息和偏置向量,打破深度学习和传统推荐算法之间的壁垒,关联两者之间的关系,进一步提升推荐算法的性能。本专利技术提供的技术方案如下:一种基于堆栈降噪自编码器的图书推荐方法,具体包括以下几个步骤:步骤1:下载公共图书数据集Book-Crossing;步骤2:对所述步骤1准备好的图书数据集进行预处理,解决数据不一致、杂乱无章的问题,得到处理后的数据集;步骤3:定义超参数,本专利技术模型训练定义的超参数如下:e_epochs=100;num_layers=3;learning_rate=0.1;步骤4:使用深度学习SDAE提取用户和图书的数据特征,构建用户特征向量和图书特征向量;步骤5:构建两个堆栈降噪自编码器深度模型,使用所述步骤4得到的两个特征向量分别作为其深度模型的输入,构建深度学习模型,在模型训练过程种使用SGD随机梯度下降法和反向传播训练网络优化损失函数,逐层调整损失函数的权值,直到损失函数不再收敛,结束网络训练,得到权重准确的深度学习模型,使得用户和图书的特征向量更加精确;步骤6:将所述步骤5训练得到的用户和图书的特性向量,加入用户和图书的偏置,将偏置加入到用户和图书的特征向量,然后将这两个特征向量加入到矩阵分解对应的向量中,进行评分矩阵的填充,达到图书推荐的目的。步骤7:将本文提出的模型应用到本校图书馆中,为读者进行图书推荐。进一步的,所述步骤2中对图书数据进行预处理的方式如下:①对数据集中字段为空的数据进行填充,采用均值的方式;②对数据集中不需要的数据字段进行备份并删除;③针对数据集中数据字段和数据不匹配的情况,对数据进行人工处理;对经过所述①—③步骤处理后的图书训练集中的数据进行随机选取叠加,添加到原始图书数据集中,得到完整图书数据集。进一步的,所述步骤5中训练深度网络模型的过程如下:①将所述步骤2中完整图书数据集分为多个数据样本包;②将数据集中的用户和图书信息编码为向量,其编码解码的特征表达式为:f,g分别为自编码器的编码器、解码器的映射,求解完成后,由编码器输出的隐含层特征h,即编码特征可视为输入数据X的表征,其目标函数为:其中和R为最小化预测值和原始值,目标函数为两者的平方损失;③使用堆栈降噪自编码器分别训练用户数据特征和偏置信息、图书数据特征和偏置信息,使用随机梯度下降法和反向传播算法进行逐层训练,学习到每一层的权重矩阵W和偏置值b,分别得到用户特征向量、用户偏置向量、图书特征向量、图书偏置向量。进一步的,所述步骤6中用户和图书交互模型的过程如下:①从所述公式(1)中得到的用户、项目的隐式特征矩阵和偏置向量作为矩阵分解的输入矩阵,在堆栈降噪自编码器学习过程中采用随机梯度下降法来优化,最终在预测分值时通过该用户和项目的隐特征向量,经本文模型来实现预测分值,即:Rui=f(Pu,Qi|P,Q,θf)(3)其中θf是交互函数f()的模型参数,并且该函数代表的的自编码器,前一层隐藏层的结果作为后一层隐藏层的输入,P,Q表示用户评分矩阵、图书评分矩阵;②将训练后得到的偏置向量加入到模型中,即对公式(4)进行改变,所以我们模型的目标函数如下:其中μ是权衡参数,fregulation是正则化项,防止过度拟合,其中W是两个SDAE的权值矩阵,b是相应的偏执向量;③通过上述②可以得出用户的隐式特征向量,同理可得出图书的隐式特征向量:④通过上述过程可以得出用户和图书的隐式特征向量,同理,使用堆栈降噪自编码器得到用户偏置向量、图书偏置向量,然后将其作为矩阵分解的输入,进行矩阵填充,最后根据评分矩阵给用户进行图书推荐。与现有技术相比该专利技术的有益效果如下:本专利技术提供的一种基于堆栈降噪自编码器的图书推荐方法,通过加入辅助信息和偏置向量,打破深度学习和传统推荐算法之间的壁垒,关联两者之间的关系,进一步提升推荐算法的性能。附图说明图1是本专利技术的融合辅助信息的结构图。图2是融合偏置向量的结构图。图3是本文模型。图4是比较时所使用的基准模型。图5是本专利技术构造的深度学习模型与其他几种传统模型在Book-Crossing图书数据集上的RMSE效果比较图。图6是本专利技术构造的深度学习模型与其他几种传统模型在Book-Crossing图书数据集上的Recall效果比较图。图7是新用户推荐列表。图8是老用户推荐列表。具体实施方式下面结合具体的实施例,对本专利技术的技术方案进行清楚、完整的描述。显然,所描述的实施例仅仅是本专利技术的一部分实施例。基于本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。本专利技术是基于深度学习的图书推荐技术研究及在图书馆的应用,具体实施步骤如图2所示,其其中bu,bv分别为训练得到的用户偏置向量,图书偏置向量;以下以Book-Crossing图书数据集为实施例来说明本专利技术的方法。步骤1:图书数据集的准备在网上下载Book-Crossing图书数据集,是278858个用户对271379本书进行的评分,包括显式和隐式的评分。这些用户的年龄等人口统计学属性都以匿名的形式保存并供分析。主要包括三张表,分别为user表、book表、book-rating表,其中user表包含278858本文档来自技高网...

【技术保护点】
1.一种基于堆栈降噪自编码器的图书推荐方法,其特征在于,具体包括以下几个步骤:/n步骤1:下载公共图书数据集Book-Crossing;/n步骤2:对所述步骤1准备好的图书数据集进行预处理,解决数据不一致、杂乱无章的问题,得到处理后的数据集;/n步骤3:定义超参数,本专利技术模型训练定义的超参数如下:e_epochs=100;num_layers=3;learning_rate=0.1;/n步骤4:使用深度学习SDAE提取用户和图书的数据特征,构建用户特征向量和图书特征向量;/n步骤5:构建两个堆栈降噪自编码器深度模型,使用所述步骤4得到的两个特征向量分别作为其深度模型的输入,构建深度学习模型,在模型训练过程种使用SGD随机梯度下降法和反向传播训练网络优化损失函数,逐层调整损失函数的权值,直到损失函数不再收敛,结束网络训练,得到权重准确的深度学习模型,使得用户和图书的特征向量更加精确;/n步骤6:将所述步骤5训练得到的用户和图书的特性向量,加入用户和图书的偏置,将偏置加入到用户和图书的特征向量,然后将这两个特征向量加入到矩阵分解对应的向量中,进行评分矩阵的填充,达到图书推荐的目的;/n步骤7:将本文提出的模型应用到本校图书馆中,为读者进行图书推荐。/n...

【技术特征摘要】
1.一种基于堆栈降噪自编码器的图书推荐方法,其特征在于,具体包括以下几个步骤:
步骤1:下载公共图书数据集Book-Crossing;
步骤2:对所述步骤1准备好的图书数据集进行预处理,解决数据不一致、杂乱无章的问题,得到处理后的数据集;
步骤3:定义超参数,本发明模型训练定义的超参数如下:e_epochs=100;num_layers=3;learning_rate=0.1;
步骤4:使用深度学习SDAE提取用户和图书的数据特征,构建用户特征向量和图书特征向量;
步骤5:构建两个堆栈降噪自编码器深度模型,使用所述步骤4得到的两个特征向量分别作为其深度模型的输入,构建深度学习模型,在模型训练过程种使用SGD随机梯度下降法和反向传播训练网络优化损失函数,逐层调整损失函数的权值,直到损失函数不再收敛,结束网络训练,得到权重准确的深度学习模型,使得用户和图书的特征向量更加精确;
步骤6:将所述步骤5训练得到的用户和图书的特性向量,加入用户和图书的偏置,将偏置加入到用户和图书的特征向量,然后将这两个特征向量加入到矩阵分解对应的向量中,进行评分矩阵的填充,达到图书推荐的目的;
步骤7:将本文提出的模型应用到本校图书馆中,为读者进行图书推荐。


2.根据权利要求1所述的一种基于堆栈降噪自编码器的图书推荐方法,其特征在于,所述步骤2中对图书数据进行预处理的方式如下:
①对数据集中字段为空的数据进行填充,采用均值的方式;
②对数据集中不需要的数据字段进行备份并删除;
③针对数据集中数据字段和数据不匹配的情况,对数据进行人工处理;
对经过所述①—③步骤处理后的图书训练集中的数据进行随机选取叠加,添加到原始图书数据集中,得到完整图书数据集。


3.根据权利要求1所述的一种基于堆栈降噪自编码器的图书推荐方法,其特征在于,所述步骤5中训练深度网络模型的过程如下:
①将所述步骤2中完整图书数据集分为多个数据样本包...

【专利技术属性】
技术研发人员:薛涛赵雪青许挺娟高岭
申请(专利权)人:西安工程大学
类型:发明
国别省市:陕西;61

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1