职场文秘网

首页 > 心得体会 > 学习材料 / 正文

基于微信服务的图书馆智能推荐方法研究

2023-03-29 20:15:12

张永会

(中国戏曲学院 图书馆,北京 100373)

随着智能手机的飞速发展,人们在沟通方式上更加依赖实时通信,微信在这样的时代背景下应运而生,微信不仅能够满足人们对信息交换实时性的要求,还提供视频、群聊等各种功能供用户建立社交关系[1]。微信自2011年推出以来,迅速在传播领域占据领先地位。《2021年微信数据报告》显示,平均每天微信活跃用户超过8亿人,与此同时,微信的月活跃用户也呈逐月上涨趋势。可见,微信的使用已成为大家不可分割的一部分[2]。如何利用微信公众平台功能结合推荐算法进行读者喜好图书推荐,对服务宣传进行拓展以及增强图书馆业务服务效果已经成为图书馆急需解决的问题。

秦健[3]研究了高校图书馆智能推荐系统,提出了基于信息可视化与数据挖掘图书推荐系统的算法;
林郎碟[4]采用“分割-整合”方法改进了Apriori算法;
李伟[5]提出了基于数据分块方法的关联规则改进算法;
刘雨声[6]研究了基于用户的协同过滤算法,提出评分矩阵填充算法,结合协同过滤算法进行有效推荐,从而有效提升了该类算法的推荐准确率。

本论述提出了一种改进的Pure CF-SVD算法的图书馆微信平台推荐系统,该系统能够照顾到不同目标用户的喜好,并为其推荐适合于各自喜好的电子资源,将算法系统和协同过滤算法的推荐系统进行对比实验,发现该方法在推荐信息的准确率和推荐覆盖率上均表现良好,为图书馆更好服务于读者群众提供了参考思路[7]。

由于教育信息化建设正在如火如荼的展开,图书的个性化推荐服务也将会是高校图书馆馆藏走向大众视野的重要手段,主要是为了提高馆藏图书资源的利用率[8-10]。那么在图书馆图书推送系统的相关研究中,基于个性化推荐的服务逐渐受到了诸多重视与推崇,不同国家的学者也陆续提出了各种算法推送模型,为图书馆用户提供智能图书推荐服务[11-12]。目前图书馆的图书推荐算法主要分为以下3种。

(1)以协同过滤算法为代表的基于模型的推荐算法,在1992年被首次提出,该算法将每个项目中不同用户的具体得分代入用户相似度公式进行计算,为目标用户找到最接近的兴趣点[13],然后进行推荐。该类算法的优点是可以高效地处理非结构化对象,缺点是存在数据稀疏问题[14]。

(2)以TF−IDF算法为代表的基于内容的推荐算法,该方法通过词频统计提取特征,建立兴趣模型。广泛使用的算法主要有神经网络算法、决策树算法和基于向量的表示法[15],该类算法的优点是用户的历史行为数据和用户的兴趣模型会同步更新,所以推荐的结果可解释性就很强,唯一的缺点是特征提取较为困难[16]。

(3)以Apriori算法为代表的关联规则的推荐算法,由Agrawal等人于1993年首先提出,主要体现事物之间的相关性[17],基本原理是从海量数据中找到不同项目之间的内在联系,即通过算法挖掘关联规则[18],该类推荐算法的优点主要是无需具有领域的知识以及较为容易发现项目间的关联,该算法的缺点是容易产生无效规则、灵活性差[19]。

Pure CF算法汇总的是所有行为对,即相似度推荐,如用户A和用户B都喜欢差不多的东西(item相似),用户B喜欢某样东西,但是用户A还没有喜欢,那么此时就将用户B喜欢的item推荐给用户A。考虑到图书馆微信智慧服务发展,采用内容推荐算法开发微信端的图书馆智能推荐系统,能够使系统针对不同人群喜好进行图书信息精准推荐[20],对于基于内容的推荐算法,分别提出了Pure CF与SVD评估,并且将其合并成一种混合算法Pure CF-SVD。

作为最流行的推荐算法之一,Pure CF推荐算法在信息推荐服务中得到了广泛应用,Pure CF算法的架构主要分为3个阶段。

