2015-07-15 2 views
-2

У меня проблема классификации. У меня есть набор данных физиологических данных (пульс, сопротивление кожи и т. Д., 4 функции) из эксперимента с 19 людьми. В эксперименте им приходилось выполнять последовательность вещей, которые влияли на них. Вот почему данные разделены на 10 классов для каждого этапа эксперимента. Теперь у меня есть два набора данных: один, содержащий все данные, собранные вместе (начиная с первого лица и заканчивающиеся последним), и один из них разделен на один учебный набор, содержащий 17 человек, и набор тестов, содержащий 2 человека. Теперь я использую Wekas ​​Random Forest для классификации данных, и, что удивительно, в 10-кратной перекрестной проверке с использованием первого набора данных, я получаю почти идеальные результаты (что кажется мне очень странным, я имею в виду проблему с 10 классами и только 4 функции?), но когда я использую отдельные обучающие и тестовые наборы, я получаю очень плохие результаты. Я также попытался делить данные, используя другие 2 человека для тестового набора, такие же плохие результаты. Вопрос в том, чего мне не хватает?Классификация дает странные результаты

ответ

0

Это проблема с высокой дисперсией, что означает, что ваш классификатор способен идеально подгонять учебные данные, но не может хорошо обобщить. Читайте о смещении \ variance компромисс и подумайте о том, как улучшить обобщение (возможно, переключитесь на другой классификатор, который лучше обобщается или уменьшает количество ваших деревьев в случайном лесу и т. Д.).

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

Имея только 19 человек, поддерживает вторую гипотезу - 19 записей даже не могут быть достаточными для ML-алгоритмов.

+0

Благодарим вас за ответ, и это было моим предположением. Но я все еще не могу понять, как он может хорошо работать в кросс-валидации и процентном разделении (80% для обучения и 20% для тестирования). Разве это не так плохо, если он не может обобщить? – don

+0

Я не уверен, как weka выполняет 10-кратное резюме. Возможно, он просто пытается подобрать классификатор как можно лучше, используя каждую из сгибов (тонко настраивает гиперпараметры на каждую сгиб), а после этого просто измеряет конечную производительность на тестовом наборе. К сожалению, я никогда не использовал weka (я предпочитаю другие инструменты), поэтому я не могу комментировать здесь. –

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