2

私は library("recommenderlab") を使用しており、「ユーザー ベースの協調フィルタリング (UBCF)」を使用してレコメンダー モデルを作成したいと考えています。これのデフォルトの類似度はコサインですが、ピアソンに変更したいと思います。ここに私のコードの抜粋があります

## create a matrix with ratings
m <- matrix(sample(c(as.numeric(0:5), NA), 50,  
+   replace=TRUE, prob=c(rep(.4/6,6),.6)), ncol=10,  
+   dimnames=list(user=paste("u", 1:5, sep=''),  
+   item=paste("i", 1:10, sep=''))) 

## coerce into a realRatingMAtrix
r <- as(m, "realRatingMatrix")  

## Create a recommender using "UBCF" with default cosine similarity 
uu.rec=Recommender(r[1:5],method="UBCF")  

Recommender はレジストリ メカニズム (「recommenderRegistry」と呼ばれる) を使用するため、既定のメソッドは次のように見つけることができます。

getModel(uu.rec)$method

[1]「コサイン」

問題は、これを「ピアソン」の類似性にどのように変更できるかということです。

ありがとう!

4

1 に答える 1

1

Recommender() の 3 番目のパラメーターである parameter を使用して、使用する類似度メトリックをアルゴリズム (recommender メソッド) に渡します。

uu.rec=Recommender(data=r[1:5], method="UBCF", param=list(normalize="Z-score", method="pearson", nn=50, minRating=3, sample=F)
于 2013-04-21T20:33:53.207 に答える