[ 
https://issues.apache.org/jira/browse/MAHOUT-195?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Sean Owen resolved MAHOUT-195.
------------------------------

       Resolution: Fixed
    Fix Version/s: 0.3
         Assignee: Sean Owen

OK committed my javadoc change, and getDiff() improvement. TYVM

> doubt about SlopeOneRecommender
> -------------------------------
>
>                 Key: MAHOUT-195
>                 URL: https://issues.apache.org/jira/browse/MAHOUT-195
>             Project: Mahout
>          Issue Type: Question
>          Components: Collaborative Filtering
>            Reporter: Jens Grivolla
>            Assignee: Sean Owen
>            Priority: Minor
>             Fix For: 0.3
>
>
> Looking through the SlopeOne code in order to make some changes, I am having 
> some doubts about how MemoryDiffStorage handles things.
> It looks to me like buildAverageDiffs(), or rather processOneUser() inserts 
> the item pairs in the order they appear in userPreferences, as obtained from 
> dataModel.getPreferencesFromUser(userID).
> So if user A has items (X,Y,Z) we obtain the pairs (X,Y),(X,Z),(Y,Z) and 
> update their averages,
> if user B has items (Z,X,Y) we obtain (Z,X),(Z,Y),(X,Y).
> When using getDiff for (Y,Z) it will not look for the (Z,Y) average that user 
> B contributes to, as the average for (Y,Z) is not null.
> Unless we know that preferences are always ordered, e.g. by itemID, this 
> seems like a bug.  I have not found any mention of it being ordered in the 
> documentation of DataModel or PreferenceArray.  If the items are ordered it 
> would seem to be easier to check the order in getDiff(x,y) instead of trying 
> one, then the other.
> P.s.: I tried to ask on mahout-users, but my message never appeared on the 
> list. There might be some kind of filter rejecting the plus sign in my 
> address or something like that, but it's the one where I receive the list 
> messages.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to