PC版
搜索导航
论文网 > 公共管理论文 > 图书馆管理论文

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

  一、协同过滤算法的定义
  协同过滤技术的基本思想是:利用一些兴趣爱好相似、拥有相同经验群体的偏好给目标用户推荐可能感兴趣的项目。协同过滤算法的实现大致分为构建用户,形成项目矩阵,寻找最近邻居,产生最相似推荐数据三个步骤。目前主要有两类协同过滤推荐算法:基于用户的协同过滤推荐算法和基于项目的协同过滤推荐算法。基于用户的协同过滤推荐算法是根据目标用户的最相似的若干用户对某个项目的评分,从中找到与目标用户最相似的用户,参考其对目标项目的评分,从而决定是否推荐给目标用户;基于项目的协同过滤推荐算法其总体思路就是根据用户的评价数据,为每个物品计算出与其评价最为相近的其他项目。然后,当我们想要为目标用户提供推荐的时候,就可以查看他曾经评分过的项目,并从中选出排位靠前的项目,再根据相关加权函数构建出一个加权列表,其中包含了与这些选中项目最为相近的其他项目。得到项目之间的相似性后,可以将与用户评价过的相似度较高的项目推荐给目标用户。
  二、协同过滤算法的应用
  随着图书馆馆藏图书资源的增多,以及计算机和网络技术的高速发展,各高校都建立起自己的图书借阅管理系统,利用积累的图书借阅历史资料,对符合学生兴趣并且适合个性发展的图书进行推荐,从而提高图书的利用率,减少学生寻找资料的时间,提高学习效率。
  图书馆的推荐系统通过将学生读者的兴趣、借阅图书等信息与图书中的属性进行匹配,选择基于物品的协同过滤推荐算法,为学生提供相应的推荐图书。
  首先构建学生信息数据库、图书信息数据库、借阅图书记录;然后,建立学生-图书评分矩阵;其次,判断用户是否有借阅记录,然后在根据不同的协同过滤推荐算法对学生进行图书的推荐。具体如下:
  (一)根据数据库中的学生信息表(学生的基本信息以及喜欢的书籍类型等)及借阅信息,构建属于学生读者的特征向量,即学生读者模型;
  (二)结合由(一)得到的学生读者模型和图书信息,构建图书模型,建立对应的特征向量;
  (三)判断当前用户是新用户或老用户,若用户有借阅信息记录则为老用户,否则为新用户;
  (四)对于老用户,若参考借阅信息记录,则由基于用户的协同过滤算法进行推荐;如果不参考借阅信息记录,则利用基于项目的协同过滤推荐算法进行推荐;
  (五)对新用户,采用基于属性值偏好矩阵的最近邻推荐;
  三、协同过滤算法在图书馆推荐系统应用的体现
  图书推荐功能主要是根据学生的评分作为项,形成一个矩阵。当登录用户即学生读者对已经借阅的图书进行的评价与另一个学生用户已经借阅的图书的评价比较相似,那么就认为该用户与另一个学生用户是相似用户,也就是他的邻居。根据学生邻居集获得他们评分较高的图书集合,进而把这些图书集合推荐给相应学生,并显示到图书列表中。这样可以让学生直观地查看推荐图书情况。
  所有这些功能的实现都是由以下代码所体现:
  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;
  四、总结
  协同过滤推荐算法是基于用户和项目的数据评分矩阵对用户信息进行表示,但是对于图书推荐系统而言的话,随着用户和图书项目数量的不断增加,协同过滤面临严峻的用户评分数据稀疏性问题,导致推荐质量迅速下降;对于图书推荐系统中的新用户而言,系统无法得知其兴趣爱好,无法推荐其相似用户,那么新用户是无法获得推荐书目的,从而导致冷启动问题的产生。所以要尽快解决这些问题的存在,改进算法,使得图书推荐系统可以更好地为学生服务,推荐高质量的图书。(作者单位:河北大学)

相关论文

图书馆学协同算法基于应用图书
试论高校图书馆动态化管理建设
试论舞台美术设计中的LED屏幕应用
试论如何加强图书馆人力资源管理与创
基于现金流量税重构国际税收规则的理
图书馆图书资料信息化管理研讨
写生课程融入学前教育美术教学的应用
浅谈乡村振兴战略的基层公共图书馆建
试论企业文化与企业战略的协同管理策
试论战略成本会计在企业管理中的应用
新文科建设背景下管理类应用型本科人