Как определить главные факторы, влияющие на проблему бинарной классификации - PullRequest
0 голосов
/ 30 января 2019

У меня проблема с бинарной классификацией, включающая около 30 функций и конечную метку прохождения / неудачи.Сначала я обучил классификатор, чтобы он мог предсказать, пройдут ли новые экземпляры или не получится, но теперь я хочу получить более глубокое понимание.

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

Некоторые начальные мысли: Используйте классификатор дерева решений (ID3 или CART) и посмотрите на верхнюю часть дерева для определения главных факторов.Я не уверен, насколько надежным был бы такой подход, и мне не сразу понятно, как можно назначить важность каждого фактора (можно было бы просто получить упорядоченный список).

1 Ответ

0 голосов
/ 05 февраля 2019

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

В Scikit-Learn Python, проверьте sklearn.ensemble.RandomForestClassifier().feature_importances_ вернул бы "веса", которые, я полагаю, вы ищете.Посмотрите пример в документации .

Кроме того, вы можете использовать пакет R's randomForest .После построения модели вы можете использовать importance() для извлечения значений важности элемента.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...