Interesting, that is a complicated bit of code. By any chance are you using ints as keys? that could suggest an explanation.
I don't suppose the data might be changing underneath you here? On Wed, Jul 29, 2009 at 9:56 PM, Nico Higgs<[email protected]> wrote: > Hi Sean and everybody! > > I've download Mahout from SVN and followed the FAQ for trying Taste with the > 1M ratings from GroupLens dataset test. First I tried With the > GroupLensRecommender(that uses a FileDataModel) and everythings went ok. > > Then I decide to give a try with the data loaded on MySQL with the Slopone > Recommender. After inserting the ratings.dat in taste_preferences table > (1000029 rows), and the first run (3 hours and a half to generate the > 4922072 rows for the slopeone diffs), I tried to get a recommend but a I'm > getting this error in > the getDiffs method of AbstractJDBCDiffStorage (with the userID=1 and > howMany=5) > > Caused by: java.lang.ArrayIndexOutOfBoundsException: 53 > at > org.apache.mahout.cf.taste.impl.recommender.slopeone.jdbc.AbstractJDBCDiffStorage.getDiffs(AbstractJDBCDiffStorage.java:175) > at > org.apache.mahout.cf.taste.impl.recommender.slopeone.SlopeOneRecommender.doEstimatePreference(SlopeOneRecommender.java:136) > at > org.apache.mahout.cf.taste.impl.recommender.slopeone.SlopeOneRecommender.access$100(SlopeOneRecommender.java:50) > at > org.apache.mahout.cf.taste.impl.recommender.slopeone.SlopeOneRecommender$Estimator.estimate(SlopeOneRecommender.java:219) > at > org.apache.mahout.cf.taste.impl.recommender.slopeone.SlopeOneRecommender$Estimator.estimate(SlopeOneRecommender.java:209) > > > Looking at the code it seems, that the set containg the results of the > diffSQL contains distinct or more data than the preferences of the user. Is > this possible? > > Thanks and regards! > > PD: I'm currently starting with taste so I don't know If i could give any > more help. Nevetherless I will continue to investigate further the problem > and tell you If I found something. >
