There is a problem in the mailing system I guess. I am sending 1 file in 1
mail. This has the code file.

On Wed, Jul 15, 2009 at 2:15 PM, Sean Owen <[email protected]> wrote:

> There is still only one text file attached. But anyway I believe Thomas has
> identified the problem.
>
> On Jul 15, 2009 1:03 PM, "Laya Patwa" <[email protected]> wrote:
>
> You did not get the code? But I sent it. Anyways please find 3 files
> attached with this mail containing the code and the 2 data files.
> My apologies for the mistake.
>
> On Wed, Jul 15, 2009 at 1:57 PM, Sean Owen <[email protected]> wrote: > >
> Thomas is right, you have...
>
package de.coeud.userbasedrecommender;

import java.util.List;
import java.io.File;

import org.apache.mahout.cf.taste.impl.model.file.FileDataModel;
import org.apache.mahout.cf.taste.impl.neighborhood.NearestNUserNeighborhood;
import org.apache.mahout.cf.taste.impl.recommender.CachingRecommender;
import org.apache.mahout.cf.taste.impl.recommender.GenericUserBasedRecommender;
import org.apache.mahout.cf.taste.impl.similarity.AveragingPreferenceInferrer;
import org.apache.mahout.cf.taste.impl.similarity.PearsonCorrelationSimilarity;
import org.apache.mahout.cf.taste.model.DataModel;
import org.apache.mahout.cf.taste.model.User;
import org.apache.mahout.cf.taste.neighborhood.UserNeighborhood;
import org.apache.mahout.cf.taste.recommender.RecommendedItem;
import org.apache.mahout.cf.taste.recommender.Recommender;
import org.apache.mahout.cf.taste.similarity.UserSimilarity;

public class UserBasedRecommender {

        /**
         * @param args
         */
        public static void main(String[] args) {

                try {
                        DataModel model = new FileDataModel(new 
File("data2/tdata.csv"));
                        
                        UserSimilarity userSimilarity = new 
PearsonCorrelationSimilarity(
                                        model);

                        userSimilarity.setPreferenceInferrer(new 
AveragingPreferenceInferrer(
                                                        model));

                        UserNeighborhood neighborhood = new 
NearestNUserNeighborhood(3,
                                        userSimilarity, model);

                        Recommender recommender = new 
GenericUserBasedRecommender(model,
                                        neighborhood, userSimilarity);
                        List<User> users =  ((GenericUserBasedRecommender) 
recommender).mostSimilarUsers("5", 3);

                        Recommender cachingRecommender = new 
CachingRecommender(recommender);
                        
                        
                        List<RecommendedItem> recommendations = 
cachingRecommender.recommend("3", 20);
//                      List<RecommendedItem> recommendations = 
recommender.recommend("3", 20);
                        System.out.println(recommendations.size());
                        System.out.println(recommendations);
                        System.out.println(users);

                } catch (Exception e) {
                        e.printStackTrace();

                }
        }
}

Reply via email to