基于Web技术的图书馆个性化服务模型

2021-07-29 07:33布艳艳
微型电脑应用 2021年7期
关键词:预处理个性化数据库

布艳艳

(西安科技大学高新学院 图书馆,陕西 西安 710109)

0 引言

图书馆个性化服务是将用户作为其中心,满足不同用户需求特征与个性特征的一种服务模式[1]。随着图书馆内海量信息资源的日益庞大,降低用户搜寻所需图书信息耗费的时间与精力,更加简便快捷地从海量图书信息中获取所需图书信息,成为当前图书馆个性化服务中所面临的关键问题之一[2-3]。

当前图书馆个性化服务模型很多,其中SOM神经网络的图书馆个性化服务模型是通过SOM神经网络聚类算法聚类与分析图书馆用户的访问行为,并筛选整合用户行为数据、特征信息等有关数据,构成数据集,再通过语义检索等方式向用户提供个性化服务,但此系统受事务数的影响推荐率波动较大[4];个人小数据的图书馆联盟用户个性化服务是通过将图书馆联盟目标和数据现实状况相结合,创建小数据的图书馆联盟数据框架及用户个性化服务系统模型,实现对联盟用户的个性化服务,但此方法更多针对的是联盟用户,无法有效地为其它大众用户提供个性化服务[5]。

Web技术属于1种包含数据挖掘、Web、信息学以及计算机语言学等数个领域的综合技术,可选取出有关资源内有价值的以及用户感兴趣的信息[8]。为此,提出了Web技术的图书馆个性化服务模型,合理运用Web技术实现图书馆为不同用户提供个性化服务的目的,提升用户获取图书信息的效率与便捷性,增强用户对图书馆的满意程度。

1 Web技术的图书馆个性化服务模型

1.1 模型的构建

在图书馆领域内运用Web技术,能够提供给用户更深层次的个性化服务,用户的兴趣、访问模式与资源间的关联等信息可通过Web数据挖掘由图书馆历史数据内发现[6]。在数据仓库、联机分析及数据挖掘的基础上创建的基于Web技术的图书馆个性化服务模型,属于图书馆对用户需求综合了解的分析工具,在用户数据库、网站的Web Log数据库或数据仓库上运行。基于Web技术的图书馆个性化服务模型如图1所示。

图1 基于Web技术的图书馆个性化服务模型

模型内主要模块描述。

(1)数据源收集模块:对用户注册与访问图书馆网站等信息数据源实施收集,并储存于Web日志文件与Web数据库内;

(2)数据预处理模块:以挖掘目标为依据读取Web日志文件或Web数据库内的有关数据,删除掉无关数据并将所需的优质数据保留,提供给接下来的数据挖掘过程中;

(3)数据挖掘模块:以挖掘需求为依据,选取适当的挖掘算法,同时运用所选取算法实施挖掘,属于一个挖掘驱动部件;

(4)Web数据挖掘算法库:将不同挖掘算法通过插件的方式组织起来,便于插入不同挖掘算法,提升算法的易选取性与可扩展性,并且能够将其它新的挖掘算法持续融入其中,提升挖掘效率;

(5)挖掘结果输出:通过直观的报表等形式输出挖掘结果,运用所挖掘的有价值信息实施对应的个性化服务工作。

1.2 数据源的收集

通过帮助挖掘算法搜集合适的数据是Web挖掘过程中的一个关键过程[7]。图书馆领域内实施Web数据挖掘的数据来源主要有服务器端数据的收集与包监测技术两种。

(1)服务器端数据的收集:数据的收集可通过图书馆的Web服务器、代理服务器的Web日志(Web Log)文件内完成,此类信息属于最简便的数据来源,它记录了用户的每次网页请求信息。当图书馆Web服务器的日志功能开启之后,每次用户由浏览器对某个网页发出请求时,此请求信息均会被记录于访问日志内。代理服务器向文本文件内储存所记录信息,文件的扩展名大多为“.log”或“.txt”。用户的每次Web页面访问形成一条记录,由数条记录共同构成图书馆Web日志文件。

除此之外,图书馆Web服务器数据库还能够将其余的Web应用信息储存,如用户所提交的查询数据与Cookie等。其中通过服务器产生的Cookie,其作用为对用户的访问路径或状态实施记录,因其涉及到用户的隐私,故需用户准许配合方可运用Cookie;当用户对自己所需信息实施查询时在服务器端所形成的记录即为查询数据。此外,文件的相关信息也记录于服务器内,比如修改时间与文件的创建者等,另外个性化特征分析时还可应用用户的借阅数据。

