APP下载

基于用户画像的图书馆推荐服务初探

2019-07-16高建忠

图书馆 2019年7期
关键词:画像图书特征

李 丹 高建忠

(西安交通大学图书馆 西安 710049)

随着信息技术的快速发展,读者群体日益庞大,信息资源过载,如何让读者找到自己感兴趣的图书资源,同时将大量的馆藏纸质图书和电子书有针对性地推荐给读者,是图书馆面临的重大挑战。基于用户画像的推荐系统已经成为应对这一挑战的重要手段。

用户画像(Users’Profile)由Alan Cooper 最早提出,是建立在一系列真实数据上的目标用户模型[1],对同一类用户进行不同维度的刻画,旨在通过海量用户行为数据挖掘有用信息,全面展现用户的信息全貌。

推荐系统用来 “分析用户画像、内容项和它们之间的关系,并试图预测未来的用户行为”[2],是基于日志系统,采用一定的推荐算法,帮助用户从无目的的查找中发现自己感兴趣的内容,给用户提供不同的个性化页面展示的一种自动化工具。

图情领域对图书推荐进行了深入研究,提出了很多方法,引入了很多应用系统[3-4],但是随着图书数据和种类增多,推荐方式的局限性和图书零借阅率现象日益严重,信息迷航问题日益严峻。构建读者行为画像,提升推荐效率是图书馆开展个性化服务的关键。

本文通过广泛的定性研究,结合调查和流通日志分析,为读者提供个性化资源推送,给出了推荐系统技术的简要概述,讨论了为读者推荐图书过程中的关键问题。首先,分析个性化推荐的应用现状;其次,提出读者用户画像构建方法,通过显式和隐式方式相结合获取读者信息,构建读者画像;再次,将具有相同特征的用户划归成一类,分析用户借阅等行为信息,给出个性化推荐方案,采用协同过滤算法进行TopN 推荐,向读者推荐兴趣度排名前N的内容项,其中用户兴趣度是用来描述用户对某本图书的兴趣程度;最后给出该推荐策略在实践中的探索和思考。

1 研究现状分析

传统的信息检索模型通常无法最大程度地连接图书馆用户和图书资源。正如Baez等人指出,面对数量巨大的可用资源,用户通常要求检索系统缩小搜索范围以识别其真正需要的资源,而不是扩大检索范围,呈现给读者可能有用但不明确的检索结果[5]。推荐系统应运而生,它广泛应用于电子商务中。同样,面对日益增长的读者需求和过载的信息资源,馆员也应该意识到引入推荐功能的必要性。图书馆的推荐服务系统应当在外观和功能上尽量满足读者的期望,通过获取读者偏好信息来调整推荐内容,提高客户忠诚度。

基于用户画像的推荐系统在国外图书馆领域实践应用广泛,哈德斯菲尔德大学Dave Pattern 2011年基于文氏图,主要针对图书馆纸本馆藏,提出在图书馆集成系统(Horizon系统)中利用流通数据推荐读书的方法。2012年,基于同样的算法,他探索了把电子资源也纳入推荐系统的可行方法[6],给出了针对学科/课程做限定的设想[7],探索过滤推荐结果的方法,使得在学术型大学中推荐结果更接近于学生的需求,甚至更接近于读者的特定课程,而不需要读者二次筛选。Dave Pattern指出那些流通次数不多的物品(非畅销书)更应该推荐[8],这正是长尾理论(Long Tail Theory )所不断倡导的。2002—2007年间, 德国卡尔斯鲁厄大学图书馆基于OPAC 使用数据,分析读者不同时间段内的检索行为开发了BibTip推荐系统[4],此外,其他机构推出了优秀的推荐系统如MyMedia、基于SFX的BX推荐系统等。除了上述主要采用隐性推荐方式的系统外,还有需要用户参与的典型推荐应用LTFL(Library Thing For Libraries)[3],斯旺西大学已将其纳入图书馆服务中。学者Cherry J M,Clinton M基于多伦多大学图书馆OPAC构建用户画像,通过探讨读者培训方式和OPAC设计[9],提升图书的借阅率。