(1)项表示:为每个元素提取特征属性,即描述结构化元素,该操作对应的处理称为内容分析;

(2)概要的文件学习:利用任意用户过去喜好的项特征数据,从而算法将学习该用户的喜好特征;

(3)推荐产生:通过比较第二步中获得的用户喜好特征,为该类用户推荐其一系列相关性最大的项即可。

文档表示常采用向量空间模型,这是向量模型的基 本 概 念。如 果 要 将 文 档[21]表 示 为 向 量(W1,W2,W3,...,Wn),在权重Wi的计算公式如下:

用户的兴趣模型包含任意m个词的兴趣模型用向量P(t1,t2,...,tm),以用户u和d的相似度计算方法如下:

其中,代表用户u感兴趣的模型向量,代表文档d向量,和是两个向量的模,·表示标量积算法推荐的信息来自与用户感兴趣的模型相似度高的书籍[22],采用了文档表示和向量空间模型相似度的计算可以更好的将用户喜好的信息传给模型,从而进行推荐。

联合算法中的SVD算法为Basic SVD,算法流程如下。

第一步,可以求得SSE在puk变量处的梯度大小:

其中,puk为读者借阅数据。利用求导链式法则,e2先对e求导再乘以e对puk的求导:

由于

其中,eui为图书喜好相似度,rui为图书相似度数据,qki为相似度系数,所以

如果将式6中括号内的表达式展开,与puk相关的元素只有puk和qki,其他与puk无关的元素推导等于0,所以推导结果为:

所以

为了让式8更简洁,令

得到:

则puk的更新式为

同样的方式可得到qki的更新式为

得到了更新式,现在开始来讨论这个更新要怎么进行。以下为解决方案:

计算所有已知分数的预测误差后,更新p和q。每计算完一个eui后立即对puk和qki进行更新。两者的区别在于批量梯度下降在下一次换代中只能运用这次换代的更新值,而当前样本在本次随机梯度下降迭代中使用的值可以是前一次样本的更新值。

有助于避免局部最优解这是随机性带来的好处,所以对于更新大多都倾向于使用随机梯度下降,结合使用以上两种算法后,可以将用户喜好的兴趣模型结合书籍相似度进行结合,同时由于SVD算法梯度下降特性,可有效避免局部最优解,故可较好的进行读者喜好书目信息推荐任务,以下是Pure CF-SVD算法的流程图,如图1所示。

图1 Pure CF-SVD算法的流程图

3.1 微信端推荐系统设计

图书馆智能推荐系统的核心模块是Hadop技术堆栈,同时MapReduce提供了数据结构投影机制,且将会对大数据进行查询。把已有的数据集加载到HCatalog中,然后通过基于内容推荐的推荐算法,根据用户的喜好把数据分别发送、传输到HBase模块,进行图书推荐下载、分析,Hadoop技术栈的基本路径如图2所示。

图2 Hadoop技术栈的基本路径

步骤1:利用系统查寻书名与指定日期范围内借阅该书名最多的用户ID,并显示在微信公众号平台;

步骤2:将采用Ambari模块进行配置Hadoop服务,同时执行系统中监控与管理模块,从而协调以及监控独立的Hadoop作业;

步骤3:采用系统内外不同平台(OPAC系统、教务管理系统等)的信息,将读者ID链接至个人网络邮件;

步骤4:根据系统中我的图书馆功能,能够利用帐号下载电子书资源,任意读者能够在当前学年下载3到10册电子书资源;

步骤5:结合读者在访问图书馆购买推荐系统时记录的相关信息,包括查询、借阅、下载等,系统将分析生成读者的个人属性和个性化偏好,然后系统会根据分析信息对比相关书籍的相似度,最后根据相似度来推荐书籍;
读者可以根据系统推荐的喜欢的内容,在微信端下载电子资源[23]。

图书馆推荐系统主要由图书馆用户数据、内容推荐算法、智能推送系统以及微信推送界面组成,同时结合馆藏信息资源库进行信息整合加工,从而完成推荐。该系统工作原理如图3所示,图中四类功能形成了一个闭环,功能之间相互调用,内容推荐算法根据用户浏览或者下载的内容进行内容推荐[24]。

