段 薇, 金 征
(1.江西科技师范大学 数学与计算机科学学院,江西 南昌 330038;2.东华理工大学 图书馆,江西 南昌 330013)
高校图书馆担负着为高校教学和科研服务的任务,其服务水平的高低,直接影响着高校教学、科研的发展。高校移动图书馆作为我国移动图书馆中的重要成员,近几年来发展迅速。过去图书馆提供的服务主要是以馆藏的图书资源为中心,现在移动图书馆的信息服务已逐步转化为以用户为中心,除了要能实现在移动设备上对图书馆的资源信息的查询功能,还需要满足用户日益增长的对信息服务的个性化需求。
用户信息行为是用户研究的重要领域,对用户信息行为研究能为信息机构开展信息服务提供目标和决策依据,因而一直受到图书馆学和情报学界的重视。移动图书馆用户的信息行为是指用户在信息需求支配下利用移动图书馆过程中的表现,是用户信息需求的外在化与延伸化[1]。
大数据具有全面性、多样性和时效性的特征,是科学进步的产物。利用大数据技术对高校移动图书馆用户信息行为分析,不仅能够较全面、准确地把握用户的信息需求,发现用户的信息行为规律,为图书馆有针对性地做好资源建设提供可靠依据,同时也是图书馆为用户提供个性化服务的前提。
随着高校图书馆资源建设的推进,高校移动图书馆的资源愈加丰富。智能手机等移动设备的普及以及移动互联网环境下信息服务的费用逐步降低,尤其是在WIFI环境下用户的上网费用几乎可以不计。这些因素促使高校移动图书馆的用户信息行为的发生总量、频次呈快速增长态势,高校移动图书馆的用户信息行为数据量迅猛增长。目前,高校移动图书馆所存储的用户信息行为数据信息已具备“大数据”的4V特征,即数据体量巨大、数据类型多、价值密度低、数据增长的速度快,处理的时效性要求高。
近些年来,大数据技术得到了快速发展,每年都会涌现出大量新的技术,成为大数据获取、存储、处理分析以及可视化的有效手段。这些技术大多以开源为主,如:分布式处理的软件框架Hadoop、用来进行挖掘和可视化的软件环境、非关系型数据库Hbase,CounchDB和MongoDb等开源软件。利用这些技术可以帮助我们对高校移动图书馆的用户信息行为进行大数据分析。
传统的数据分析大多是针对关系数据库中的数据进行的,这些数据是结构化数据且数据规模相对较小,因此分析处理起来比较容易。在大数据环境下,数据不仅规模大且多为半结构化、非结构化数据。这些错综复杂的信息数据,既提供了丰富的信息分析素材,又对数据的存储、处理能力提出了更高的要求,加大了分析、处理信息的难度。
基于大数据的高校移动图书馆用户信息行为研究面临的困难包括海量数据的存储、处理,复杂分析模型的实现。要解决这些问题首先要实现低成本、快速地对海量、多类别的数据进行抽取和存储。其次要使用新的技术对海量数据进行快速地分析和挖掘。
Hadoop是由Apache基金会开发的分布式系统基础架构[2],是目前构建大数据平台的主流技术。Hadoop具有高可靠性、高拓展性、高容错性和高效性,能实现在大量廉价计算机组成的集群中对海量数据进行处理[3]。
Hadoop发展至今已形成一个生态体系,除了核心技术 (MapReduce,HDFS)之外,各种基于Hadoop的工具应运而生,对其提供多方面的业务支撑。常用的工具有:宽表数据库HBase;可伸缩的机器学习算法库Mahout;高级数据处理工具:Hive,Pig等[4]。
HBase是基于Google BigTable模型开发的典型的key/value系统,它是一个NoSql数据库,适合于非结构化数据存储。利用HBase技术可在PC Server上构建大规模分布式存储集群,降低存储成本,从而解决大数据存储问题。HBase是基于列的而不是基于行的模式,能通过水平扩展读写负载提高访问性能。Mahout是开源数据挖掘模型库,它包含了多种可扩展的数据挖掘经典算法,它支持Hadoop并行计算框架,用户可以直接利用这些算法进行数据挖掘,或在此基础上对算法进行改进以满足数据挖掘的需求。Hive适合于构建数据仓库,且能利用SQL语言进行数据分析的操作。Pig是一种数据流语言,它可以非常方便地处理HDFS和HBase的数据。当需要在数据上做一些转换,并且不想编写MapReduce jobs就可以用Pig。
目前Hadoop的生态体系成为大数据领域中应用最广泛的开源框架。因此,对高校移动图书馆用户信息行为进行大数据分析可通过构建基于Hadoop的大数据应用系统平台来实现。
基于Hadoop的大数据应用系统平台的架构分为四层,四层结构从下到上由基础层、数据层、业务逻辑层、应用层组成,如图1所示。各层的功能如下。
基础层:该层主要是对整个系统提供平台支撑功能,是对构成系统的硬件、操作系统和网络的抽象。
数据层:提供数据集成、数据存储和数据处理功能。本层将利用HBase与Hadoop中的HDFS分布式文件进行数据的交互处理,并将应用层所需的数据存储在HBase数据库里;重点关注如何对数据层进行优化,提高系统的整体数据处理能力。
业务逻辑层:处于数据层与应用层中间,主要用来处理项目中的业务流程。在对MapReduce编程模型和Mahout中常用算法研究的基础上①利用Hadoop的MapReduce来处理HBase中的海量数据。②利用Hive构建数据仓库,利用HQL语言进行数据的查询处理,或者利用Pig对 HDFS和Hbase中的数据进行快速查询操作。③利用Mahout中聚类、分类、协同过滤算法对数据进行深度分析。通过以上这些操作满足应用层的需求。
应用层:根据用户需求实现信息的推荐、搜索,推送等功能,以满足个性化需求。
图1 基于Hadoop的大数据应用系统架构
高校移动图书馆用户信息行为是指用户在信息需求的支配下,利用移动通讯设备对图书馆的资源进行检索、选择和利用的行为。这些行为的实质是一系列的数据交换过程,最终体现为用户信息行为事件。一个用户信息事件通常应包括:“时间、地点、人物、交互、交互的内容”五方面的内容。通过用户事件观察,最终可以从这些事件中获知用户的行为规律。
WEB日志记录了网站访问记录数据内容,可以依据WEB日志中的信息对高校移动图书馆用户的信息检索行为、信息选择行为以及信息利用行为进行定义。目前WEB访问日志最常用的是NCSA扩展日志格式(ECLF)。表1中显示了ECLF日志格式中最重要的内容。
表1 ECLF常用属性
3.1.1用户的信息检索行为事件定义
用户发出的每个搜索请求背后都隐含着潜在的搜索意图,由此产生了对特定信息的需求,通过分析用户的信息检索行为,了解用户的信息需求。
信息检索行为事件L:=<{用户的IP地址remotehost}{用户帐号authuser}{访问的日期时间Date time}{检索词Query}{检索页URL resource}>
在信息检索行为事件中,remotehost,authuser,Date time以及resource的值都可以从WEB日志中直接获取。而搜索关键字Query的值,网页浏览日志中并不直接提供,但当客户端用GET方法向服务器发出请求时,即当日志中method的值等于GET时,搜索引擎会将查询关键字以GET的形式存放在URL中,因此可从resource的值中截取用户的搜索关键字。
3.1.2用户的信息选择行为事件定义
用户的信息选择行为包括对信息源的选择、对所需信息的选择以及信息选择的顺序等。用户对信息选择路径偏好,在某种程度上可以反映用户对网站的域名的熟悉程度以及对网站资源的喜爱程度。
信息检索行为事件L:=<{用户IP地址remotehost}{用户帐号authuser}{访问的日期时间Date time}{检索页URL referrer}{链接访问的页面URL resource}>
3.1.3 用户信息利用行为事件定义
通过对用户信息利用行为中的数字资源下载、书籍借阅信息进行分析,评价移动图书馆信息资源的利用程度,为图书馆的资源建设提供科学依据。
信息利用行为事件L1:=<{用户IP地址remotehost}{用户帐号authuser}{访问的日期时间Date time}{检索页URL referrer }{下载链接的URL resource}>
信息利用行为事件L2:=<{用户IP地址remotehost}{用户帐号authuser}{访问的日期时间Date time}{检索页URLresource }{借阅信息info}>
信息利用行为事件L1表达的是数字资源下载事件,信息利用行为事件L2表达的是馆藏书籍借阅事件。在L1中检索页URL表示的是数字资源所在网页的URL,在L2中检索页URL表示的是OPAC系统所在服务器的IP地址。在信息检索行为事件序列中,remotehost,authuser,Date time以及referrer,resource的值都可以从WEB日志中直接获取。而L2中的借阅信息info的值,网页浏览日志中也不直接提供,但当客户端用GET方法向服务器发出请求时,搜索引擎会将查询关键字以GET的形式存放在URL中,因此可从resource的值中截取用户的借阅信息info。
在对用户信息行为事件定义后,就可以对所需分析的数据按照用户信息行为事件定义的格式进行数据预处理,为下一步的数据分析做准备。对WEB日志的原始数据进行预处理,主要进行数据的清理和会话的划分的操作。数据清理主要是删除WEB日志中与用户行为无关的数据,以提高信息分析的效率。因为WEB日志挖掘的目的是为了获取用户的行为模式,只有日志中HTML文件与用户会话相关,所以需要删除不相关的图片文件和脚本文件。不相关的数据类型主要有后缀为GIF,JPEG,JPG,GIF,CGI的文件。会话划分是通过对用户浏览网页的时间设置一个最大阈值来实现的,一旦网页的浏览时间超过了这个阈值,则认为在该页面终止了访问[5]。
在移动互联网时代,用户对获取信息的质量有更高的要求,需要在海量的数据中获取精准的价值信息,从而得到更人性化、更精准的信息与服务。在基于Hadoop的大数据应用平台的支持下,利用Mahout提供的关联分析、分类、聚类、协同过滤等数据挖掘算法结合Hive和Pig对用户的信息行为数据进行分析,获取用户信息行为的特征,有利于推测用户信息需求的发展趋势,提高用户获取有效信息的准确度,为用户提供优质的信息服务。
3.2.1聚类分析
聚类分析是源自“物以类聚”的思想,根据数据集中数据的某种特性,对数据集进行分类,使得在同一类中的数据之间相似度较高,而在不同类中的数据之间差别较大。对用户信息行为事件数据进行聚类分析,将具有不同的信息行为的用户聚类成不同用户组,以便向同类用户推荐感兴趣的信息,为不同的组提供不同的信息服务。
3.2.2分类分析
分类分析通过给出识别一个类的公共属性的描述构建分类模型,利用分类模型将数据映射到事先定义的类中,从而实现对数据集分类。分类分析为人们对海量信息聚合性不足提供了解决的思路。在大数据环境下对高校移动图书馆用户信息行为进行分析时,可在聚类分析的基础上根据用户所学的专业、年龄、性别、用户对网页的访问次数等指标对用户进行分类,通过分类分析将有同样信息需求的用户分成一组,以便向同类用户推荐感兴趣的资源。
3.2.3关联规则分析
关联的规则依据事物之间的关联性,从一件事的发生来推测发生另一件事,从而更好地了解事物的发展规律。在对用户信息利用行为进行研究时,运用关联规则对用户的数字资源下载以及书籍借阅信息分析,了解用户借阅的图书之间、下载的数字资源之间的关联性,及时地发现这些数据中潜在的、有价值的关联规则,以此为依据向用户提供个性化的资源推荐服务。此外,利用关联信息,高校图书馆可以加强资源整合。
3.2.4序列模式分析
某些用户借阅图书具有时序性,通过时间序列分析找到这种规则,在此基础上预测用户信息需求的变化趋势,从而引导用户进一步的借阅行为并适时向他们进行图书推荐。挖掘、分析用户借阅图书的时间特性,还可以有利于保证图书馆工作科学、有序地进行。
3.2.5协同过滤
协同过滤是利用兴趣相似,拥有共同经验群体的爱好向用户推荐感兴趣的信息。一般采用最近邻技术,计算用户之间的相似度,以便向同类用户推荐感兴趣的资源,提供更精准的信息推送服务。在基于大数据的用户行为分析中,由于需要处理的是海量数据,因此可以首先通过聚类、分类算法找到与用户兴趣相似的用户群,然后在用户兴趣相似的用户群中,寻找兴趣相似的“最近邻居”,根据类中其他用户的评价预测目标用户对资源的喜好程度,最后用协同过滤算法的实现用于基于用户相似度的推荐[6-8]。
3.2.6路径分析
除了用户自身的信息需求,图书馆信息组织、服务质量、移动互联技术等也是影响用户信息行为的重要因素。目前,许多高校图书馆提供的移动信息服务多处于测试试用阶段,存在连接状态不稳定,浏览速度普遍不快,一些移动图书馆的界面设计没有考虑用户的操作方式和使用习惯,操作复杂,有的功能甚至无法正常使用等问题[9]。这些问题给用户使用带来了障碍,产生了不好的体验效果,阻碍了移动图书馆的推广和普及。
路径分析可以用来确定网站上的频繁访问路径。通过统计方法对用户访问路径进行分析,发现高校移动图书馆的用户信息选择路径的偏好,探求用户访问资源的来源以及用户喜爱的信息资源集合,有助于发现资源组织问题,从而对高校移动图书馆中导航、链接、分类系统等功能的设置进行调整和优化,提高资源使用效率。
移动互联网时代,用户的信息行为受新技术的影响而逐步发生变化。高校移动图书馆信息服务中用户信息行为有其新的表现形式及特征,各行为之间的相互关系亦发生着新的变化。高校图书馆移动信息服务应该以满足用户需求为目标,在保证服务移动性、及时性的基础上,注重提供个性化服务,而不是仅仅在移动设备上实现图书馆资源的查询。在大数据技术的支持下,研究用户的信息需求、信息行为,发现用户的信息行为规律,在此基础上对高校移动图书馆信息服务的模式进行优化、完善,对高校图书馆实现以读者需求为中心的高质量服务具有重要意义。