.

Сделать репост в соц сети!

среда, 4 февраля 2015 г.

Мультиколлинеарность: чем она нам неприятна и как с этим бороться


Решил дать пояснения про мультиколлинеарность: что это такое на инструментальном уровне. Мультиколлинеарность - это корреляция независимых переменных.
Вредна мультиколлинеарность тем, что может влиять и искажать результаты регрессии.
На самом деле, мультиколлинеарность страшна, когда мы напишиваем пачку переменных у уравнение, не задумываясь, как они между собой взаимодействуют.
Самый простой способ - построить корреляционную матрицу независимых переменных, обратить внимание на пары переменных с высоким уровнем корреляции (на самом деле я бы не давал конкретных границ уровня корреляции, в одном из примеров мультиколлинеарность проявилась на уровне где-то 0, 35, а кто-то советует обращать внимание на 0, 6), а потом посмотреть, как ведет себя уравнение с одной из коррелирующих переменных, с другой, с обоими.
Чтобы было понятно, привожу пример
Мультиколлинеарность - файл с данными. В нем переменные:

  • WinterRain
  • AGST
  • HarvestRain
  • Age
  • FrancePop
  • Price

Price - зависимая переменная, остальные - независимые.Постройте в excel (или где вам удобно) уравнение регрессии со всеми переменными.

Коэффициенты
Стандартная ошибка
t-статистика
P-Значение
Y-пересечение
-0.4504
10.18888
-0.0442
0.965202
WinterRain
0.001043
0.000531
1.963313
0.064416
AGST
0.601224
0.10302
5.835976
1.27E-05
HarvestRain
-0.00396
0.000875
-4.52298
0.000233
Age
0.000585
0.079003
0.007402
0.994172
FrancePop
-5E-05
0.000167
-0.29715
0.769578

Теперь исключим FrancePop, получаем

Коэффициенты
Стандартная ошибка
t-статистика
P-Значение
Y-пересечение
-3.42998
1.765898
-1.94234
0.066311
WinterRain
0.001076
0.000507
2.120148
0.046694
AGST
0.607209
0.098702
6.151932
5.2E-06
HarvestRain
-0.00397
0.000854
-4.65161
0.000154
Age
0.023931
0.008097
2.955564
0.007819

Обратите внимание на значимость переменной Age в первом случае и во втором.
В этом, собственно, и заключается опасность мультиколлинеарности.
С т.з. просто смысла мультиколлинеарность это масло масленое - по сути дела это избыточная переменная, которая в лучшем случае не несет никакой полезной информации для модели (я чаще встречался с ситуацией, когда одна из переменных значима в уравнении регрессии, а вторая незначима при высоком уровне корреляции между ними. Когда, например, два шкалы теста сильно коррелируют между собой, уравнение показывает значимость только одной, вторая, соответственно, нам не нужна для прогноза. В этом кейсе Прогноз эффективности продавцов на основе теста CPI корреляция с зависимой переменной была у порядка 8 шкал, но в итоге оставил 2, которые давали реальный прогноз), в худшем - мы можем получить искаженные результаты.
Борьба с мультиколлинеарностью - как профилактика заболевания, смотрим корреляции между переменными и обращаем внимание, как они ведут себя в уравнении.

8 комментариев:

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

    ОтветитьУдалить
  2. по одной должности- 15, по второй - 10

    ОтветитьУдалить
    Ответы
    1. Максим, давайте вы мне сначала сделаете задание, которое я вам дал

      Удалить
  3. Ок, конечно, по аналитике со стажем и сброшу на почту, так?

    ОтветитьУдалить
  4. модель компетенций, мультиколлинеарность, изменения - очень знакомо :)

    ОтветитьУдалить
  5. Кстати, если наоборот, убрать Age, оставив при этом переменную FrancePop, то R^2 получиться чуть-чуть лучше :)
    НО, если убрать оба (и Age и FrancePop), то R^2 будет хуже, а определитель матрицы колинеарностей 0.8.
    Такие дела.

    ОтветитьУдалить