Могу ли я просто удалить одну из двух переменных-предикторов, которые имеют высокую линейную корреляцию?

18

Используя коэффициент корреляции Пирсона, у меня есть несколько переменных, которые сильно коррелированы ( и для 2 пар переменных, которые есть в моей модели).ρзнак равно0,978ρзнак равно0,989

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

Пример:

E = V DВзнак равноВ/3000 и Езнак равноВ*D

E ρ = 0,989В и имеютЕρзнак равно0,989

Могу ли я просто «выбросить» одну из переменных?

TheCloudlessSky
источник

Ответы:

26

И B, и E получены из V. B и E явно не являются «независимыми» переменными друг от друга. Базовая переменная, которая действительно имеет значение здесь, - это V. Вы, вероятно, должны игнорировать и B, и E в этом случае, и оставить только V.

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

Один из способов сохранить в вашей модели сильно коррелированные переменные - это использовать вместо регрессии модель анализа основных компонентов (PCA). Модели PCA созданы, чтобы избавиться от мультиколлинеарности. Компромисс состоит в том, что в результате вы получаете два или три основных компонента в вашей модели, которые часто являются просто математическими конструкциями и в значительной степени непостижимы с логической точки зрения. Поэтому PCA часто отбрасывают как метод всякий раз, когда вам приходится представлять свои результаты внешней аудитории, такой как менеджмент, регуляторы и т. Д. Модели PCA создают загадочные черные ящики, которые очень сложно объяснить.

Sympa
источник
1
(+1) для объяснения PCA.
Штеффен
1
Спасибо, это было отличное объяснение. Я слышал и читал о PCA, но это для окончательного проекта для аспирантуры "регресс", которую я прохожу, и профессор просто хочет, чтобы мы использовали LR. Несмотря на это, я действительно ценю объяснение PCA и, вероятно, буду использовать его сам для развлечения.
TheCloudlessSky
3
При определенных обстоятельствах рекомендации в этом ответе не будут работать. Например, что если истинное соотношение Y = B + E = V / 3000 + V * D? Тогда переменные имеют высокую корреляцию из-за диапазонов V и D в наборе данных - что является (или может быть) чистой случайностью - в то время как выбрасывание одного из B или E приведет к неправильной модели. Короче говоря, «зависимость» в общем случае не является веской причиной для удаления некоторых переменных из модели; включение сильно зависимых переменных не обязательно «ослабляет» модель; СПС не всегда выход.
whuber
@whuber, я не уверен, что согласен с вашими комментариями. Я бы подумал, что «зависимость» в целом является довольно веской причиной для удаления некоторых переменных из регрессионной модели. В противном случае ваши коэффициенты регрессии не могут быть надежными. В используемом примере, который будет проблематичным для регрессии, одно простое решение - использовать все выражение (V / 3000 + V * D) в качестве одной переменной.
Симпа
3
В целом, если модель бета1 * (V / 3000) + бета2 * (V D), вы не можете этого сделать: другими словами, ваше предложение предполагает, что вы знаете линейное ограничение между коэффициентами. Это правда, что коэффициенты регрессии могут иметь * относительно большие VIF или стандартные ошибки, но с достаточным количеством данных - или с хорошо подобранными наблюдениями - оценки будут достаточно надежными. Итак, мы согласны, что есть проблема, и действительно, я согласен с вашим решением в качестве одной из нескольких альтернатив для рассмотрения . Я не согласен с тем, что оно настолько общее и необходимое, как вы его представляете.
whuber
7

Вот ответ с точки зрения обучающегося машинам, хотя я боюсь, что меня за это побьют настоящие статистики.

Могу ли я просто «выбросить» одну из переменных?

Вопрос в том, какую модель вы хотите использовать для прогнозирования. Это зависит, например, от ...

  • может модель с коррелированными предикторами? Например, хотя NaiveBayes теоретически имеет проблемы с коррелированными переменными, эксперименты показали, что он все еще может работать хорошо.
  • как модель обрабатывает переменные предиктора? Например, разница между B и V будет нормализована при оценке плотности вероятности, может быть, то же самое для E и V в зависимости от дисперсии D (как уже говорилось в эйфории)
  • Какая комбинация использования B и E (один, ни одного, оба) дает наилучший результат, оцениваемый путем тщательной перекрестной проверки + теста на множестве несогласных?

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

Штеффен
источник
7

B представляет собой линейное преобразование V. E представляет взаимодействие между V и D. Рассматривали ли вы вопрос определения модели Y = Intercept + V + D + V: D? Как подсказывает @ euphoria83, похоже, что разница в D невелика, поэтому она может не решить вашу проблему; однако это должно по крайней мере сделать ясным независимый вклад V и D. Обязательно центрируйте оба V и D заранее.

russellpierce
источник
4
+1: Мало того, что это предложение является хорошим подходом к рассматриваемой проблеме, оно показывает, что выбрасывание переменных не всегда является правильным (или даже хорошим) подходом к решению проблем коллинеарности.
whuber
0

Если D не является константой, то B и E фактически являются двумя разными переменными из-за различий в D. Высокая корреляция указывает на то, что D практически постоянен во всех данных тренировки. Если это так, то вы можете отказаться от B или E.

euphoria83
источник
1
Dзнак равноN12*N2N2
Если вы отбрасываете B или E и рассматриваете их как эквивалентные, то вы неявно утверждаете, что V - это все, что действительно имеет значение. Если это так, то вам лучше сохранить B в модели, поскольку ее интерпретация ясна. Кроме того, если вы сохраняете E, но D на самом деле имеет ограниченную дисперсию, достоверность интерпретации ваших результатов будет даже более подозрительной (чем обычно) для различных значений D.
russellpierce