国内图书馆领域针对基于用户画像的推荐策略研究还处于初探期。研究发现,推荐系统渗透到图书馆环境并纳入图书馆服务的程度并不高,即使应用了推荐系统,读者体验也不够好。部分原因可能在于系统限制、预算限制,加上读者的接纳度和信任度不够。在OPAC中提供推荐功能的图书馆非常少。北京大学图书馆引入了SirsiDynix作为图书管理系统,可以根据检索词向读者推荐“同作者作品”“同主题作品”以及“书架上邻近馆藏”。一些学者从本科生、研究生、教师的角度构建特征群体的用户画像,使图书馆服务趋势、模式与读者需求相匹配。图书馆领域的推荐不应局限于OPAC流通数据,还可整合其他应用系统甚至图书馆外部对读者活动产生影响的数据,但由于数据格式的复杂性,数据所有权和用户隐私等方面的研究才刚刚起步。同时,一些学者提出了图书推荐模型,但对于如何将用户画像构建、隐式和显式协作获取数据、TopN推荐策略结合起来,针对用户开展个性化推荐服务,仍需进一步探讨。

2 用户画像构建及图书个性化推荐方案

2.1 读者用户画像数据来源

推荐算法依赖于用户行为数据,推荐系统设计人员需要考虑的一个关键因素是用户画像基础数据的选取标准,以及推荐系统获取数据的方法,它可以大致分为“隐含”或“明确”两种[10]。隐式方法的优点是对用户没有任何要求,显式方法需要用户参与,如对图书馆的服务进行评价(Prekopcsák,2007)[11]。本文采用显式(用户调查问卷)和隐式(系统日志分析)相结合的方式获得基础数据。

基础数据一方面来源于调查问卷。作为处理图书超期罚款的一种途径,西安交通大学图书馆要求超期读者填写图书超期调查问卷,由馆员签字监督,方案实施不到一年便收到了近万份问卷。问卷不仅包含读者个人信息(姓名、学号、联系方式等),读者超期图书信息,还包括读者推荐图书名称、作者、索书号等信息。另一方面,数据来源于图书馆各类应用系统,如图书馆自动化系统(INNOPAC)、图书馆门户网站、座位管理系统、读者借阅记录、座位使用记录、门禁记录等。其中,INNOPAC系统中包含读者对所借图书的评分选项,但在实践中很少有读者去点击反馈评分。不过图书推荐的关注点是找到读者最有可能感兴趣的图书,而不是读者对所借图书的评分。

通过调查问卷的方式虽然可以获得很多用户主观感受的指标,然而存在一些缺点,如:组织成本高,需要有大规模的测试用户群,同时需花费用户大量时间;存在录入有误的现象;用户在测试环境下的行为和真实环境下的行为可能存在偏差,因而测试环境下得到的数据可能和真实环境有所差别。故本文通过广泛的定性研究,结合用户调查问卷、INNOPAC系统、座位管理系统、门禁系统中流通日志分析,获取读者基本信息、图书基本信息、空间服务信息、读者行为信息等四类信息,经过数据清洗去除数据中的噪声,构建用户画像。

2.2 用户画像构建

获取原始数据后,我们需要对其进行整理、归并和电子化,但此时数据量大,格式复杂,数据与数据之间的关联关系不明确,需要从知识工程[12]的角度出发,基于读者信息构建用户画像,方便计算机理解和处理,从而实现快速及个性化的推荐。

用户画像构建组成见图1,其中,“用户信息”类包含“用户人口统计学信息”“用户兴趣描述”和“用户INNOPAC系统外行为数据”3个子类。其中“用户人口统计学信息”包含“学号”“姓名”“专业”“学院”“性别”和“联系方式”,通过调用图书馆INNOPAC系统读者API接口获取个人信息。“用户兴趣描述”类对应的属性为“专业研究方向”“图书借阅反馈”,其属性数据来自于调查问卷。“用户INNOPAC系统外行为数据”对应的属性为“入馆等级”,“入馆等级”根据调查问卷中读者罚款的金额、超期天数确定。“图书信息”包含的属性为“书名”“作者”“出版社”和“ISBN”。“空间服务信息”包含的属性为“座位ID”“座位位置”“进入通道ID”“进馆时间”“出馆时间”,其属性数据来自于座位管理系统、图书馆门禁系统等。描述用户轨迹的“用户行为信息”包括“图书借阅”“图书预约”“图书超期”“选座”“进出门禁”5个子类,“用户行为信息”的数据由“用户信息”“图书信息”和“空间服务信息”数据产生关联。表1给出了“用户行为信息”5个子类的统一属性表示方式,可以分为5部分:产生行为的用户唯一标识、行为对象的唯一标识、行为的种类、产生行为上下文、行为的权重。以“图书借阅”子类为例,它的属性见表1。

