您好, 访客   登录/注册

基于机器学习算法的图书馆书目协同推荐系统

来源:用户上传      作者:

  摘  要: 为了向读者推荐更多感兴趣的书目,提高读者对图书馆书目推荐的满意程度,文中提出基于机器学习算法的图书馆书目协同推荐系统。依托系统整体架构设计和实时协同推荐模块设计,完成系统的硬件设计;通过书目间相似度的计算和数据库设计,完成系统的软件设计,实现图书馆书目协同推荐系统的设计。结果表明,基于机器学习算法的图书馆书目协同推荐系统相比于传统协同推荐系统,读者的满意程度提升了77%,读者可以阅览更多感兴趣的书目。
  关键词: 图书馆书目; 协同推荐; 系统设计; 机器学习算法; 满意程度; 对比验证
  中图分类号: TN911?34; UP181                  文献标识码: A                       文章编号: 1004?373X(2020)14?0180?03
  Library bibliographic collaborative recommendation system based on
  machine learning algorithm
  LIU Yan
  (Zhengzhou University of Light Industry, Zhengzhou 450000, China)
  Abstract: A library bibliographic collaborative recommendation system based on machine learning algorithm is proposed to recommend more interested books to readers and improve reader satisfaction with bibliographic recommendation in libraries. The hardware design of the system is completed based on the design of overall system architecture and real?time collaborative recommendation module, the software design of the system is completed by means of the calculation of similarity between bibliographies and database′s design, and thus the design of collaborative recommendation system for library bibliography is realized. The results show that, in comparison with the traditional collaborative recommendation system, the reader satisfaction of the library bibliography collaborative recommendation system based on machine learning algorithm has increased by 77%, and readers can read more interested books.
  Keywords: library bibliography; collaborative recommendation; system design; machine learning algorithm; satisfaction degree; comparison verification
  0  引  言
  图书馆书目协同推荐是指在机器学习算法的背景下,利用相似度计算的方式向读者推荐相关书目。主要有两种形式,分别是基于读者的协同过滤和基于书目的协同过滤,基于读者的协同过滤是根据读者对书目的浏览记录或购买行为,向读者推荐相似书目的过程;基于书目的协同过滤是根据图书馆书目的被浏览记录或被购买行为,向读者推荐相似书目的过程[1]。协同推荐与机器学习之间有着密切的联系,协同推荐需要利用大量的机器学习数据,对系统的储存能力有很高的要求,机器学习算法为实现图书馆书目的协同推荐带来了可能性。机器学习算法在协同推荐系统中的应用是最广泛的,主要应用在电子商务领域和社交媒体领域,在高校图书馆领域的应用相对较少。图书资源是图书馆中一种比较传统的资源类型,图书馆协同推荐系统主要是利用读者的检索历史、书目浏览历史以及借阅历史等相关数据,来为读者提供推荐[2]。传统的图书馆书目协同推荐系统是利用读者的检索词汇和链接点击行为,来构建读者的兴趣偏好,采用合适的方式将合适的书目在合适的时间推荐给读者。本文在总结现有协同推荐系统不足的基础上,考虑到图书馆环境的特殊性,提出基于机器学习算法的高校图书馆书目协同推荐系统。
  1  图书馆书目协同推荐系统硬件设计
  由于图书馆书目的协同推荐需要利用大量的机器学习数据,才能保证将用户偏好的书目推荐给读者。首先设计了系统的逻辑架构,图书馆书目协同推荐系统的逻辑系统架构分为存储层、协同推荐层、业务层和逻辑层[3]。系统的逻辑体系结构如图1所示。
  协同推荐层的设计是整个系统的核心,可以加快图书馆书目协同推荐系统的响应速度,其中管理器的设计可以加强书目信息的管理,使书目信息顺利传输到Hadoop集群中,并在集群中显示出书目的评分情况和浏览情况,将浏览数据储存在集群中,作为下一次推荐的参考[4]。   系统的业务层设计是将协同推荐层和系统的应用层紧密联系在一起,共同完成读者在系统上的请求。业务层中计算机设计可以验证读者的身份信息,验证后将读者的信息上传到服务器中[5],然后将书目推荐给读者。服务器设计可以实现用户的登录、注册、信息验证,以及对图书馆书目的管理上包括图书的详细信息和推荐等。
  将业务层和协同推荐层分开,可以增强系统的通用性,将存储层与协同推荐层分开,可以降低系统的耦合性,使协同推荐层不用考虑书目数据的容灾问题。如果系统的存储服务器出现故障,在其他服务器上重启即可,不需要考虑书目数据的迁移情况,提高了系统的可用性。
  以上以确保系统稳定运行为目的,设计系统的逻辑体系架构,以二次推荐为目的,设计Hadoop集群架构,完成系统的整体架构设计;并结合系统实时协同推荐模块设计,实现系统的硬件设计[6?8]。
  2  图书馆书目协同推荐系统软件设计
  2.1  计算书目间的相似度
  在机器学习算法中,给定书目浏览量数据集[T=x1,y1,x2,y2,…,xn,yn∈X×Yt],对任意两本书的浏览记录[vi]和[vj],定义两个特征量之间的距离度量为[δvi,vj],利用距离可以找到与数据集中浏览记录相近的书目[9]。再根据读者已经选择过的书目内容信息,将与读者曾经选择过的相似书目推荐给读者。相似度的计算会抽取图书馆所有书目的特征词汇来描述书目,并构建图书馆书目配置文件,利用读者已经选择过的书目信息特征词汇,来描述读者对不同类型书目的兴趣,构建读者配置文件,通过将书目配置文件与读者配置文件之间的相似度加以比较,向读者推荐与读者配置文件相似的书目。
  在计算图书馆书目之间的相似度时,采用的是对读者的不同特征关键词的相似度函数[10],再将相似度函数进行组合,并赋予它们相应的权重[11],计算出书目之间的相似度:
  式中:[SimX,Y]表示读者选中的书目与目标书目之间的相似度;[wi]表示读者在特征词i上的权重系数;[SimXi,Yi]表示读者在特征词汇i上的相似度。
  对于有层次书目,属性的相似度为[12]:
  机器学习算法的书目推荐原理如图2所示。
  将每一种书目的属性描述出来才能计算出书目之间的相似度,简单地说就是从图书馆书目的题材类型开始描述。假设读者A喜欢A类型书目,读者B和读者C喜欢B类型的书目,根据书目间的信息描述可以确定,书目A和书目C会被协同推荐系统认为两者是具有相似度的书目,因为他们的在题材类型上都属于军事小说;由于读者A喜欢A类型图书,那么协同推荐系统就会向A读者推荐与书目A相似度高的书目C。
  2.2  数据库设计
  由于图书馆书目协同推荐系统具有较大的储存数据量,在计算书目之间的相似度时,会使计算量和计算难度加大,因此数据库的设计将书目的浏览记录加以分类,降低相似度计算的难度。数据库的设计主要分为非关系型数据库和数据表的结构设计。在系统数据库中,要根据书目的浏览信息,将浏览次数多的书目推荐给读者,需要共享的信息有读者基本信息、书目信息、书目浏览信息以及书目申请信息等[13]。文中读者基本信息、书目信息和书目申请信息不做过多设计,下面只设计数据库中的书目浏览信息表,如表1所示。
  系统的管理员可以根据数据库中的书目浏览记录,将浏览次数多的书目推荐给读者,为读者减少寻找的时间[14]。根据读者已經选择过的书目内容信息,将与读者曾经选择过的相似书目推荐给读者,计算出目标书目与读者选择书目之间的相似度,完成书目之间相似度的计算。依托系统数据库的E?R图,设计书目浏览信息表,系统可以根据书目的浏览记录向读者推荐书目,完成系统数据库的设计,从而实现系统的软件设计。
  3  对比实验
  3.1  准备阶段
  实验数据来自于某一大学图书馆,从图书馆数据库中随机抽取985个读者,按照上述实验方式进行实验。设定读者预推荐感兴趣的书目(10本),观察实验结果。
  将读者的短期书目信息需求界定为最近一学期内,可能产生于学习相关的书目信息需求。选取图书馆数据集中近4年的书目数据作为协同推荐模块的数据集。为了区分同一个读者在不同学期对图书馆书目的偏好值,针对书目的每一条阅览记录和借阅记录,在读者ID前面加上借阅或阅览记录产生时间所对应的学期编号,作为借阅记录或阅览记录新的读者ID。
  3.2  实验参数训练
  实验准备阶段完成后,直接根据文中相似度的计算,计算出书目之间的相似度,并获取到读者偏好值数据。然后利用读者对书目的偏好值数据来训练系统,选择合适的读者相似性测度方法以及近邻数量K。不同的协同推荐系统得到的推荐效果是不同的。
  本实验选用平均绝对偏差来评估图书馆书目的推荐情况,这种方法的原理是选择图书馆数据集中的一小部分数据作为推荐,剩下的一部分数据作为实验参照数据集,计算出推荐结果的预计偏好值与参照数据集中的读者实际偏好值之间的偏差。MAE的值越小,书目推荐的准确度越高,就越可以让读者满意。
  3.3  实验结果分析
  传统协同推荐系统推荐效果中,有322位读者获得2本感兴趣的书目,读者的态度标记为“不满意”;有345位读者可获取 4本感兴趣的书目,读者的态度标记为“一般”;有180位读者获取到7本感兴趣书目标记为“满意”;有78位读者获得9本感兴趣的书目,读者的态度标记为“非常满意”。
  使用基于机器学习算法的图书馆书目协同推荐系统进行推荐时,有385位读者获得9本感兴趣的书目,读者的态度标记为“非常满意”;有410位读者获得7本感兴趣的书目,读者的态度标记为“满意”;有115位读者获得4本感兴趣的书目,读者的态度标记为“一般”;有75位读者获得2本感兴趣的书目,读者的态度标记为“不满意”。经过统计运算得到相应统计图像如图3所示。   从实验结果中可以看出,读者对传统协同推荐系统的满意程度较低,仅仅有78个读者“非常满意”,大多数读者都表示“一般”或“不满意”的态度,分别占35%和32.7%,“非常满意”和“满意”的读者仅占0.08%和18.3%;而本文设计的协同推荐系统,只有极少部分的读者持有 “一般”和“不满意”的态度,大部分读者都持有“非常满意”和“满意”的态度,分别占39.1%和41.6%。因此可以得出本文设计的协同推荐系统可以满足读者对图书馆书目的推荐。
  4  结  语
  本文提出基于机器学习算法的图书馆书目协同推荐系统。依托图书馆书目协同推荐系统的硬件设计和软件设计,实现了图书馆书目协同推荐系统的设计。结果表明,基于机器学习算法的图书馆书目协同推荐系统相比于传统协同推荐系统,读者的满意程度提升了77%。希望本文的研究可以为基于机器学习算法的图书馆书目协同推荐系统提供理论指导。
  参考文献
  [1] 汪慧芳.浅析高校图书馆推荐书目工作[J].鄂州大学学报,2017,24(6):58?59.
  [2] 肖红.大数据下的机器学习算法探讨[J].通讯世界,2017(6):265?266.
  [3] 朱天元.机器学习算法在数据挖掘中的应用[J].数字技术与应用,2017(3):166.
  [4] 沈晶磊,虞慧群,范贵生,等.基于随机森林算法的推荐系统的设计与实现[J].计算机科学,2017,44(11):164?167.
  [5] 梁建胜,黄隆胜,徐淑琼.基于视频内容检测的协同过滤视频推荐系统[J].控制工程,2018,25(2):305?312.
  [6] 刘一鸥.基于人工鱼群算法的图书馆推荐平台设计[J].电子设计工程,2017,25(15):6?8.
  [7] 马元元,蒋子规,刘艳飞,等.基于室内定位技术的圖书馆推荐算法[J].兰州理工大学学报,2018,44(2):102?106.
  [8] 黄文明,程广兵,邓珍荣,等.基于用户特征的分步协同推荐算法[J].计算机应用研究,2017,34(4):1047?1049.
  [9] 朱白.数字图书馆推荐系统协同过滤算法改进及实证分析[J].图书情报工作,2017,61(9):130?134.
  [10] 廖漳.基于协同过滤算法的电影个性化推荐系统设计与实现[J].通讯世界,2017(5):278?279.
  [11] 吴国丽,蒋昌睿.基于协同过滤算法的个性化医疗推荐系统设计与实现[J].福建电脑,2017,33(8):107.
  [12] 梁建胜,黄隆胜,徐淑琼.基于视频内容检测的协同过滤视频推荐系统[J].控制工程,2018,25(2):305?312.
  [13] 罗亚.基于决策过程的个性化推荐系统设计[J].计算机工程与应用,2017,53(14):105?110.
  [14] 张龙昌,张洪锐.数字资源云服务推荐系统设计[J].计算机技术与发展,2017,27(8):139?144.
  [15] 马元元,蒋子规,刘艳飞,等.基于室内定位技术的图书馆推荐算法[J].兰州理工大学学报,2018,44(2):102?106.
转载注明来源:https://www.xzbu.com/8/view-15284023.htm