协同标签系统是一个基于Web的系统,它允许用户上传他们的资源,并且使用任意的词汇(即标签)标注资源。当今,这些系统变得越来越 流 行,例 如 流 行 的Web服 务 提 供 商MovieLens、Flickr、del.icio.us、Last.fm等,允许用户使用标签标注其喜欢的对象[87]。总之,标注正在成为一个新的趋势,使得用户可以很容易地为对象添加元数据。这些附加的元数据能够用于改进搜索机制,更好地构建浏览数据或提供符合用户兴趣的个性化内容。因此,标签信息被广泛应用于基于内存的协同推荐算法中[88]。在属性感知的协同推荐系统中,内容信息被附加于产品中,并且这类信息通常由领域专家提供,对于不同用户,产品展现出同样的属性描述。而标签由用户自己提供,因此,标签不仅仅与对象相关而且与用户相关。尽管标签和属性都是元数据,且都可以作为附加的背景知识用于改进推荐算法,但他们的处理方式却不一样。虽然在属性感知推荐算法方面拥有大量的研究,但对于集成标签到推荐算法中的探索仍然较少[89]。大多数已存在的工作,集中于标签本身的推荐。
以词语关系为基础,推荐系统就能够建立学习资源和知识本体之间的关系。这里将与知识本体相关的关键词项作为学习资源的知识标签并进行标注,因此学习资源与知识本体的关系就可以由标签与本体词汇的向量距离来描述。因此,我们首先需要对学习资源进行关键词的提取,并且在提取过程中应尽可能地过滤掉与知识本体无关的词汇,将学习资源所蕴含的知识本体表达出来,作为该资源所关联的知识标签。
知识标签的提取算法基于TF-IDF(Term Frequency-Inverse Document Frequency,词频-逆向文件频率)算法而改进。该算法是一种重要的关键词提取算法,将文本中所有词汇的TFi,j和IDFi的乘积作为该词语的重要程度数值,取乘积最大的词汇作为关键词。
tfi=TFi,j×IDFi
其中,词频ni,j指的是某一词语在该文件中出现的频率,主要是为了防止词语数量会随着文本的长度线性增加而对词数进行归一化。
逆向文件频率主要用于计算词语的重要程度。如果某个特定的关键词语在两种类别的文章中出现的频率不一样,并且差别较大,则认为该词语能够将这两类文章很好地区分开来,可以给予它们较高的权重值,并选择作为该篇文章的特征词以区别与其他类文档。假设文件总数,包含特定词语的文件总数为nt,该词的IDFi计算方法为除以nt并取对数:
TF-IDF算法作为关键字提取算法已经非常成熟,但应用到学习资源与知识的关联分析时还不够。该算法是以TFi,j和IDFi的乘积作为文章中每个词在特征空间坐标系的取值测度,其核心思想认为最重要的词汇就是在当前文章中出现次数最多以及在其他文章中出现次数尽可能少的词汇,但在对教育资源进行语义解析时,还需要考虑词与知识本体的关联。为了提取那些能够与知识本体尽可能相关的关键词,我们在计算逆向文件频率时加入相应的词汇距离的考虑:如果与知识本体的词向量距离越近,词语的重要程度越高,计算公式为:
公式中Z代表了知识本体词向量的集合,当Z中的某个关键词z与t的相似度超过设定的相似度阈值u,则将该关键词放入集合Zi中,并且选取最接近的距离值作为权重与IDF相乘。右边的统计值Σ表示使用该本体词项反向查询其他关键词项,计算满足相似度阈值λ的关键词项的TF-IDF值在整篇文本中所占的比例,最终结果反映了关键词与知识本体之间的相互关系。
这里介绍采用基于用户相似度和基于项目相结合的协同过滤方法。两者均为计算目标相似性,依据相似性的大小选择最近的邻居集合来预测用户对目标项目的喜好程度。后者在数据充足的情况下准确度和更高,而后者的推荐结果更加稳定,并且能够解决数据稀疏性的问题。通常的做法是在离线阶段就预先计算好所有项目之间的相似性,并存放项目相似性矩阵,在线推荐系统推荐的时候就可以只计算用户的相似度,从而减少了在线的计算时间,提高推荐效率。
前面我们已经构建了学习资源与知识本体的关系,中间媒介是知识标签,这里我们还需要构建用户与知识标签的模型。这里仍然可以使用TF-IDF的改进算法,只不过样本空间从文档变成了用户对标签的使用统计数据,计算公式为:
(www.xing528.com)
公式中n表示用户的总数,nji表示与j标签产生关联的用户数,tf(ji,k)表示用户k对标签的使用频率。用户特征矩阵如表8-1所示,数字表示的是用户与知识标签的权重系数,权重系数越大,则说明知识标签与用户的关联越紧密,也越能体现用户的学习特点。
表8-1 用户—知识标签关系矩阵
到此为止,我们形成了一个三维立体的用户——知识标签——学习资源的关系矩阵,如图8-5所示,单元格内的值分别是两个变量之间的关系矩阵。通过对该矩阵的二维分解,我们便能够通过基于项目和基于用户的协同过滤的方法从两个角度进行学习资源的推荐。
计算多维向量相似性的方法有欧氏距离、皮尔逊相关系数和余弦相似性等,这里介绍采用余弦相似性作为用户对知识标签的关系向量距离的计算方法。假设用户i和j与知识标签的多维关系向量分别为和,通过计算向量的内积除以向量模的乘积可以得到两个向量之间的距离为:
图8-5 用户——知识标签——学习资源三维关系
通过相似性的计算可以得到指定用户u的最相似用户n,再基于用户n的已关联学习资源评价可以产生用户u的学习资源预测评价Pu,i,计算公式为:
公式中sim(u,n)表示用户u与用户n之间的余弦相似性,NN为学习资源的评分矩阵,Rn,i表示用户n对学习资源i的评价,并且整体评价的平均分值为R-u。 最终的计算计算结果Pu,i表示了用户u对未关联学习资源i预测评分,评分越高表示i越合适推荐给用户。
然而Pu,i预测评分的准确性是建立在矩阵NN的数据完整性之上的,如果用户为新用户,其中NN的空值太多,计算结果没有太大意义,为了综合利用用户、学习资源以及知识标签三个矩阵之间的关系,还需要对推荐算法流程作进一步的改进。这里可以再重新结合基于项目的协同过滤推荐算法,设定用户u参与评分的学习资源集合为I{u},用户n参与评分的学习资源集合为I{n}, 得到它们的并集I{u,n}=I{u}∩I{u},对集合I{u,n}中用户u未评分的学习资源采用基于项目的过滤方法重新估计预测评分,将评分矩阵NN中原本为0的数值通过预测变为非0数值,最后使用基于用户的过滤算法产生推荐结果。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。