文档介绍:基于协同过滤算法在图书馆学的应用一、协同过滤算法的定义协同过滤技术的基本思想是:利用一些兴趣爱好相似、拥有相同经验群体的偏好给目标用户推荐可能感兴趣的项目。协同过滤算法的实现大致分为构建用户,形成项冃矩阵,寻找最近邻居,产生最相似推荐数据三个步骤。H前主要有两类协同过滤推荐算法:基于用户的协同过滤推荐算法和基于项n的协同过滤推荐算法。基于用户的协同过滤推荐算法是根据H标用户的最相似的若干用户对某个项H的评分,从中找到与FI标用户最相似的用户,参考其对目标项目的评分,从而决定是否推荐给目标用户;基于项目的协同过滤推荐算法其总体思路就是根据用户的评价数据,为每个物品计算出与其评价最为相近的其他项Ro然后,当我们想要为目标用户捉供推荐的时候,就可以查看他曾经评分过的项目,并从中选出排位靠前的项目,再根据相关加权函数构建出一个加权列表,其中包含了与这些选中项冃最为相近的其他项目。得到项目之间的相似性后,可以将与用户评价过的相似度较高的项目推荐给目标用户。二、协同过滤算法的应用随着图书馆馆藏图书资源的增多,以及计算机和网络技术的高速发展,各高校都建立起口己的图书借阅管理系统,利用积累的图书借阅厦丈资料,对符合学生兴趣并且适合个性发展的图书进行推荐,从而提高图书的利用率,减少学生寻找资料的时间,提高学习效率。图逊的推荐系统通过将学生读者的兴趣、借阅图书等信息与图书中的属性进行匹配,选择基于物品的协同过滤推荐算法,为学生提供相应的推荐图书。首先构建学生信息数据库、图书信息数据库、借阅图书记录;然后,建立学生-图书评分矩阵;其次,判断用户是否有借阅记录,然后在根据不同的协同过滤推荐算法对学生进行图书的推荐。具体如下:(一) 根据数据库中的学生信息表(学生的基本信息以及喜欢的书籍类型等)及借阅信息,构建属于学生读者的特征向量,即学生读者模型;(二) 结合由(一)得到的学生读者模型和图书信息,构建图书模型,建立对应的特征向量;(三) 判断当前用户是新用户或老用户,若用户有借阅信息记录则为老用户,否则为新用户;(四) 对于老用户,若参考借阅信息记录,则由基于用户的协同过滤算法进行推荐;如果不参考借阅信息记录,则利用基于项n的协同过滤推荐算法进行推荐;对新用户,采用基于属性值偏好矩阵的最近邻推荐;三、协同过滤算法在图书馆推荐系统应用的体现图书推荐功能主要是根据学生的评分作为项,形成一个矩阵。当登录用户即学生读者对己经借阅的图书进行的评价与另一个学生用户己经借阅的图书的评价比较相似,那么就认为该用户与另一个学生用户是相似用户,也就是他的邻居。根据学生邻居集获得他们评分较高的图书集合,进而把这些图书集合推荐给相应学生,并显示到图书列表中。这样可以让学生直观地查看推荐图书情况。所有这些功能的实现都是由以下代码所体现:User兴趣IDBook书名Evaluation评价书名用户Useruser=newUser(userid);//(user);ListbookList=newArrayList();if(null==evaList){//新用户bookList=(user,getlnterest());//