【发布时间】:2013-08-09 13:34:06
【问题描述】:
我正在尝试使用PearsonCorrelationSimilarity 评估一个简单的基于项目的推荐器。
我从包含 userid、itemid、preference、timestamp 的文件中加载DataModel(按此顺序)
我的代码看起来像这样:
DataModel model = new FileDataModel(new File("FILE_NAME"));
RecommenderEvaluator evaluator = new AverageAbsoluteDifferenceRecommenderEvaluator();
RecommenderBuilder recommenderBuilder = new RecommenderBuilder() {
@Override
public Recommender buildRecommender(DataModel model) throws TasteException {
ItemSimilarity similarity = new PearsonCorrelationSimilarity(model);
Optimizer optimizer = new ConjugateGradientOptimizer();
return new KnnItemBasedRecommender(model, similarity, optimizer, N);
}
};
score = evaluator.evaluate(recommenderBuilder, null, model, 0.7, 1.0);
当我运行它时,我得到了很多
INFO eval.AbstractDifferenceRecommenderEvaluator: Item exists in test data but not training data:
这是否与我的DataModel 或评估员有关。我已经尝试过RMSRecommenderEvaluator 和AverageAbsoluteDifferenceRecommenderEvaluator,但我收到了相同的信息通知。我也尝试过使用RandomUtils.useTestSeed();.
当我使用UserSimilarity 指标运行相同时,我没有这个问题。
我的问题是这会影响我的评估结果吗?
谢谢。 德拉甘
【问题讨论】:
标签: mahout recommendation-engine mahout-recommender