Python scikits SVM grid поиск и классификация - PullRequest
0 голосов
/ 10 марта 2012

Я новичок в scikits и svm, и я хотел бы проверить пару вопросов. У меня есть образец 700 предметов и 35 функций, и у меня есть 3 класса. У меня есть массив X с моими образцами и функциями, которые масштабируются с использованием «preprocessing.scale (X)». Первый шаг - найти подходящие параметры SVM, и я использую поиск по сетке с вложенной перекрестной проверкой (см. http://scikit -learn.org / stable / auto_examples / grid_search_digits.html # ). Я использую все мои образцы (X) в «сетке поиска». Во время поиска по сетке данные разделяются на обучение и тестирование (с использованием StratifiedKFold). Когда я получаю свои параметры SVM, я выполняю классификацию, где делю свои данные на обучение и тестирование. Можно ли использовать в поиске по сетке те же данные, которые я буду использовать при реальной классификации?

Ответы [ 2 ]

4 голосов
/ 11 марта 2012

Можно ли использовать в поиске в таблице те же данные, которые я буду использовать во время реальной классификации?

Можно использовать эти данные для обучения (подгонки) aклассификатор.Перекрестная проверка, как это сделано StratifiedKFold, предназначена для ситуаций, когда у вас недостаточно данных для хранения набора проверки при оптимизации гиперпараметров (настроек алгоритма).Вы также можете использовать, если вам лень создавать разделитель проверочного набора и вы хотите положиться на встроенную перекрестную проверку scikit-learn:)

Параметр refit для GridSearchCV переучит оценщикна полном обучающем наборе после нахождения оптимальных настроек с перекрестной проверкой.

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

0 голосов
/ 10 марта 2012

Я не специалист по машинному обучению, но, насколько я знаю, преимущество перекрестной проверки заключается в том, что она безопасна при переоснащении.Следовательно, для окончательной оценки должно быть вполне нормально использовать классификатор с наилучшими показателями (согласно результатам резюме).

Однако возникает вопрос, зачем вам нужна «реальная классификация» наданные у вас уже есть ярлыки?Какова конечная цель (оценка производительности SVM или классификация)?

...