图3 微信端图书馆图书推荐系统结构

3.2 数据集与对比实验

本论述通过作者所在地级市的某图书馆部门后台端选取了2019年10月到2021年10月两年间,共1 500名微信端读者的数据作为模型训练数据集,数据包括ISBN、书作者、书名、出版商、借阅时间、查看时间和用户专业等信息。按照8:2将其划分为训练集和测试集,整体数据集的前3列见表1所列。

表1 读者数据

其中读者借阅数据不同学科的占比如图4所示。

图4 读者借阅数据的各学科占比

从图4中可以看出,这所学校的学生借阅文学类书籍最多,其次是工程类书籍,旅游类占比最低,其余学科占比均相当,可见学生对文学类的书籍兴趣较大,工程类的书籍由于专业性较强,工科类的学生对此较为喜爱[25]。同一个读者数据集下,将本论述算法和协同过滤算法分别封装在IOS的微信端进行对比实验,主要探究二者的推荐准确率,信息覆盖率以及均方误差(Mean squared error),该3类指标是内容推荐领域的主流指标,可以量化的解释推荐的图书内容和读者喜好的具体关系,该3类指标包含了图书信息、用户推荐的信息、算法预测的推荐信息等,以上信息和算法训练过程结合密切,具有较好的解释性,推荐准确率的公式如式13。

其中,S为用户喜好的图书集合,S为算法推荐的图书集合,二者结合构成准确率,其中算法的信息覆盖率如式14。

其中,covi为单个手机终端为用户推荐的全部信息,为算法在单个手机终端为用户推荐的信息,n为用户数,同时引入了均方误差,采用该指标联合ACC共同确定推荐准确率。均方误差的表达式如式15。

其中,M为用户数,ym为读者真实需要的图书信息,ym为算法推送的预测出的用户感兴趣的图书信息,其对比试验结果见表2所列。

表2 对比试验结果

从对比试验的结果可知,本论述所提出的算法的准确率相比于协同过滤算法高8%,由于算法本身是基于项表示的,可以更好的覆盖输入信息,其信息覆盖率方面较协同过滤算法高了9%,均方误差方面本论述的算法较协同过滤算法低6%,其推送误差更小,Pure CFSVD更加适用于大体量数据情况下图书馆读者图书推荐的情况,由于硬件环境相同,故二者的运算速度并无太大差别[26]。

(1)本论述主要研究了目前图书馆图书推荐系统的具体情况,综述了当前图书馆主流图书推荐系统及相关算法的改进,为图书馆的智能推荐系统提供了算法思路。

(2)根据基于内容推荐算法工作原理,结合了读者数据设计了其算法流程架构,以及设计了基于微信端图书馆推荐算法系统架构,具体实现技术路线,最后介绍了其功能组成。

(3)在同一个数据集下,将Pure CF-SVD推荐算法和内容推荐算法进行对比试验,对比了其推荐准确率、推荐信息覆盖率和运算速度等指标,比较协同过滤算法,其内容的推荐准确率高了5%,信息覆盖率高了10%,故能够在数据体量较大的图书馆微信推荐系统中得以更好地应用。

猜你喜欢 准确率图书微信 乳腺超声检查诊断乳腺肿瘤的特异度及准确率分析健康之家(2021年19期)2021-05-23不同序列磁共振成像诊断脊柱损伤的临床准确率比较探讨医学食疗与健康(2021年27期)2021-05-132015—2017 年宁夏各天气预报参考产品质量检验分析农业科技与信息(2021年2期)2021-03-27图书推荐南风(2020年22期)2020-09-15欢迎来到图书借阅角小学生优秀作文(低年级)(2019年5期)2019-04-25高速公路车牌识别标识站准确率验证法中国交通信息化(2018年5期)2018-08-21班里有个图书角小学阅读指南·低年级版(2017年12期)2017-12-26微信中国信息化周报(2016年47期)2017-03-25微信中国信息化周报(2015年28期)2015-08-06微信中国信息化周报(2015年13期)2015-06-01

Tags: 图书馆   智能   方法  

搜索
网站分类
标签列表