Yes, but what answer do you expect here? in this universe of 3 items, that is the most reasonable estimate.
I understand the point that the weighted average can be high based on just a few similar items, that are not that similar. That is a weakness of this approach, but in practice it does not happen this way much. 2011/11/3 myn <[email protected]>: > for example > similarity(2,1)=1 > similarity(2,2)=1 > similarity(3,1)=0.000001 > similarity(3,2)=0.000001 > > rating(u,1))=2 > rating(u,2)) =2 > > Prediction(u,2)= (1*2+1*2)/(1+1)=2 > Prediction(u,3)= (0.000001*2+0.000001*2)/(0.000001+0.000001)=2 > but item2 and item3 is quite different > > i have search lots about cf,bug all is used that > Prediction(u,i) = sum(all n from N: similarity(i,n) * rating(u,n)) / sum(all > n from N: abs(similarity(i,n))) > > > > At 2011-11-03 14:37:59,"Sean Owen" <[email protected]> wrote: >>The formula here is just a weighted average. You have to divide by the >>sum of the weights to normalize the result. >> >>If similarity(i,n) is small, then the denominator is small, yes. But >>so is the numerator. This does not make the result large. >> >>2011/11/3 myn <[email protected]>: >>> in the pagehttps://issues.apache.org/jira/browse/MAHOUT-420 >>> >>> Prediction(u,i) = sum(all n from N: similarity(i,n) * rating(u,n)) / >>> sum(all n from N: abs(similarity(i,n))) >>> >>> why must devide sum(all n from N: abs(similarity(i,n))), if >>> similarity(i,n) is quite small , i don`t want redommend that item,i only >>> want recommend very similary item. it seems that not work very well. >>> >>> >>> >>> >
