Процедура для определения наиболее значимых предикторов переменных с использованием R, когда данные имеют огромную мультиколлинеарность? - PullRequest
0 голосов
/ 20 февраля 2019

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

Однако данные подвержены серьезной мультиколлинеарности.Я пытаюсь построить экономную модель логистической регрессии, поэтому необходимо уменьшить переменные.В соответствии со значениями VIF результаты становятся противоречивыми, как только я уменьшу количество переменных.С другой стороны, я не очень уверен, что ПЦР может решить эту проблему, поскольку мне нужны выводы из чувствительности каждой переменной.

Как лучше решить эту проблему?

Какие пакеты из 'R' я могу использовать?

Решит ли проблему факторный анализ?

Или мы можем сделать вывод из ПЦР?

1 Ответ

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

Сначала вы должны запустить тест ANOVA / Kruskall Wallis, чтобы проверить, какие переменные хорошо подходят для вашей задачи.Я не думаю, что для 36 переменных вам понадобится PCA, поскольку это приведет к тому, что ваша модель потеряет некоторую объяснимость.

Помните, что PCA уменьшит размерность, а также объяснит только часть дисперсии данных.Анализ факторов будет генерировать группы переменных в факторах, если вы хотите запустить сегментированную логистическую регрессию для каждого фактора сгруппированных переменных.

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

Вы можете использовать следующие пакеты R: каретка (логистическая регрессия), ROCR (AUC), ggplot (plot), DMwR (выбросы), мыши (пропущенные значения)

Также, если вы хотите сделать регуляризацию, вы можете использовать следующую формулу:

Lasso

Ridge

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

Sigmoid

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