当前推荐领域一些公开的据集都是关于电影和音乐的(比如Netflix、Movielens等),没有关于图书推荐的数据。本文将要介绍的就是一份用于图书推荐的数据集,该数据来源于goodreads网站,包含1万本最受欢迎图书的6百万评分数据,由以下数据组成:
- 评分数据
- 被用户标记为想读的图书
- 图书详情(作者、年份等)
- 图书标签
ratings.csv
包含按时间存储的评分数据,大小为69MB,结构如下:
user_id,book_id,rating
1,258,5
2,4081,4
2,260,5
2,9296,5
2,2318,3
评分范围1-5;图书ID是1-10000的连续数字;用户ID是1-53424的连续数字。
to_read.csv
被用户标记为想读的数据,有将近1百万条按照时间存储的user_id、book_id对。
books.csv
从goodreads的XML文件中抽取出来的每本书的详情(goodreads ID、作者、书名、平均分等),XML源文件保存在books_xml目录下。
books_tags.csv
用户分配给图书的标签,通过ID表示;按照goodreads_book_id升序、count降序存储,其中count表示有多少用户为该图书标记该标签。
goodreads_book_id,tag_id,count
1,30574,167697
1,11305,37174
1,11557,34173
tags.csv
标签ID对应的标签名。
tag_id,tag_name
0,-
19,--your-message-here--
25,-fiction
26,-fictional
27,-fictitious
关于图书ID
一本书可能有很多版本,goodreads_book_id和best_book_id通常是指最受欢迎的版本。而goodreads中的work_id指的是抽象意义的书,通过该ID会列出该书的所有版本。ratings.csv和to_read.csv中的book_id指的是work_id而不是goodreads_book_id,这意味着不同版本的评分是经过聚合处理的。