2017-04-18 54 views
1

我使用的是Apache Mahout程序库,但我无法理解它的工作原理,因为它适用于我的一些案例,并且不适用于其他案例。 我一个使用Apache Mahout的0.12.2版本在Java中8Apache Mahout推荐程序不能正常工作

代码

public class SampleRecommender { 

public static void main(String[] ars) throws IOException, TasteException 
{ 
    DataModel dataModel = new FileDataModel(new File("E:\\Rakshit\\Recommender\\stackdata.csv")); 
    UserSimilarity similarity = new PearsonCorrelationSimilarity(dataModel); 
    UserNeighborhood neighborhood = new ThresholdUserNeighborhood(0.1, similarity, dataModel); 
    UserBasedRecommender recommender = new GenericUserBasedRecommender(dataModel, neighborhood, similarity); 

    List<RecommendedItem> recommendations = recommender.recommend(3,3); 

    for(RecommendedItem item : recommendations) 
    { 
     System.out.println(item); 
    } 
} 

}

例如用于下列数据不起作用

3,101,5.0 
3,102,5.0 
3,104,5.0 
4,102,2.0 
4,104,4.0 
4,105,2.5 
4,107,3.0 
5,101,5.0 
5,102,5.0 
5,104,5.0 
5,105,4.0 

虽然这个数据有效

3,101,5.0 
3,102,2.0 
3,105,2.5 
4,102,2.0 
4,104,4.0 
4,105,2.5 
4,107,3.0 
5,101,5.0 
5,102,3.4 
5,104,2.5 
5,105,2.5 

输出

RecommendedItem[item:104, value:3.3029697] 

在两个数据所不同的是在5

任何帮助,将理解

+0

我很乐意帮助,但是这是一个非常糟糕形成问题。我不会失望,但是我们需要很多关于你做了什么,代码,CLI驱动程序的信息? Mahout版本? Spark版本?等等 – rawkintrevo

回答