图1 用户画像构建

表1 “图书借阅”子类统一属性表示

2.3 个性化推荐策略

面对图书馆日益增长的纸质图书资源,读者利用传统检索功能寻找自己感兴趣的图书,往往费时费力。图书馆工作人员如何充分利用海量的图书资源,准确高效地向读者推送高品质图书,提高读者黏性和图书利用率,是本文研究的重点和难点。

构建用户画像为读者个性化服务打下良好基础,用户数据来源以及格式,决定着采用的推荐策略、推荐内容及其呈现形式,又会直接影响用户对推荐内容的关注程度以及接纳度。本文拟根据数据源的特征,利用时间上下文信息改进基于用户的协同过滤算法(UserCF),设计基于特征的读者行为个性化推荐策略,一方面引入时间衰减因子改进读者兴趣相似度的计算方法,另一方面向读者推荐与其兴趣相似的读者最近喜欢的内容:①利用读者注册信息解决读者冷启动问题,新注册的用户没有行为数据,无法根据其历史行为推荐图书。为解决用户冷启动问题,可以利用读者注册时的人口统计学信息、读者兴趣描述信息等,提取特征进行粗粒度的个性化推荐。老用户可进一步根据其行为信息生成特征,从数据库中分析用户行为数据,生成用户的特征向量。②基于用户特征,计算读者间的兴趣相似度,找出最相似读者的邻域,即找到和当前读者兴趣相似的读者集合,找到集合内读者最近喜欢但是当前读者没有关注的图书,生成特征—项目相关表。特征—项目相关表一般都不止一张,对于每个特征,在相关表中都存储和它最相关的N个项目的ID。将这些相关表按照权重统筹管理,生成不同特征的推荐列表,这样就实现了将读者的特征向量通过特征—项目表转化为读者推荐列表。③根据推荐列表进行用户行为评估,调整推荐策略。

2.3.1 基于读者特征的用户画像相似度计算

高校图书馆的读者在查找学习资料时一般会询问高一级的学长或同一个专业、上过同一课程的读者,因为他们之间有共同的需求。根据读者相似度进行推荐是非常合理的。为提取读者共同的兴趣特征,笔者采用的方法是基于用户画像,分析读者间的相似度,将相似度高且具有相同特征的用户划归成同一类,把图书馆大量的读者群划分为合作读者、基础学习型读者、研究型读者、文艺型读者,仅考虑为当前读者推荐具有相同特征邻域内的其他读者可能感兴趣的资源(包括图书资源和空间资源)。

计算读者间兴趣相似度时需要考虑读者特征。读者特征包括两种,一种是读者注册信息中可以提取出来的,包括人口统计学特征,还有一种重要特征是读者行为特征,包括读者借阅的图书信息,读者使用的座位信息等。我们在提取用户特征时,需要考虑:①上下文信息,时间是一种重要的上下文信息,读者的兴趣是变化的,为了准确地预测读者当前的兴趣,需要关注读者最近的行为。同时,图书也是有生命周期的,如果一本图书在进入二线书库中仍然经常被借阅,说明其价值很高。一些图书的借阅率会受到重大事件或者学校特征的影响,比如有关钱学森精神和西迁历史的书籍在特定阶段非常热门。当为读者推荐图书时要充分考虑该书是否已经过时。此外,图书推荐还要考虑学期效应,开学首月、学期中、考试月读者需要借阅的图书种类不同。比如小学期时,很多研究读者被导师要求做项目,此时探索性的研究性图书很热门。因为读者的兴趣会随时发生变化,加入时间因素,读者在学期中、学期末、假期中等时间段的行为会有不同的特点。考虑到实时性,往往读者近期的行为比较重要,读者近期借阅过的图书对应的特征将会具有比较高的权重。②读者行为的次数,读者对同一本书反复借阅的次数或读者对同一座位反复预约的次数反映了读者的兴趣度。③热门程度,在关注读者借阅热门图书的同时,更要关注读者对非热门图书的借阅行为,这恰恰反映了读者的个性需求和图书的价值所在。

