I came back to give you some additional information about the user 92833 # reviews = 19 # users who has rated the same items that 92833 = 399
2012/6/14 EDUARDO ANTONIO BUITRAGO ZAPATA <[email protected]> > Dear mahout community, > > I have been making some experiments with a dataset that I've scraped from > epinions.com (Electronics category). The dataset has the following > characteristics: > > # Users: 32098 > # Products: 8280 > # Reviews: 43139 > > Sparseness: 99.98% > > I trained a recommender using the example code shown in "mahout in action" > (bellow is the code). I want to recommend ALL items the user hasn't rated > yet because I want to know what would be the rating the user give for a > specific item (So that's why you see recommender.recommend(92833, 100)). I > made the following two experiments: > > 1. Using new NearestNUserNeighborhood (2,similarity, model); > But no recommendations are made > > 2. Using new NearestNUserNeighborhood (10,similarity, model); > But only one recommendation is made RecommendedItem[item:27515, > value:3.7595918] > > I would expect to have more recommendations, ¿am I doing something wrong? > ¿maybe is the sparseness of the matrix? I would appreciate any guidance. > Thanks for looking > > #####CODE##### > > public static void main(String[] args) throws Exception { > > DataModel model = new FileDataModel(new File(PATH_FILE)); > > RecommenderEvaluator evaluator = new > AverageAbsoluteDifferenceRecommenderEvaluator(); > > RecommenderBuilder recommenderBuilder = new RecommenderBuilder() { > @Override > public Recommender buildRecommender(DataModel model) > throws TasteException { > UserSimilarity similarity = new PearsonCorrelationSimilarity( > model); > UserNeighborhood neighborhood = new NearestNUserNeighborhood(10, > similarity, model); > return new GenericUserBasedRecommender(model, neighborhood, > similarity); > } > }; > > double score = evaluator.evaluate(recommenderBuilder, null, model, 0.8, > 1.0); > System.out.println(score); > > Recommender recommender = recommenderBuilder.buildRecommender(model); > > List<RecommendedItem> recommendations = recommender.recommend(92833, > 100); > > for (RecommendedItem recommendation : recommendations) { > System.out.println(recommendation); > } > } > > -- > EDUARDO BUITRAGO > -- EDUARDO BUITRAGO Est. Msc. en Ingeniería - Sistemas y Computación - Universidad de los Andes Ing. de Sistemas - Universidad Francisco de Paula Santander Cisco Certified Network Associate - CCNA
