2019年10月 机械设计与制造工程 Oct.2019第48卷第10期 MachineDesignandManufacturingEngineering Vol.48No.10DOI:10.3969/j.issn.2095-509X.2019.10.026
基于协同过滤的图书馆文献数据挖掘系统设计
(青海省西宁市大通回族土族自治县图书馆ꎬ青海西宁 810100)
摘要:针对当前图书馆文献数据挖掘系统存在响应时间长、推荐准确率低等问题ꎬ设计了一种基于协同过滤的图书馆文献数据挖掘系统ꎮ采用UML建模语言构建支撑系统运行的数据库ꎬ通过协同过滤算法ꎬ依据用户浏览记录匹配对应的图书文献ꎬ完成图书馆文献数据精准挖掘ꎮ实验结果表明ꎬ当同时在线人数达到400时ꎬ该系统能够在2s内完成响应ꎬ推荐准确率高达90%ꎬ具有较高的实用性ꎮ
关键词:协同过滤ꎻ图书馆ꎻ文献ꎻ数据挖掘
中图分类号:TP391 文献标识码:A 文章编号:2095-509X(2019)10-0119-04 随着网络的迅猛发展ꎬ网络个性化服务逐渐完善ꎮ越来越多的人通过电子图书馆获得知识ꎬ考虑到用户对图书馆文献的需求各不相同ꎬ为了使用户获得更加优质的体验ꎬ一种通过浏览记录获得用户喜好的图书馆挖掘技术正在兴起[1]ꎮ相关专家对此技术进行了大量的研究ꎮ乔岚[2]着重从总体架构和逻辑架构两个方面进行了一套个性化的电子商务推荐系统的设计ꎬ并通过用户行为提取和分析模块、相关推荐模块、过滤和排名模块以及推荐解释模块来实现系统功能ꎮ因为该系统是对用户喜好文献进行实时采集并处理后响应的ꎬ所以存在响应速度过慢的问题ꎮ王晓妮等[3]通过采用Map/Reduce这种能够处理大量半结构化数据集合的并行编程模型方法ꎬ将云计算技术融入海量数据挖掘过程中ꎬ设计并实现了基于云计算的数据挖掘系统ꎬ该系统能对用户的个人兴趣准确做出判断ꎬ所以在响应速度方面具有较大优势ꎬ但该系统需要一定的时间进行分析才能使用ꎬ可操作性较差ꎮ阎星宇[4]提出并设计了基于数据挖掘的图书馆读者借阅系统ꎮ在分析其整体结构的基础上ꎬ给出了详细的硬件设计过程ꎬ通过引入数据挖掘方法实现对软件部分的设计ꎬ但系统对未登录的用户则没有推荐功能ꎬ因此具有一定的局限性ꎮ
针对上述系统存在的问题ꎬ本文设计了基于协同过滤的图书馆文献数据挖掘系统ꎮ
收稿日期:2018-12-14
作者简介:哈金花(1974—)ꎬ女ꎬ中级馆员ꎬ主要研究方向为信息资源自动化ꎬhajinhua77468@163.com.
哈金花
1 基于协同过滤的图书馆文献数据挖掘系
统
1.1 图书馆文献数据挖掘系统功能模块
图书馆文献数据挖掘系统功能模块主要由图书馆文献采集模块、文献数据分析模块、文献数据分类模块、图书馆文献存储模块组成ꎮ详细设计如下:
1)图书馆文献采集模块ꎮ该模块能够对用户
的个人浏览记录进行采集ꎬ获得不同用户的图书文献喜好ꎬ完成图书馆文献数据挖掘系统的数据采集过程[5]ꎬ会定期为文献分析模块提供数据来源ꎬ并定期从图书馆的数据集成管理平台和联机公共资源体系中获得具有一定流通性的数据ꎬ包括图书信息以及读者信息等[6]ꎮ具体流程如图1所示ꎮ
图1 图书馆文献采集模块流程图
119
2019年第48卷 机械设计与制造工程
2)文献数据分析模块ꎮ该模块通过图书馆文献采集模块获得原始数据ꎬ采用协同过滤算法对图书馆文献浏览记录进行分析ꎬ完成图书馆文献数据的分类ꎮ其具体实现过程如图2所示[7]ꎮ
数据表包含读者的基本情况信息和读者类别等内容ꎮ图书信息表包含图书名称、路径、出版社和已经被借阅的次数等ꎮ管理员信息表包含图书馆管理员基本情况ꎬ留言表包含读者对书籍的评价ꎬ主图2 文献数据分析模块
如图 3)3所示文献数据分类模块ꎮ由图可知ꎬ当文献浏览频率超过ꎮ该模块具体挖掘过程0.30.时ꎬ图书文献信息才会被系统记录ꎬ浏览频率低于
关键数据的分析3的图书文献信息会被系统过滤掉ꎬ提高了对图书馆文献数据的挖掘ꎬ以减少对非效率ꎮ
图3 文献数据分类模块
户的浏览情况 4)图书馆文献存储模块ꎬ为系统提供原始数据ꎮ该模块存储所有用ꎮ1.2 数据库设计
数据库是能够为图书馆文献数据挖掘提供一系列信息数据支持的仓库ꎮ考虑到其无法与数据有关的规则很好地联接ꎬ因此利用建模语言UML构建数据库
[8]
建基于协同过滤的数据库过程中UML能够提供十分灵活的建模机制ꎮ
[9]ꎬ利用UMLꎮ来描在构
述具体的实体内部映射关系数据库[10]模型ꎬ可以获取组建数据库时需要的数据库表ꎮ依据类图ꎮ在图书馆文献数据挖掘系统中ꎬ最主要的数据库表包含注册读者数据表、图书信息表、管理员信息表、留言表、图书借阅表、作者表和推荐表等ꎮ注册读者120
要是书籍和读者编号以及评价内容ꎮ
1.3 协同过滤算法
图书馆数据挖掘系统最关键的环节是图书文献过滤挖掘过程ꎮ本文利用协同过滤算法实现图书馆文献数据挖掘ꎮ协同过滤基本理念为:依据用户兴趣相似程度推荐文献ꎬ将与当前用户相似的其他用户常浏览的文献推荐给当前用户ꎬ根据当前用户对图书馆文献的评价以及其他相似用户对文献
的评价ꎬ挖掘获得当前用户未浏览过的文献ꎬ同时进行推荐ꎮ
一般情况下ꎬ协同过滤算法可描述成以下形式{u:参与协同过滤的用户共有u}ꎬ文献信息项目共有m个ꎬ表示为UꎬIn=个{ꎬi用户u=1ꎬ2ꎬꎬumm
的图书文献喜好评价资源集为Ii×n用户对图书文献的评价1ꎬi2ꎬꎬn矩阵}ꎮ假设ꎬrRm×n表示mij表示第i个用户在第j个文献的访问记录ꎬ
表征用户浏览该文献时的兴趣评价ꎮ利用矩阵Rm×n生成用户资源的近邻集合Mꎮ
针对当前用户uk根据其历史访问记录和兴趣爱好评价ꎬ图书馆文献数据挖掘系统ꎬ获取与该用户访问行为最为相似的多个用户作为uk最近邻集合ꎬ统计uk最近邻用户访问过但用户uk没有访问过的文献ꎬ利用这些文献构建候选推荐集合ꎬ再计算候选推荐集合中各文献对uk的推荐度ꎬ选取前N
个文献当作uk的推荐集合ꎮ
当前用户uk完成的爱好评价的文献项为Iuk用户与资源间的近邻集合为ꎬ读取Mꎮ针对各文献iꎬi∈
、
Iuk将全部M获取其近邻集合程度计算ꎬ构建相似兴趣用户集合C中各用户SSiꎬSi={uu1ꎬu2ꎬꎬs}ꎬi合并ꎬ获取集合uCꎬC={uu1ꎬu2ꎬꎬc}ꎮi和当前用户uk之间的相似Cusim={u1ꎬu2ꎬꎬ
sim}ꎮ为了提升用户满意度ꎬ获取以往用户ui和当前用户uk之间的相似程度ꎬ则相似程度函数可表示为:
Skn-ik=
∑∑n
(rin-ri)(rrk)
2n
(rin-ri)式中:Sik为各用户ui和当前用户∑n
(rkn-rk)2(1)
uk之间的相似程度ꎻrin为各用户ui对文献n的爱好评价值ꎻrkn为当
前用户uk对文献n的爱好评价值ꎻri为各用户ui评
2019年第10期 哈金花:基于协同过滤的图书馆文献数据挖掘系统设计
价信息均值ꎻrk为当前用户uk评价信息均值ꎮ
挖掘文献数据的兴趣爱好评价值相加所得和ꎬ获取前N个当前用户uk的图书文献数据挖掘集合Top_N:
综上ꎬ计算出相似兴趣用户集合Csimꎬ通过各
Top_N=max图书馆文献数据挖掘算法流程如图1→N
(CsimN+ukSik)
4所示(2)
ꎮ
图4 图书馆文献数据挖掘算法流程图
2 实验结果与分析
为验证本文系统的性能ꎬ将其与文献[3]系统、文献[4]系统进行对比实验ꎮ实验环境为:计2算机采用Pentium4处理器ꎬCPU为2.80GHzꎬ内存
为GBꎬVisual计算机硬盘空间为C++6.0ꎮ
80GBꎬ使用的编程语言实验指标为1)2)图书馆文献数据挖掘响应时间:
图书馆文献数据推荐结果的准确性ꎻ实验结果如图5ꎬ6所示ꎮ
ꎮ
图5 不同数据挖掘系统的响应时间对比图
种系统的响应时间都超过 分析图5可知ꎬ当同时在线人数超过1.0sꎬ差别不大ꎻ50当同时时ꎬ3
在线人数超过150时ꎬ文献[3]系统的响应时间约为3.0sꎬ文献[4]系统响应时间约为3.6sꎬ而本文系统的响应时间约为1.6sꎬ响应时间明显较低ꎻ随
图6 不同挖掘系统的准确性对比图
着同时在线人数的增加ꎬ文献[3]、[4]系统响应时间明显增加ꎬ当人数达到400时ꎬ3种系统响应时间都趋于稳定sꎬꎬ文献[3]一直稳定在文献[4]系统响应时间稳定在系统响应时间稳定在1.8sꎬ明显较低ꎬ说明其具有较高的处
5.7sꎬ而本文系统5.3理效率ꎬ有效改善了文献挖掘系统的性能ꎮ[3]分析图6可知ꎬ当同时在线人数为50时ꎬ文献
率达到系统的准确率约为90%ꎬ所提系统的准确率约82%ꎬ文献[4]95%系统的准确ꎻ随着同时在线人数的增加ꎬ文献[3]系统、[4]系统准确率持续下降ꎻ当同时在线人数达到500时ꎬ文献[3]系53%统的准确率仅有37%ꎬ文献[4]系统的准确率约为
文献ꎬꎬ已经大幅度下降而本文系统的准确率依旧高达ꎬ无法为用户精准推荐图书90%ꎬ明显高于其他两种系统ꎬ说明本文系统具有较高的精准度ꎮ
3 结束语
针对传统图书馆文献数据挖掘系统存在的问题ꎬ本文提出并设计了基于协同过滤的图书馆文献数据挖掘系统ꎮ该系统采用自动计数方法对采集到的用户浏览记录进行统计ꎬ通过协同过滤算法对统计数据进行过滤ꎬ选出最匹配的数据信息ꎬ完成对图书馆文献数据的深度挖掘ꎬ实验结果验证了该系统的优越性能ꎮ文献数据挖掘系统作为推广图书的渠道ꎬ对图书馆现代化建设来说非常重要ꎬ因
此有必要对其进行深入研究ꎬ下一步可通过细化图书馆文献数据挖掘系统功能模块ꎬ使系统用户获得高质量的服务ꎮ参考文献:
[1] 张沛朋计研究ꎬ[J].魏楠西安文理学院学报.基于数据挖掘技术的个性化移动推荐系统设
(自然科学版)ꎬ2017ꎬ20(2):
121
2019年第48卷 机械设计与制造工程
[2] 乔岚.基于大数据技术的个性化推荐系统的设计与实现[J].
信息与电脑(理论版)ꎬ2017(21):70-72.
[3] 王晓妮ꎬ段群ꎬ韩建刚.基于云计算的数据挖掘系统设计与
实现[J].计算机技术与发展ꎬ2019ꎬ29(3):184-188.电子技术ꎬ2018ꎬ41(12):188-190ꎬ194.
[4] 阎星宇.基于数据挖掘的图书馆读者借阅系统设计[J].现代[5] 张松ꎬ张琳ꎬ王汝传.基于用户聚类的协同过滤推荐算法
99.
[J].南京邮电大学学报(自然科学版)ꎬ2017ꎬ37(3):93-41-45.
[6] 赵淑媛.试析大数据环境下协同过滤技术与档案数据挖掘[7] 汪军ꎬ朱建军ꎬ覃朗.基于云模型熟悉相似度的协同过滤推荐
算法[J].计算机工程与科学ꎬ2017ꎬ39(11):2102-2108.[J].中国包装ꎬ2017ꎬ37(5):71-77.科教文汇ꎬ2016(17):86-87.
[8] 魏建兵.基于数据挖掘的购物网站的商品推荐系统模型研究[9] 陆芸婷.基于数据挖掘的高职院校自适应学习系统研究[J].[10]张玙.基于协同过滤算法的人力资源信息管理系统研究[J].
电子设计工程ꎬ2017ꎬ25(3):23-27.[J].兰台世界ꎬ2017(增刊1):23-24.
Developmentofthelibrarydocumentdataminingsystembasedoncollaborativefiltering
(DatongHuiandTuAutonomousCountyLibraryꎬQinghaiXiningꎬ810100ꎬChina)
HaJinhua
Abstract:Inordertoshortenthelongresponsetimeandimproverecommendationaccuracyinthecurrentlibraryliteraturedataminingsystemꎬitdevelopsalibraryliteraturedataminingsystembasedoncollaborativefiltering.UMLmodelinglanguageisusedtoconstructthedatabasetosupporttheoperationofthesystem.Basedontheofpeopleonlinereaches400atthesametimeꎬthesystemcancompletetheresponsewithin2secondsꎬandtherecommendationaccuracyisashighas90%.Thesystemhashighpracticability.Keywords:collaborativefilteringꎻlibraryꎻliteratureꎻdatamining
collaborativefilteringalgorithmandtheuserbrowsingrecordstomatchthecorrespondingbooksanddocumentsꎬtheaccurateminingoflibraryliteraturedataiscompleted.Theexperimentalresultsshowthatwhenthenumber
122