java - Mahout 和数据模型的自定义表

标签 java mysql mahout

文档说评级表应如下所示:

CREATE TABLE taste_preferences (
  user_id BIGINT NOT NULL,
  item_id BIGINT NOT NULL,
  preference REAL NOT NULL,
  PRIMARY KEY (user_id, item_id)
);

但是,在我的实现中,评级表如下:

CREATE TABLE taste_preferences (
  profile_id BIGINT NOT NULL,
  event_id BIGINT NOT NULL,
  status_id BIGINT NOT NULL,
  PRIMARY KEY (user_id, item_id)
);

成绩采用 status_id 形式(去,不去,也许我会去)。

用户表如下:

 CREATE TABLE user (
  profile_id_1 BIGINT NOT NULL,
  profile_id_2 BIGINT NOT NULL,
  profile_id_3 BIGINT NOT NULL,
  ...
);

一个用户可以有多个个人资料,我需要将这些数据与用户进行比较。

我需要编写自己的数据模型实现吗?我认为哪种方法可以解决这个问题?谢谢!

最佳答案

您此处没有任何形式的评分数据。因此,您不能在推荐中使用评级。没关系;你只有“boolean ”数据。

或者,您说您需要使用状态,但我不清楚您想如何使用它。

您当然可以使用您的taste_preferences 表。只需使用 MySQLBooleanPrefJDBCDataModel 或类似的。 user 表是不相关的。

关于java - Mahout 和数据模型的自定义表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11341259/

相关文章:

hadoop - 将基于 Mahout Item 的推荐器输出格式更改为表格

java - Mahout IntDoubleProcedure NoClassDefFoundError

java - Spring Batch (modular=true) 创建作业配置 bean 两次

java - 访问不同包中的继承子类

java - onCreate() 被无限调用

mysql - 如何循环遍历表的所有行? (MySQL)

mysql - 通过主键查找外键?

php - 处理大型 If 语句? - PHP

algorithm - mahout 中 StandardNaiveBayesClassifier 和 ComplementaryNaiveBayesClassifier 的区别

Java int 到带有特殊字符的 char