您现在的位置: 论文网 >> 公共管理论文 >> 图书馆管理论文 >> 基于协同过滤算法在图书馆学的应用论文

基于协同过滤算法在图书馆学的应用

出处:论文网
时间:2017-05-16

基于协同过滤算法在图书馆学的应用

  一、协同过滤算法的定义

  协同过滤技术的基本思想是:利用一些兴趣爱好相似、拥有相同经验群体的偏好给目标用户推荐可能感兴趣的项目。协同过滤算法的实现大致分为构建用户,形成项目矩阵,寻找最近邻居,产生最相似推荐数据三个步骤。目前主要有两类协同过滤推荐算法:基于用户的协同过滤推荐算法和基于项目的协同过滤推荐算法。基于用户的协同过滤推荐算法是根据目标用户的最相似的若干用户对某个项目的评分,从中找到与目标用户最相似的用户,参考其对目标项目的评分,从而决定是否推荐给目标用户;基于项目的协同过滤推荐算法其总体思路就是根据用户的评价数据,为每个物品计算出与其评价最为相近的其他项目。然后,当我们想要为目标用户提供推荐的时候,就可以查看他曾经评分过的项目,并从中选出排位靠前的项目,再根据相关加权函数构建出一个加权列表,其中包含了与这些选中项目最为相近的其他项目。得到项目之间的相似性后,可以将与用户评价过的相似度较高的项目推荐给目标用户。

  二、协同过滤算法的应用

  随着图书馆馆藏图书资源的增多,以及计算机网络技术的高速发展,各高校都建立起自己的图书借阅管理系统,利用积累的图书借阅历史资料,对符合学生兴趣并且适合个性发展的图书进行推荐,从而提高图书的利用率,减少学生寻找资料的时间,提高学习效率。

  图书馆的推荐系统通过将学生读者的兴趣、借阅图书等信息与图书中的属性进行匹配,选择基于物品的协同过滤推荐算法,为学生提供相应的推荐图书。

  首先构建学生信息数据库、图书信息数据库、借阅图书记录;然后,建立学生-图书评分矩阵;其次,判断用户是否有借阅记录,然后在根据不同的协同过滤推荐算法对学生进行图书的推荐。具体如下:

  (一)根据数据库中的学生信息表(学生的基本信息以及喜欢的书籍类型等)及借阅信息,构建属于学生读者的特征向量,即学生读者模型;

  (二)结合由(一)得到的学生读者模型和图书信息,构建图书模型,建立对应的特征向量;

  (三)判断当前用户是新用户或老用户,若用户有借阅信息记录则为老用户,否则为新用户;

  (四)对于老用户,若参考借阅信息记录,则由基于用户的协同过滤算法进行推荐;如果不参考借阅信息记录,则利用基于项目的协同过滤推荐算法进行推荐;

  (五)对新用户,采用基于属性值偏好矩阵的最近邻推荐;

  三、协同过滤算法在图书馆推荐系统应用的体现

  图书推荐功能主要是根据学生的评分作为项,形成一个矩阵。当登录用户即学生读者对已经借阅的图书进行的评价与另一个学生用户已经借阅的图书的评价比较相似,那么就认为该用户与另一个学生用户是相似用户,也就是他的邻居。根据学生邻居集获得他们评分较高的图书集合,进而把这些图书集合推荐给相应学生,并显示到图书列表中。这样可以让学生直观地查看推荐图书情况。

  所有这些功能的实现都是由以下代码所体现:

  User 兴趣 ID

  Book 书名

  Evaluation 评价 书名 用户

  User user = new User(userId);

  //通过用户查询评价

  List evaList = this.getEvaluation(user);

  List bookList = new ArrayList();

  if(null==evaList){

  //新用户

  bookList = this.getBooksByInterest(user.getInterest());

  //按评价数对书籍进行排序

  bookList = this.sortByEvaluation();

  }else{

  //有评价用户

  List userList = this.getUsersByDistance(user);//获得最相近邻居的学生集

  evaList = this.getBooksByDistance(userList);//获得最近邻居成绩记录

  //按评价数进行排序

  evaList = this.sortByEvaluation();

  //将排序后的图书进行装载

  for(Evaluation evaluation :evaList){

  Book book = evaluation.getBook();

  bookList.add(book);

  }

  }

  //推荐评价高的书籍本数

  int num=10;

  List recommendBooks = new ArrayList();

  if(null!=bookList){

  for(int i=0;i

  recommendBooks.add(book);

  }

  }

  return recommendBooks;

  四、总结

  协同过滤推荐算法是基于用户和项目的数据评分矩阵对用户信息进行表示,但是对于图书推荐系统而言的话,随着用户和图书项目数量的不断增加,协同过滤面临严峻的用户评分数据稀疏性问题,导致推荐质量迅速下降;对于图书推荐系统中的新用户而言,系统无法得知其兴趣爱好,无法推荐其相似用户,那么新用户是无法获得推荐书目的,从而导致冷启动问题的产生。所以要尽快解决这些问题的存在,改进算法,使得图书推荐系统可以更好地为学生服务,推荐高质量的图书。(作者单位:河北大学)

基于协同过滤算法在图书馆学的应用

论文搜索
关键字:图书馆学 协同 算法 基于 应用 图书
最新图书馆管理论文
图书馆图书资料信息化管理研讨
试论如何加强图书馆人力资源管理与创新
试论高校图书馆动态化管理建设
物联网技术在图书馆管理中的运用探讨
高校图书馆管理人员素质提升影响因素探讨
知识管理与高校图书馆服务创新的构想
新媒体时代公共图书馆信息化发展存在的问题
试论数字环境中图书馆管理创新策略
高校图书馆书库管理与读者借阅服务探讨
论乡村文化振兴视域下乡镇图书馆的建设
热门图书馆管理论文
浅谈数字图书馆建设
走向公共管理的治理理论
知识经济时代的图书馆人力资源管理创新
网络环境下我国图书馆服务模式的演变
创新:迈进新世纪的图书馆管理
地方高校图书馆数字化建设若干问题的探析
新公共管理:当代西方公共行政的新趋势
高校图书馆如何为高等函授教育服务
信息资源:特点·价值·机制
浅析高校图书馆的管理创新