我正在尝试使用PearsonCorrelationSimilarity
. 我DataModel
从包含用户 ID、项目 ID、首选项、时间戳(按此顺序)的文件中加载我的代码如下所示:
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
指标运行相同时,我没有这个问题。
我的问题是这会影响我的评估结果吗?
谢谢你。德拉甘