Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/395.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ssis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Mahout自定义数据_Java_Mahout_Recommendation Engine_Mahout Recommender_Recommender Systems - Fatal编程技术网

Java Mahout自定义数据

Java Mahout自定义数据,java,mahout,recommendation-engine,mahout-recommender,recommender-systems,Java,Mahout,Recommendation Engine,Mahout Recommender,Recommender Systems,我需要使用mahout建立一个推荐系统。我的数据包含以下数据块: userID->用户的数字id foodID->包含食物的数字id(例如番茄酱的id为88) 分级->分级用户对项目的评分从1到5 brandID->foodID品牌的数字id(例如,亨氏可能是id 4) 使用以下代码: UserBasedRecommender recommender; int userId = 5; try { File file = new Fi

我需要使用mahout建立一个推荐系统。我的数据包含以下数据块:

  • userID->用户的数字id
  • foodID->包含食物的数字id(例如番茄酱的id为88)
  • 分级->分级用户对项目的评分从1到5
  • brandID->foodID品牌的数字id(例如,亨氏可能是id 4)
使用以下代码:

 UserBasedRecommender recommender;
        int userId = 5;

        try {
            File file = new File(getClass().getResource("databaseFILE.csv").getFile());
            DataModel dataModel = new FileDataModel(file);

            UserSimilarity userSimilarity = new PearsonCorrelationSimilarity(dataModel);
            UserNeighborhood userNeighborhood = new ThresholdUserNeighborhood(0.1, userSimilarity, dataModel);
            recommender = new GenericUserBasedRecommender(dataModel, userNeighborhood, userSimilarity);

            List<RecommendedItem> recommendations = recommender.recommend(userId, 5);
            for (RecommendedItem recommendation : recommendations) {
                System.out.println(recommendation);
            }


        } catch (IOException e) {
            throw new RuntimeException(e.getMessage(), e);
        } catch (TasteException e) {
            throw new RuntimeException(e.getMessage(), e);
        }
UserBasedRecommender推荐程序;
int userId=5;
试一试{
File File=新文件(getClass().getResource(“databaseFILE.csv”).getFile());
DataModel DataModel=新文件DataModel(文件);
UserSimilarity UserSimilarity=新PearsonCorrelationSimilarity(数据模型);
UserNeighborary UserNeighborary=新阈值UserNeighborary(0.1,用户相似性,数据模型);
recommender=新的GenericUserBasedRecommender(数据模型、用户邻居、用户相似性);
列表建议=推荐人。推荐(userId,5);
对于(建议编辑EM建议:建议){
System.out.println(推荐);
}
}捕获(IOE异常){
抛出新的RuntimeException(e.getMessage(),e);
}捕获(味觉异常e){
抛出新的RuntimeException(e.getMessage(),e);
}
这为itemID及其相应的值提供了一个输出,但是我没有得到brandID的结果。我不知道我将如何改变这一点,以便brandID也可以包含在数据结构中


谢谢你的帮助:)

我想你说的
itemID
你的意思是
foodID
,但我想你需要做的是将你的
foodID
brandID
组合成一个
itemID
哦,对不起,我已经解决了这个问题,是的,我曾考虑过将它们结合起来,但我不确定我的数据库结构是否符合我上面提到的形式。我只想说,我认为您有一个数据争用问题,而不是mahout问题。你的问题是,如何将形式为col-a,col-b,col-c的csv文件转换为形式为col-a,col-b_col-c的csv文件呢,谢谢你,我想我可以这样做,一开始是6位数字代表商品id,另外6位数字代表品牌id。这是你的意思吗?