(2)包监测技术:对全部抵达服务器的数据实施监视,并提取出HTTP的请求信息。此类数据可用在对用户行为表现的考察中,其来源重点为浏览者的点击流[8]。对网络整体的全部信息流量实行监听,同时以信息源主机、服务协议端口、目标主机等信息为依据,将无关的垃圾数据滤除掉,并实行如关键字搜索等进一步的处理后,向给定的数据接收程序内发送用户感兴趣的数据,并储存到Web数据库内实施统计分析,此过程即为网络底层信息监听过滤过程,如图2所示。

图2 网络底层信息监听过滤过程

1.3 数据预处理

数据源收集完毕后,需要对所收集的数据源进行预处理,数据预处理步骤主要包括数据清洗、数据过滤、用户识别及会话识别等。以数据源收集中的Web日志文件为例,其数据预处理过程如图3所示。

图3 数据预处理过程图

数据预处理过程描述。

(1)数据清洗:删除掉无关数据并保留所需数据的过程即为数据清洗[9];

(2)用户识别:对通过清洗保留的数据实行用户识别,通过不同IP地址代表不同用户的方法实现用户识别,提升识别的便利性;

(3)用户会话识别:用户针对某个话题实行的一系列有效访问即为用户会话,提取出用户某段时间内的访问序列并生成会话文件即为会话识别[10]。对一个用户连续两次访问服务器是否属于同一个会话实行判别是识别出一个会话的重点。当前的判别标准可选择最大相邻时间间隔与最大时间间隔两种。若用户访问相邻页面间的时间间隔比最大相邻时间间隔低,即识别为同一个会话;相反即识别为两个会话。同样若用户所访问的第一个页面与访问的最后一个页面之间的时间间隔比最大时间间隔高时,即识别为两个会话,相反的话即识别为一个会话。

1.4 数据挖掘

1.4.1 FP-growth_S算法

FP-growth_S算法是在FP-growth算法的基础上,通过改进FP-growth算法产生数量庞大关联规则的弱点,防止冗余频繁项目集的形成,避免重复性的推荐,提升图书馆个性化服务效率。设项目集合与项目分别为J={j1,j2,…,jn}和jq(q=1,2,…,n)。事务数据库与事务分别以B={t1,t2,…,tm}和tj(j=1,2,…,m)表示,其中事务数据库是由一系列具有唯一标识符TID的事务所构成的,事务与项目集合J中的一个子集相对应。

定义1 频繁项目集为项目集合J内能够满足用户所指定的最小支持度的项目集,也就是比最小支持度大或相等的J的非空子集。而最大频繁项目集是指由频繁项目集内选取出全部不包含在其它元素内的频繁项目集。

以定义1为依据,能够推导出随意一个频繁项目集均属于某个最大频繁项目集的子集,运用此特性能够找出最大频繁项目集。具体算法过程如下。

(1)1-频繁项目集生成。对事务数据库B实施扫描,形成1-项目集合,以此集合支持数递减为依据,将1-项目集列出,同时删掉此集合内低于最小支持度的项目,生成1-频繁项目集K1;

(2)将支持度比最小支持度低的项目删除。对事务数据库B实施扫描,删除支持度比最小支持度低的项目;

(3)各事务项重新排列。依据1-频繁项目集K1的递减顺序重新排列事务数据库内的各事务项;

(4)创建FP-tree。先将树的根节点创建完成,记为null,再对事务数据库内的全部事务记录实施扫描,将各个事务记录分别生成各个FP-tree树枝,待完成扫描后形成FP-tree,由项目出现的次数、项目ID以及指向父节点指针3部分共同构成树的节点。如果出现重复项目,将项目出现的次数增加,如此即可实现FP-tree的创建;

(5)挖掘FP-tree生成最大频繁模式树max_tree。针对函数FP-max(tree,a,max-tree),由最低出现次数的项目cj开始,与遍历FP-tree相连,若只存在一条抵达cj项的前缀路径α,那么以cj项作为后缀的最大频繁项目集即为α∪cj,也就是候选最大频繁项目集,对最大频繁模式树予以调用形成函数Generate-max(α∪cj,tree),生成最大频繁模式树max-tree;若存在数条抵达cj项的前缀路径,即将全部可抵达cj项的前缀路径αj列出,将cj的条件模式库获取,并运算此模式库内各项的支持度,同时运用此模式库内的频繁项目创建cj的条件FP-tree,如果所创建的cj条件FP-tree不为空,递归调用函数FP-max(cj条件FP-tree,αj∪cj,max-tree),生成最大频繁模式树max-tree,有效避免产生冗余频繁项目集,可降低关联规则产生的数量,防止出现重复推荐问题,能够提升服务模型的运行效率。

