Author: gsingers
Date: Sat Nov 12 16:19:38 2011
New Revision: 1201282
URL: http://svn.apache.org/viewvc?rev=1201282&view=rev
Log:
MAHOUT-881: put in place an easy mechanism for calling LoadEvaluator
Added:
mahout/trunk/core/src/test/java/org/apache/mahout/cf/taste/impl/eval/LoadEvaluationRunner.java
Added:
mahout/trunk/core/src/test/java/org/apache/mahout/cf/taste/impl/eval/LoadEvaluationRunner.java
URL:
http://svn.apache.org/viewvc/mahout/trunk/core/src/test/java/org/apache/mahout/cf/taste/impl/eval/LoadEvaluationRunner.java?rev=1201282&view=auto
==============================================================================
---
mahout/trunk/core/src/test/java/org/apache/mahout/cf/taste/impl/eval/LoadEvaluationRunner.java
(added)
+++
mahout/trunk/core/src/test/java/org/apache/mahout/cf/taste/impl/eval/LoadEvaluationRunner.java
Sat Nov 12 16:19:38 2011
@@ -0,0 +1,41 @@
+package org.apache.mahout.cf.taste.impl.eval;
+
+
+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.GenericItemBasedRecommender;
+import org.apache.mahout.cf.taste.impl.recommender.GenericUserBasedRecommender;
+import org.apache.mahout.cf.taste.impl.similarity.EuclideanDistanceSimilarity;
+import org.apache.mahout.cf.taste.model.DataModel;
+import org.apache.mahout.cf.taste.neighborhood.UserNeighborhood;
+import org.apache.mahout.cf.taste.recommender.Recommender;
+import org.apache.mahout.cf.taste.similarity.ItemSimilarity;
+import org.apache.mahout.cf.taste.similarity.UserSimilarity;
+
+import java.io.File;
+
+/**
+ *
+ *
+ **/
+public class LoadEvaluationRunner {
+
+ public static void main(String[] args) throws Exception {
+ DataModel model = new FileDataModel(new File(args[0]));
+ ItemSimilarity similarity = new EuclideanDistanceSimilarity(model);
+ Recommender recommender = new GenericItemBasedRecommender(model,
similarity);//Use an item-item recommender
+ System.out.println("Run Items");
+ for (int i = 0; i < 10; i++){
+ LoadEvaluator.runLoad(recommender);
+ }
+ System.out.println("Run Users");
+ UserSimilarity userSim = new EuclideanDistanceSimilarity(model);
+ UserNeighborhood neighborhood = new NearestNUserNeighborhood(10, userSim,
model);
+ recommender = new GenericUserBasedRecommender(model, neighborhood,
userSim);
+ for (int i = 0; i < 10; i++){
+ LoadEvaluator.runLoad(recommender);
+ }
+
+ }
+
+}