2.3.2 基于读者特征的个性化推荐策略关键公式

给定读者a和读者b,令N(a)表示读者a发生过行为的项目集合,N(b)表示读者b发生过行为的项目集合,考虑时间信息后计算读者a和读者b兴趣相似度的计算公式为:

公式中读者b最近的兴趣显然比读者b很久之前的兴趣更接近读者a 最近的兴趣。对于大数据集,对同样的物品都产生过行为的用户很少,即,为了不把时间浪费在计算这种读者之间的相似度,建立物品—读者的倒排表,建立读者相似度矩阵,使得矩阵值。之后代入公式1经计算可以得到读者兴趣相似度根据值确定读者兴趣相似集合后,针对集合中其他读者感兴趣而当前读者未发生过行为的内容项,通过下方公式计算当前读者对各内容项的兴趣度p,实现为读者推荐资源的目的。

S(a, K )为和读者a兴趣最接近的K个读者,wab表示读者a和读者b的兴趣相似度,rbi表示读者b是否对内容项i产生过行为,如果产生过值为1,否则为0。

3 图书馆个性化推荐应用

3.1 推荐策略举例

按照读者行为画像构成,生成对应的数据库字段,同时把清洗过的读者基本信息、图书基本信息、空间服务类信息、读者行为信息导入数据库对应的表中。我们可以从数据库查询到读者的信息如:性别、学院、读者类型(本科生、研究生、教工),生成读者特征表,计算读者相似度,生成如性别—图书相关表,表示不同性别读者喜欢阅读的图书;读者类型—图书相关表,表示不同年级的读者喜欢阅读的图书;学院—图书相关表,表示不同专业的读者经常借阅的图书等特征—图书相关表。将相关表中的图书列表按照一定权重统筹管理,得到给读者的最终推荐表。经反复计算可以把不同特征加以组合,特征条件越多,利用的读者统计学特征越多,越能准确地预测读者兴趣。

以2018年6月份随机抽取5位本科、男读者图书借阅记录为例:表2为读者—图书借阅表,表示每位读者借阅的图书;表3为图书—读者倒排表,表示每一本图书都有哪些读者借阅。

表2 读者—图书借阅表

表3 图书—读者倒排表

建立5*5的读者相似度矩阵,初始值为

针对每一本书为W矩阵对应位置赋值,使得矩阵W第i行第j列表示读者i发生过行为的物品集合和读者j发生过行为的物品集合的交集的物品数目。如图书《数学建模竞赛论文》,借阅过该图书的读者ID分别为001和002,对应矩阵W对应位置和加1,以此类推,可以得到最终W矩阵:

对应值代入公式2得到最终的读者兴趣相似度p。如对读者001进行推荐,选取K=3,根据公式2计算,读者001对《图书双城记》《放学后》《活着》的兴趣度分别是0.741581,0.741581,0.333333,分别把他们推荐给读者001。

3.2 基于上下文的读者行为信息推荐程序生成与评估

3.2.1 读者相似度对比分析

不考虑具体偏好值,通过曼哈顿距离(CityBlockSimilarity)、对数似然相似度(LogLikelihoodSimilarity)、谷本系数(TanimotoCoefficientSimilarity)计算读者相似度。谷本系数表示用户之间发生过行为的物品集合的交集与并集大小的比值。由两个用户共同发生过行为的物品数目除以至少一个用户发生过行为的物品数目。基于对数似然比[13]关注的是发生行为的物品中重叠占的比重,反映的是两个用户由于机缘巧合发生重叠的不可能性,即两个相似用户之间发生同样行为不太可能是出于巧合,值越大,两个用户的相似度越高。曼哈顿距离也称为城市街区距离,用于多维数据空间距离的度量。

图2 不同相似度方法下的推荐算法相似度对比

