基于内容的Web个性化推荐技术研究,本文主要内容关键词为:技术研究论文,内容论文,Web论文,此文献不代表本站观点,内容供学术参考,文章仅供参考阅读下载。
[分类号]TP393.4
1 Web个性化服务概述
Web的日益膨胀使一般网站所提供的“单尺码(one size fits all)”服务显然无法满足人们欲从超负载的Web资源中发现自己所想要的信息。因此,针对单个用户进行的个性化信息服务——在合适的时间以合适的形式向特定的对象发布合适的信息——已经成为Web站点设计所追求的目标,它是Web信息服务的一种全新模式,是电子商务站点增加再生业务的“一对一营销”途径,也是Web信息资源发现和电子商务领域的一场自动化、智能化革命。
所谓Web个性化其实就是为Web访问者提供符合其兴趣、角色和需求的信息或应用。Web个性化是这样一个过程:收集并存储关于站点访问者的信息,分析这些信息,然后根据分析结果在合适的时间向每一位访问者发布适当的信息[1-2]。
就目前来说,个性化服务主要应用于Web内容和电子商务中项目(产品)的推荐、个性化门户定制以及自适应Web站点中。就个性化的实现来说,可以通过手工定制,也可以通过自动个性化信息发布途径。前者如让用户通过复选框来选择自己感兴趣的内容,例如My Yahoo!以及其他的Web个性化门户。这种方式要求用户主动参与,例如填写一个表单,或者回答一组决策树式的问题。此外定题服务也属于这种服务模式。后者如以角色定制为主的简单过滤、基于内容途径、协同过滤技术、混合过滤技术、基于规则技术和基于Web使用挖掘技术等。下面将重点讨论基于内容的Web个性化信息发布技术的一般思想,以及对这种思想进行改进并应用于文本文档推荐的算法模型。
2 基于内容过滤的一般思想[1,3-4]
基于内容过滤通过分析项目的内容来形成一个访问者的兴趣表达。通常,这种分析需要识别每个项目的一组关键属性,也就是所谓的内容维,然后填写维值。
我们首先看一种应用于影视剧推荐的最容易理解的基于内容过滤。下面的示例(表1)使用7个属性来分析影视剧内容:动作、戏剧、色情、暴力、悬念、幽默和叛逆。评价等级0到10表示了这些属性的强度,如暴力评价等级10表示极度暴力,而等级0则表示非暴力。这些属性的值可以来自于用户评价,也可以由数据管理者指定。
表1 基于内容过滤的例子
基于内容过滤使用著名的“欧几里德距离”或“最近邻居”等概念对这些评价分级进行分析,从而确定对于任何一部影视剧,有哪些影视剧与其评价分级最接近,以便将这些内容相近的影视剧推荐给订购该影视剧的访问者。这里所说的欧几里德距离实际上是将任意两个目标影视剧分别看成向量,如
这里计算出的欧几里德距离可以作为两个项目之间“临近性”的表示。因此对于某个目标项目,基于内容的过滤技术实际上就是要找出与目标项目最临近(即欧几里德距离最小)的前K个邻居项目。并将这前K个邻居项目推荐给那些对目标项目感兴趣的用户。实际上,我们也可以通过余弦、相似度系数等度量方式计算两个项目向量之间的相似度,并将这个相似度作为项目临近性的表示。
对于影视剧例子,我们从表中可以发现《Silence of the Lambs》的内容和《Seven》最接近,因而我们可以将《Seven》推荐给对《Silence of the Lambs》感兴趣的客户。
对这个例子我们进行抽象,不难得出基于内容过滤的一般思想:对于给定的一组项目,我们使用一组内容维对其内容进行表示。于是我们可以得到一个项目一维矩阵。矩阵中的每一行表示某个项目的内容维向量,向量中的每个元素(维)为该项目对应维的评分。对于某个目标项目(也就是用户当前的兴趣表示),我们可以通过多种方式(例如欧几里德距离、向量余弦、相似度系数等)计算其他项目与该目标项目之间的临近性,从而找出与目标项目最临近的一组邻居,并将这组邻居推荐给对目标项目感兴趣的用户。
基于内容系统在决定对某个已知用户的推荐时不考虑其他用户的反馈。其思想是根据用户的访问内容描述用户行为。如在电子商务站点跟踪用户行为的过程中,用户行为内容指的就是其访问过的一组文本文档。
同时,电子商务站点对一组产品所进行的分类或者聚类也是基于产品的内容。对于一个已知用户,我们可以使用信息检索相似度技术对用户行为进行分类从而比较类别内容以及用户访问模式内容。比较的结果就可以用于产品推荐。这其中的思想是创建一个分类系统并根据用户曾经购买的产品的内容所属的类来描述每一个用户的特征。通过分析用户曾经浏览过的Web页面进行Web页面推荐也可以采用类似的技术。
基于内容过滤有其优点,如直接、简单,同时用户反馈量丰富,但是其缺乏类似协同过滤技术在分析整个等同组行为进行推荐的过程中所表现出的复杂性和精密性。
基于内容的过滤存在的一个主要问题是怎样去分析每个项目的内容。对于某些项目来说,我们可以轻松地识别它们的内容维,例如上面的影视剧例子。每一个影视剧都可以通过前面的维来进行评价。评价结果向量可以作为影视剧的内容描述或者陈述向量。对于某些对象例如视频摄象机或者电脑等其它项目,内容分析目前尚不能实现自动化,内容维可能就不是那么明显。就算是内容维容易识别(例如在影视剧案例中),我们还要付出大量的努力或者专业知识来根据这些维评价每一个项目。文本文档是一个例外,因为其内容分析可以自动进行。在信息检索领域,基于内容的途径已经被用来匹配用户特征信息和文本文档。通过使用不同的权重模式,现在已经开发出了许多不同的文档特征抽取技术。
3 应用于文本文档的基于内容途径
根据上面基于内容过滤的一般思想,我们认为,对于文本文档,其内容维可以通过不同的特征表示,例如一个对应预制词典中各个词语的权重(例如斯坦福大学研究的自适应文档推荐系统FAB[5]),也可以是文档属于某个类目的概率(例如文献[6,7])。下面我们将重点讨论这几种不同的基于内容途径。
3.1 基于IR向量空间模型匹配的自适应推荐[5]
这里我们主要描述的是斯坦福大学研究的名为FAB的自适应文档推荐系统。FAB系统(下文简称FAB)进行自适应推荐的基本思想是:将用户的查询作为用户的初始特征描述,然后根据这个特征描述利用标准的信息检索IR操作找出一组最相关的Web页面并将这些页面推荐给用户。用户在浏览这些页面之后,可以对这些页面进行评分。这些评分将作为用户反馈返回到系统中,系统根据这些反馈对用户的特征描述进行自动更新。
这种基于内容的途径包括4个本质要素,即:
· w Web页面表达。
· m用户兴趣(特征描述)表达。
· r(w,m)用于确定一个Web页面与给定用户兴趣的相关度的函数。
· u(w,m,s)一个根据用户对文档w的反馈s更新用户特征描述的函数。
FAB在设计时基于这样一个假设:页面的内容可以决定用户的兴趣,同时页面的内容可以仅仅使用页面文本中含有的词语来表示,因而所有标记、图象和所有其他超媒体信息可以被忽略掉。FAB通过信息检索领域中所提出的向量空间模型根据文档的组成词语来表达文档的内容。
在这种模型中,文档和查询都被表示成向量。
FAB利用Porter算法(不在本文的讨论范围)忽略那些停用词表中的571个词语,以对文档中所有的词语进行过滤并留下文档的词干(stems)。这之
其中tf[,i]是词语d[,i]在文档w中出现的次数(词语频率),df(i)是所有文档集合中含有词语d[,i]的文档数(文档频率),n是文档集合中所有文档的数量,tf[,max]是w中所有词语的最大词语频率。文档频率是一个近似值,其中使用了一个固定的词典,在FAB中,词典取自5229个随机选择的Web页面样本(因此在上面的方程中n=5229)中的70000个词干。如果不在词典中,则令df(i)=1。
为了减轻内存和通信负载,FAB只使用了文档中100个具有最高权重的词语。一旦这100个词语选出后,w就可以归一成一个单位长度的向量,这就允许对不同长度的文档进行比较。
正如前面所说的,向量不仅用来表示页面,还用来表示用户兴趣即用户特征描述m(与信息检索中的查询对应)。为了测量页面w与特征描述m之间的匹配程度,FAB使用不同的标准IR余弦度量:
r(w,m)=wm
对m的更新也按照标准IR操作:相关度反馈。FAB使用了下面的简单更新规则:
u(w,m,s)=m+sw
其中s是用户对页面w的评分(FAB将用户给予的符号评分即Excellent、Very Good、Good、Neutral、 Poor、Very Bad、Terrible转换成整数3、2、1、0、-1、-2、-3)。
实际上,用户的兴趣一直在实时改变。FAB通过一个简单的衰减函数对这个过程进行建模,即每天晚上都对所有的用户特征乘以一个衰减系数0.97。
3.2 基于文档分类的内容预测途径[6-7]
文献[6]和文献[7]提出了这样一种内容预测途径:将应用于文本文档的基于内容的预测看成是文本分类的问题。首先定义一组类,并先让用户对一组训练文档进行评价,基于这个评价计算每个词语属于某个类别的条件概率,从而得出用户的特征描述。然后根据这个特征描述计算推荐候选集中的各个文档属于某个类的后验概率。最后将这个后验概率作为文档的推荐预测并将具有最高得分的推荐提交给用户。
本文吸取了这种途径的思想,并对文献[6]和文献[7]中的具体应用环境(前者用于影视剧推荐,后者用于书目推荐)进行了抽象,同时对其中的分类思想作了一定的改进。
对于文本文档,我们采用朴素贝叶斯分类法进行归纳学习。我们将文档建模成一个取自于同一个词汇表(表示为V)的有序的词语事件序列。朴素贝叶斯假设认为每一个词语事件的概率依赖于文档类目而独立于词语的语境和位置。
算如下:
其中N为文档类目数量。这个式子也再一次说明了P(D)可以被忽略的原因。
通过上述训练学习方式计算出的所有属于有序词汇表V的特征词语的条件概率(实际上是一个词语-类目矩阵)就可以作为目标用户的特征描述。对于训练文档以外的所有文档,我们都可以使用这些条件概率计算文档属于某个类目的后验概率,并根据所有类目后验概率的数学期望值计算该文档的预期评价。同时将预期评价较高的前K个文档作为推荐提交给目标用户。
我们也可以根据用户的反馈对由训练学习得出的特征描述进行改进,使之越来越接近用户。正如信息检索中的相关度反馈一样,这个反馈周期可以重复进行以产生更好的结果。