1

Я работаю над реализацией AdaBoost на Java. Он должен работать для «двойных» координат на 2D 3D или 10D. Все, что я нашел для Java, это двоичные данные (0,1), а не для многомерного пространства.Внедрение Adaboost для нескольких измерений в Java

В настоящее время я ищу способ представления измерений и инициализации классификаторов для повышения.

Я ищу предложения о том, как представить многомерное пространство в Java и как инициализировать классификаторы для начала.

Данные находятся между [-15, +15]. И целевые значения равны 1 или 2.

ответ

1

Чтобы использовать расширенное дерево решений для пространственных данных, типичный подход состоит в том, чтобы попытаться найти «точку разделения» на некоторой оси, которая минимизирует остаточную информацию в двух поддеревьях. Для этого вы найдете некоторое значение вдоль некоторой оси (например, ось x), а затем разделите точки данных на две группы - одну группу точек, координата которых находится ниже этой точки разделения, и одна группа точек, координата которых равна выше этой точки разделения. Таким образом, вы преобразовываете вещественные пространственные данные в данные 0/1 - значения 0 равны единицам ниже точки разделения, а 1 - значениям выше точки разделения. Таким образом, алгоритм идентичен AdaBoost, за исключением того, что при выборе оси для разделения вы также должны учитывать потенциальные точки расщепления.

0

Почему вы не используете массив double[] для каждого объекта? Это общий способ представления векторов объектов в Java.

+0

Я не думаю, что это вопрос, который задают; Я думаю, что OP любопытно, как использовать AdaBoost для реальных данных, а не как хранить все внутри. – templatetypedef

+0

Ровно! Я пытаюсь реализовать AdaBoost по «реальным» данным, представленным как «double-type». –

1

Как насчет использования JBoost, я думаю, у него есть то, что вы ищете.

+0

Спасибо за предложение. Я на самом деле нашел его и немного поиграл с ним. Это может быть очень полезно для тех, кто хочет использовать AdaBoost. Первым намерением было реализовать Adaboost самостоятельно. Есть также очень хорошие инструменты, которые поставляются с [Weka] (http://www.cs.waikato.ac.nz/ml/weka/), которые я нашел, что может стать отличной помощью для запуска и использования большого количества интеллектуальных данных алгоритмов, а также доступен исходный код. –

+0

Я не понимаю, хотя .. вы сказали, что все, что вы нашли, работало на «двоичные данные, а не на многомерное пространство», а JBoost не ограничивается одним из них, поэтому ... я думаю, я «Тогда вы путаетесь, что ваш вопрос? –

+0

Никаких намерений запутать, извините за это. Чтобы уточнить мой вопрос: я хотел реализовать AdaBoost самостоятельно, а не просто использовать существующую версию. Это было частью одного из моих проектов. JBoost может быть очень полезен как ссылка и как платформа для запуска AdaBoost. –

 Смежные вопросы

  • Нет связанных вопросов^_^