我已经从ItemSimilarity工作中获得了项目列表及其相似之处。我现在想用它来获取特定用户的建议。我现在使用的Java代码不起作用,因为我找不到将.txt文件传递给itemSimilarity的正确方法。这是我到目前为止的代码:
class RecommenderIntro {
public static void main(String [] args)抛出异常{
DataModel model = new FileDataModel(new File("dataset/input/input.txt"));
DataModel itemSimilaritiesModel = new FileDataModel(new File("dataset/output/part-r-00000"));
ItemSimilarity itemSimilarity = new GenericItemSimilarity(itemSimilaritiesModel);
Recommender recommender = new GenericItemBasedRecommender(model, itemSimilarity);
Recommender cachingRecommender = new CachingRecommender(recommender);
List<RecommendedItem> recommendations = cachingRecommender.recommend(137413350, 10);
system.out.print(recommendations);
}
}
只需知道如何使用预先编译的.txt项目文件向用户推荐特定项目
非常感谢
答案 0 :(得分:0)
第2行没有做任何可以帮助你的事情。这会创建一个FileDataModel
;你不能提供不是用户项目偏好的东西,而我认为这是项目项目相似性的一些文字表示。它可能不会失败,因为它们都是CSV,但结果并不是项目项目的相似性。
你想要的是FileItemSimilarity
。