Вопрос

У меня проблема бинарной классификации:

  • Приблизительно 1000 образцов в тренировочном наборе
  • 10 атрибутов, включая бинарные, числовые и категориальные

Какой алгоритм является лучшим выбором для этого типа проблемы?

По умолчанию я собираюсь начать с SVM (предварительно имея номинальные значения атрибутов, преобразованные в бинарные функции), поскольку он считается лучшим для относительно чистых и не шумных данных.

Это было полезно?

Решение

Трудно сказать, не зная немного больше о вашем наборе данных, и о том, насколько отделим ваш набор данных основан на вашем векторе функций, но я, вероятно, предложил бы использовать экстремальные случайные леса по стандартным случайным лесам из -за вашего относительно небольшого набора выборки.

Экстремальные случайные леса довольно похожи на стандартные случайные леса, за исключением, что вместо оптимизации разделений на деревьях, экстремальные случайные леса делают раскол случайными. Первоначально это показалось бы негативным, но это обычно означает, что у вас значительно лучшее обобщение и скорость, хотя AUC на вашем тренировочном наборе, вероятно, будет немного хуже.

Логистическая регрессия также является довольно прочной ставкой для таких задач, хотя с вашими относительно низкой размерностью и небольшой размером выборки я буду беспокоиться о переоснащении. Возможно, вы захотите проверить, используя K-ближайшие соседки, так как он часто выполняет очень воли с низкими размерными, но обычно не очень хорошо обрабатывает категориальные переменные.

Если бы мне пришлось выбрать один, не зная больше о проблеме, я бы, безусловно, сделал бы свои ставки на экстремальные случайные леса, так как он, скорее всего, даст вам хорошее обобщение на такого рода наборе данных, а также лучше обрабатывает смесь численных и категориальных данных чем большинство других методов.

Другие советы

Для низких параметров, довольно ограниченный размер выборки и бинарная логистическая регрессия классификатора должна быть достаточно мощной. Вы можете использовать более продвинутый алгоритм, но это, вероятно, излишне.

Когда категориальные переменные находятся в миксе, я обращаюсь к лесам случайных решений, поскольку он обрабатывает категориальные переменные непосредственно без преобразования кодирования 1 из N. Это теряет меньше информации.

Линейный SVM должен быть хорошей отправной точкой. Взгляни на это Руководство по выбору правильной оценки.

Не рекомендую сначала использовать сложные методы. Используйте более быстрые простые подходы изначально (KNN, NBC и т. Д.), затем пройти через линейную регрессию, логистическую регрессию, LDA, CART (RF), KREG, а затем к наименьшим квадратам SVM, градиентному восходу SVM, ANNS, а затем MetaHeurustics (Greedyy Эвристический холм лазание с газом, интеллектом роя, оптимизацией колоний муравей и т. Д.)

Лицензировано под: CC-BY-SA с атрибуция
Не связан с datascience.stackexchange
scroll top