I don't see this behavior. Each result is slightly different by about +/-2%
when I run it, as expected.

On Thu, Sep 29, 2011 at 7:15 AM, Lance Norskog <[email protected]> wrote:

> If you run this version of GroupLensRecommenderEvaluatorRunner, an odd
> thing
> happens. The first evaluation will be number X, the second will be Y, the
> third will be Y, ..., the Nth will be Y. The same Y as the second and the
> third and the fourth. The RecommenderEvaluator implementation is
> stochastic,
> but this should be a different number each time. Anyone know how this could
> happen? (You can load the DataModel outside the loop, the numbers are the
> same.)
>
>  public static void main(String... args) throws IOException,
> TasteException,
> OptionException {
>    File ratingsFile = TasteOptionParser.getRatings(args);
>    long first = System.currentTimeMillis();
>    long last = first;
>    for(int i = 0; i < 30; i++) {
>      DataModel model = ratingsFile == null ? new GroupLensDataModel() : new
> GroupLensDataModel(ratingsFile);
>      RecommenderEvaluator evaluator = new
> AverageAbsoluteDifferenceRecommenderEvaluator();
>      double evaluation = evaluator.evaluate(new
> GroupLensRecommenderBuilder(),
>          null,
>          model,
>          0.9,
>          0.3);
>      long now = System.currentTimeMillis();
>      log.info("Result #{}: {}", i, String.valueOf(evaluation));
>      log.info("\t{} ms", now - last);
>      last = System.currentTimeMillis();
>    }
>    log.info("Total time: {} ms", last - first);
>  }
>
>
> --
> Lance Norskog
> [email protected]
>

Reply via email to