2015-12-29 2 views
0

Мне интересно, следует ли масштабировать категориальные объекты после преобразования в одно горячее кодирование (например, 0 0 0 1 0 0 для 6 возможных значений переменной) по реальным функциям с использованием svm-scale функция. Похоже, что руководство libsvm так говорит.libsvm масштабирование функций реального и категориального

Кроме того, что влияет на обучение в SVM, если есть некоторые функции, которые являются недискриминационными, например. случайный шум? Должен ли я удалять такие функции перед обучением? Я предполагаю, что это может повлиять на обучение, потому что SVM по существу вычисляет евклидовы расстояния между точками данных, которые представлены в виде векторов признаков. Я не очень беспокоюсь о времени работы, так как количество функций мало. Пожалуйста, укажите стандартную реализацию алгоритма выбора объектов для svm. Любое предложение приветствуется.

спасибо.

ответ

0

Вы несколько вопросов в там:

1) Если 0-1 функции масштабируются?
2) Каков эффект шумовых характеристик?
3) Должны ли быть устранены шумовые особенности?
4) Если да, то как?

Общий ответ на (1) и (3) заключается в том, что вы должны использовать кросс-валидацию (или проверку валидации на выносливость), попробуйте обеими способами и сохраните в зависимости от того, что лучше оценивается при перекрестной проверке. Если я собираюсь догадаться, я бы сказал, что масштабирование 0-1 функций, вероятно, не имеет большого значения, потому что SVM не , что зависит от масштаба, если все функции O (1), которые находятся. Умеренное количество шумовых функций, вероятно, тоже нормально. Что касается (2), вы уверены, что шумовые особенности обычно несколько ухудшают производительность SVM. Выбор функции - большая тема. В нем есть достойное введение в scikit-learn user guide.

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