[ 
https://issues.apache.org/jira/browse/MAHOUT-541?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12974099#action_12974099
 ] 

Tamas Jambor commented on MAHOUT-541:
-------------------------------------

sorry for the late reply.

I had a look at the code, it seems good. I made some slight modifications, 
attached the patch.

I don't know what was the reason of storing the a modified datamodel with the 
predicted rating, it was implemented in mahout, but later removed, as far as I 
remember.

I have tested the speedup, and it was much faster with the 1m movielens. If you 
have a look at the code there are way less calculations needed (especially 
calculating the dot product of the matrix for prediction during training), I 
can run that to confirm. 





> Incremental SVD Implementation
> ------------------------------
>
>                 Key: MAHOUT-541
>                 URL: https://issues.apache.org/jira/browse/MAHOUT-541
>             Project: Mahout
>          Issue Type: Improvement
>          Components: Collaborative Filtering
>    Affects Versions: 0.4
>            Reporter: Tamas Jambor
>            Assignee: Sean Owen
>             Fix For: 0.5
>
>         Attachments: MAHOUT-541.patch, SVDPreference.java, 
> TJExpectationMaximizationSVD.java, TJSVDRecommender.java
>
>
> I thought I'd put up this implementation of the popular SVD algorithm for 
> recommender systems. It is based on the SVD implementation, but instead of 
> computing each user and each item matrix, it trains the model iteratively, 
> which was the original version that Simon Funk proposed.  The advantage of 
> this implementation is that you don't have to recalculate the dot product of 
> each user-item pair for each training cycle, they can be cached, which speeds 
> up the algorithm considerably.

-- 
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