随机抽取数据集中6个用户数据,分别采用基于对数似然比相似度、曼哈顿距离相似度和谷本系数相似度进行相似性度量对比,见图2。图2显示了用户2与其他用户的相似度值,实验结果表明基于对数似然比要比其他两种相似性度量性能更优、更智能、可以更好地计算相似度。

3.2.2 推荐程序评估

在构建的读者画像数据中,只包含读者和物品之间的关联,很少有读者的评分信息。事实上,我们主要关心的是存不存在行为,即读者是否借阅了这本书或者读者是否使用了这个座位。基于读者特征的个性化信息推荐,根据读者的行为数据进行深入挖掘,基于Mahout,采用基于布尔型输入数据的推荐程序,根据数据的特征,将多个推荐引擎混搭,作出对读者未来感兴趣图书的预测,提供理想的推荐。

我们无法准确知道读者未来会借阅哪些图书,引入经典的信息检索度量标准查准率和召回率作为评估推荐算法的重要指标。查准率表示TopN结果中相关结果的比例。召回率表示所有相关结果出现在TopN推荐中的比例。采用清洗、整理后的图书馆读者行为数据作为测试源数据,其中,读者行为数据包括读者ID(PatronNum)和图书ID(ItemNum), 共六万余条数据。

由于数据源不同,没有一个标准的方法指导如何构建推荐程序,我们需要进行数据清洗、实验和评估,反复进行尝试性测试,寻找好的配置参数和方案。为了探讨如何在推荐程序中高效地部署布尔型数据,配置并调整最相似用户领域,我们把源数据分为测试集和训练集,把训练数据导入推荐程序中预测读者行为,把测试数据进行仿真,之后把预测结果和真实值进行对照。预测结果和真实结果的对照采用预测值和真实值的平均差值(函数AverageAb soluteDifferenceRecommenderEvaluator)或者差值的均方根(RMSRecommenderEvaluator)进行计算,值越低意味着估计值和实际偏好值的差别越小。

以下实验采用谷本系数相似度和对数似然相似度分别测试了引入特征的基于用户的协同过滤推荐算法的性能,分析读者相似度时涉及一个当前读者行为最相似用户邻域K参数,即给当前读者推荐K个读者感兴趣的图书或者座位。

图3 不同相似度下推荐算法查准率对比

图3、图4显示了在不同相似度下推荐算法的性能指标评测结果,给出了TopN 中N=10时即为当前读者推荐10个结果时的查准率和召回率对比。基于谷本系数的推荐算法中, K=83时,性能最好,查准率约19.49%,表示给当前读者推荐的10个推荐结果中平均有约1/5推荐结果是好的。K=83时召回率约19.49%,表示约有1/5好的推荐包含在10个推荐结果中。基于对数似然相似度的推荐算法中,K=2时性能最好,查准率和召回率都约为20.31%,K值为85时,性能次之,查准率和召回率都约为19.07%。总之,当K值在80左右,推荐程序性能良好。

同时,考虑预测值和真实值的平均差异,相似用户邻域包含的用户数太少的情况下,性能不是很好,而当选择k值为83左右会获得比较高的查准率和召回率,故综合权衡,我们采用引入时间特征,结合基于用户的推荐算法、谷本系数相似性度量以及最相似读者邻域为83的方法作为推荐最佳方案。

图4 不同相似度下推荐算法召回率对比

4 结语

从海量的数据中挖掘信息,快速而准确地反馈给读者感兴趣的信息,并为之进行有针对性的服务,是提升图书馆服务的主要手段。本文借鉴了电子商务领域的用户画像概念,应用于图书馆服务,通过用户画像构建和读者特征提取,深入挖掘读者在图书馆的行为,向读者推荐感兴趣的信息。这种图书馆领域的数据分析和信息推荐,比泛泛的理论分析更具有实际研究意义。未来,推荐的构建需考虑读者数据私密性因素,探讨如何在推荐的同时更好地生成和展示推荐理由,进一步提高读者对推荐信息的信任度和忠诚度。

(来稿时间:2018年12月)

猜你喜欢

画像图书特征
根据方程特征选解法
威猛的画像
离散型随机变量的分布列与数字特征
“00后”画像
画像
图书推荐
不忠诚的四个特征
欢迎来到图书借阅角
班里有个图书角
潜行与画像