[ https://issues.apache.org/jira/browse/MAHOUT-1144?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Sean Owen updated MAHOUT-1144: ------------------------------ Labels: svd svd++ (was: ) Affects Version/s: (was: 0.8) 0.7 > Wrong normalization in SVD++ > ---------------------------- > > Key: MAHOUT-1144 > URL: https://issues.apache.org/jira/browse/MAHOUT-1144 > Project: Mahout > Issue Type: Bug > Components: Collaborative Filtering > Affects Versions: 0.7 > Reporter: Sebastian Schelter > Assignee: Sean Owen > Labels: svd, svd++ > Fix For: 0.8 > > > Reported by Agnonchik: > Seems that I have found a discrepancy of this implementation from the > original Yehuda Koren's SVD++ algorithm. > line 140: > double denominator = Math.sqrt(itemsByUser.size()); > should be > double denominator = Math.sqrt(itemsByUser.get(u).size()); > line 164: > double denominator = Math.sqrt(itemsByUser.size()); > should be > double denominator = Math.sqrt(itemsByUser.get(u).size()); > The sum of y parameters should be normalized by square root of number of > items for which user u provided implicit feedback. Am I right? > Currently, it is normalized by square root of number of users not items. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira