显示 "movie name" 而不是 "movie id" 作为 apache mahout 的推荐
display "movie name" instead of "movie id" as recommendation from apache mahout
我正在使用 apache mahout 开发一个简单的电影推荐系统,在这里引用一个短视频- https://www.youtube.com/watch?v=yD40rVKUwPI。推荐人的代码是
public class App
{
public static List<RecommendedItem> getRecommend(int k) throws Exception
{
ClassLoader classLoader = App.class.getClassLoader();
DataModel model = new FileDataModel(new File(classLoader.getResource("data/dataset.csv").getFile()));
UserSimilarity similarity = new PearsonCorrelationSimilarity(model);
UserNeighborhood neighborhood = new ThresholdUserNeighborhood(0.1, similarity, model);
UserBasedRecommender recommender = new GenericUserBasedRecommender(model, neighborhood, similarity);
List<RecommendedItem> recommendations = recommender.recommend(k, 3);
return recommendations;
}
}
这会以电影 ID 的形式生成推荐's.What 我想要的是显示名称而不是电影 ID。我正在使用的数据集(生成 id)在 csv 格式中有以下列
user_id movie_id rating
但是因为有一个 MovieLens 数据集,它有两个文件——一个有字段
user_id movie_id rating
第二个
movie_id movie_name
如何使用上述资源获取 movie_names 而不是 id。 DataModel class 是否有可能,或者还有其他出路。
我想要推荐
movie_name value
而不是现在
movie_id value
您可能无法单独使用 Mahout。您将需要使用 CSV reader 加载电影片名 CSV 文件,或将其导入数据库,然后自行将电影 ID 映射回名称。
我正在使用 apache mahout 开发一个简单的电影推荐系统,在这里引用一个短视频- https://www.youtube.com/watch?v=yD40rVKUwPI。推荐人的代码是
public class App
{
public static List<RecommendedItem> getRecommend(int k) throws Exception
{
ClassLoader classLoader = App.class.getClassLoader();
DataModel model = new FileDataModel(new File(classLoader.getResource("data/dataset.csv").getFile()));
UserSimilarity similarity = new PearsonCorrelationSimilarity(model);
UserNeighborhood neighborhood = new ThresholdUserNeighborhood(0.1, similarity, model);
UserBasedRecommender recommender = new GenericUserBasedRecommender(model, neighborhood, similarity);
List<RecommendedItem> recommendations = recommender.recommend(k, 3);
return recommendations;
}
}
这会以电影 ID 的形式生成推荐's.What 我想要的是显示名称而不是电影 ID。我正在使用的数据集(生成 id)在 csv 格式中有以下列
user_id movie_id rating
但是因为有一个 MovieLens 数据集,它有两个文件——一个有字段
user_id movie_id rating
第二个
movie_id movie_name
如何使用上述资源获取 movie_names 而不是 id。 DataModel class 是否有可能,或者还有其他出路。 我想要推荐
movie_name value
而不是现在
movie_id value
您可能无法单独使用 Mahout。您将需要使用 CSV reader 加载电影片名 CSV 文件,或将其导入数据库,然后自行将电影 ID 映射回名称。