1.4.2 IN_FP算法

可信度加权可定义为:

定义2 包含页面兴趣度的可信度即为包括Jn与Jm的事务数同包括Jn的事务数之比,并同(β+α×InterestDegree)相乘,也就是式(1)。

(1)

式中,Jn,Jm⊆J,α≤1,β≥0,同时β+α=1,依据事务数据库的不同β和α取不同的值,二者属于1种经验值,在此可设定其值为0.6。

采用FP-growth_s算法将最大频繁项目集求出,并以包含页面兴趣度的可信度为依据,实现关联规则的最终生成。

1.4.3 IN_FP算法实现

经过数据预处理后能够获得日志文件中相应的会话文件,通过IN_FP算法对此会话文件实施挖掘的过程如图4所示。

图4 IN_FP算法的挖掘过程图

采用IN_FP算法挖掘用户会话文件,生成关联规则,并按照可信度从大到小的顺序依据规则前项排序关联规则,生成挖掘结果并写入推荐数据库。当用户登录图书馆网站时,图书馆个性化服务模型将以用户的订阅信息与访问信息等为依据,读取推荐数据库,并为用户呈现相关的推荐图书信息,完成对用户的个性化推荐服务,实现基于Web技术的图书馆个性化服务。

2 模型性能的实例分析

以某高校图书馆网站的借阅数据为例,此数据内包含了2016年3月—6月的访问日志记录,具有894个统一资源定位符(URL),现分别采用本研究所提模型、SOM神经网络的图书馆个性化服务模型(文献[6]模型)及个人小数据的图书馆联盟用户个性化服务模型(文献[7]模型),依据实验图书馆借阅数据实行个性化服务,通过对比分析结果检验本研究所提模型的应用效果与性能。

2.1 服务运行效率对比

利用3种模型分别对实验图书馆借阅数据实施预处理、挖掘及结果推荐,记录各模型各个过程所消耗的时间,以此检验各模型的服务运行效率,对比结果如图5所示。

通过图5可看出,3种模型的各过程耗时对比结果中,本研究所提模型的挖掘与结果推荐过程耗时均最低,而预处理过程的耗时比文献[6]模型稍高;文献[6]模型的预处理过程耗时在3种模型中最低,而结果推荐的耗时最高;对比各模型的总体服务耗时,本研究所提模型的整体服务耗时最低,文献[7]模型的耗时相对最高,由此可见,本研究所提模型的整体服务运行效率较高,性能更优越。

图5 各模型预处理耗时对比

2.2 推荐率对比

为进一步检验各模型性能,现对实验图书馆借阅数据随事务数增长条件下各模型的推荐覆盖率与推荐准确率实施对比分析,通过测试得到准确推荐的个数除以总测试数,从而得出准确推荐率。3种模型的对比结果如图6所示。

(a)各模型推荐覆盖率对比

分析图6能够得出,随着事务数的增长,本研究所提模型的推荐覆盖率与推荐准确率均相对较为稳定,且均高于其它两种模型,文献[6]模型的推荐覆盖率与推荐准确率受事务数的影响波动最大。说明本研究所提模型具有较高的推荐覆盖率,且推荐准确度高,推荐性能优越。

3 总结

本文提出了基于Web技术的图书馆个性化服务模型,模型内包含数据源收集模块、数据预处理模块、数据挖掘模块及挖掘结果推荐数据库等,通过模型内各部分相结合共同实现图书馆个性化推荐服务,实例分析结果验证了本研究所提模型具有较高的服务运行效率与推荐准确率,能够针对不同用户提供差别性的个性化推荐服务。尽管本文所提模型能够提供更好的个性化推荐服务,但由于考虑的内容不够全面,在接下来的研究过程中还需要进一步分析各种因素的影响,实现个性化推荐服务效果的提升。

猜你喜欢
预处理个性化数据库
求解奇异线性系统的右预处理MINRES 方法
高COD二噻烷生产废水预处理研究
坚持个性化的写作
新闻的个性化写作
基于预处理MUSIC算法的分布式阵列DOA估计
数据库
上汽大通:C2B个性化定制未来
数据库
数据库
数据库