Я недавно сделал это с Hibernate, но нет никакого способа, чтобы класс Hibernate можно было просто поместить в WEKA.Я сделал это следующим образом:
- создать таблицу в базе данных, которая имеет информацию о модели, доступную по мере необходимости (я сделал это, поскольку мне нужно было бы сделать очень сложное, времяпотребляя запросы для каждой строки. Таким образом, я выполняю тяжелую работу один раз и просто читаю ее из простой таблицы)
- создаю вам POJO, DAO, а что нет
- , затем просто настраиваю вашуМодель WEKA
Пример кода (WEKA 3.7)
ArrayList<Attribute> atts = new ArrayList<Attribute>();
atts.add(new Attribute("attribute1"));
atts.add(new Attribute("attribute1"));
atts.add(new Attribute("id", (ArrayList<String>) null));
data = new Instances("yourData", atts, 0);
DAOModel dao = getYourDaoModelHereFromHibernateHoweverYouWantIt();
for (Model m : dao.findAll()) {
vals = new double[data.numAttributes()];
vals[0] = m.getAttribute1();
vals[1] = m.getAttribute2();
vals[2] = data.attribute(2).addStringValue(m.getId());
data.add(new DenseInstance(1.0, vals));
}
data
теперь имеет правильный формат, и алгоритмы могут работать с ним (вы также можете сохранить его в.файл arff, если вы хотите работать с графическим интерфейсом)