最近,我开始在学习中使用 R 的推荐实验室包。
这是recommenderlab
文件:
http://cran.r-project.org/web/packages/recommenderlab/vignettes/recommenderlab.pdf
本文档中有一些示例,但我有一个很大的问题。
首先,加载recommenderlab包和Jester5k数据集。
library("recommenderlab") data(Jester5k)
使用 Jester5k 的前 1000 条记录(用户)来学习。推荐算法很流行。
r <- Recommender(Jester5k[1:1000], method="POPULAR")
然后预测第 1001 个用户的推荐列表。列出前 5 项。
recom <- predict(r, Jester5k[1001], n=5)<br/> as(recom, "matrix")
输出:
[1] "j89" "j72" "j47" "j93" "j76"<br/>
然后我检查上面5个项目的评级。
rating <- predict(r, Jester5k[1001], type="ratings")<br/> as(rating, "matrix")[,c("j89", "j72", "j47", "j93", "j76")]
输出:
j89 j72 j47 j93 j76<br/>
2.6476613 2.1273894 0.5867006 1.2997065 1.2956333<br/>
为什么前5名是“j89”“j72”“j47”“j93”“j76”,而j47的评分只有0.5867006。
我不明白。
如何recommenderlab
计算每个项目的评分ratingMatrix
?
以及它是如何产生 TopN 列表的?