Анализ мультиколлинеарности (пример)
Материал из MachineLearning.
м  (→Методика Belsley, Kuh, и Welsch (BKW))  | 
				 (→Исходный код)  | 
			||
| (9 промежуточных версий не показаны.) | |||
| Строка 3: | Строка 3: | ||
Задана выборка <tex>D = \{ y_i,\mathbf{x}_i\}_{i=1}^n</tex> признаков и зависимой переменной. Рассматривается [[Линейная регрессия (пример)|линейная регрессионная модель]] вида:  | Задана выборка <tex>D = \{ y_i,\mathbf{x}_i\}_{i=1}^n</tex> признаков и зависимой переменной. Рассматривается [[Линейная регрессия (пример)|линейная регрессионная модель]] вида:  | ||
| - | <tex>y_i=\sum_{j=1}^m   | + | <tex>y_i=\sum_{j=1}^m b_j x_{ij} + \varepsilon_i, i=1,\dots,n</tex>  | 
Предполагается, что вектор регрессионных невязок имеет нулевое математическое ожидание и дисперсию <tex>\sigma^2</tex>.  | Предполагается, что вектор регрессионных невязок имеет нулевое математическое ожидание и дисперсию <tex>\sigma^2</tex>.  | ||
Требуется создать инструмент исследования мультиколлинеарности признаков (методики VIF, Belsley) и проверить его работу на модельных данных.  | Требуется создать инструмент исследования мультиколлинеарности признаков (методики VIF, Belsley) и проверить его работу на модельных данных.  | ||
| Строка 9: | Строка 9: | ||
== Описание алгоритма ==  | == Описание алгоритма ==  | ||
=== [[Фактор инфляции дисперсии|Фактор инфляции дисперсии (VIF)]] ===  | === [[Фактор инфляции дисперсии|Фактор инфляции дисперсии (VIF)]] ===  | ||
| - | |||
| - | |||
| - | + | === [[Метод Белсли|Методика Belsley, Kuh, и Welsch (BKW) ]]===  | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | === [[  | + | |
Диагностика коллинеарности BKW основана на двух элементах, относящихся к <tex> n \times p</tex> матрице данных <tex>X </tex> использующейся в линейной регрессии <tex> y = X \beta + \epsilon</tex> : индексы обусловленности(the scaled condition indexes) и дисперсионные доли(the  variance-decomposition proportions). Оба этих диагностических элемента могут быть получены из сингулярного разложения (SVD) матрицы <tex>X</tex>: <tex> X=UD{V^{T}}</tex>, где <tex>{U}^{T}U={V}^{T}V={I}_{p}</tex> и <tex>D</tex> - диагональная с неотрицательными элементами <tex>{\mu}_{1},...,{\mu}_{p}</tex> называющимися сингулярными числами <tex>X</tex>. Индексы обусловленности это:<br />  | Диагностика коллинеарности BKW основана на двух элементах, относящихся к <tex> n \times p</tex> матрице данных <tex>X </tex> использующейся в линейной регрессии <tex> y = X \beta + \epsilon</tex> : индексы обусловленности(the scaled condition indexes) и дисперсионные доли(the  variance-decomposition proportions). Оба этих диагностических элемента могут быть получены из сингулярного разложения (SVD) матрицы <tex>X</tex>: <tex> X=UD{V^{T}}</tex>, где <tex>{U}^{T}U={V}^{T}V={I}_{p}</tex> и <tex>D</tex> - диагональная с неотрицательными элементами <tex>{\mu}_{1},...,{\mu}_{p}</tex> называющимися сингулярными числами <tex>X</tex>. Индексы обусловленности это:<br />  | ||
<tex>{\eta}_{k}\equiv\frac{{\mu}_{max}}{{\mu}_{k}}</tex>, <tex>k=1,...,p</tex> <br />  | <tex>{\eta}_{k}\equiv\frac{{\mu}_{max}}{{\mu}_{k}}</tex>, <tex>k=1,...,p</tex> <br />  | ||
| Строка 29: | Строка 16: | ||
{{eqno|3}}  | {{eqno|3}}  | ||
<tex> V(b)={\sigma}^{2}(X^{T}X)^{-1} = {\sigma}^{2}V D^{-2} V^{T}</tex><br />  | <tex> V(b)={\sigma}^{2}(X^{T}X)^{-1} = {\sigma}^{2}V D^{-2} V^{T}</tex><br />  | ||
| - | где <tex>{\sigma}^{2}</tex> это дисперсия возмущения <tex>\varepsilon</tex>. Таким образом дисперсия <tex>k</tex>-го регрессионного коэффициента <tex>{b}_{k}</tex> это <tex>k</tex>-й   | + | где <tex>{\sigma}^{2}</tex> это дисперсия возмущения <tex>\varepsilon</tex>. Таким образом дисперсия <tex>k</tex>-го регрессионного коэффициента <tex>{b}_{k}</tex> это <tex>k</tex>-й диагональный элемент {{eqref|3}}: <br />  | 
{{eqno|4}}  | {{eqno|4}}  | ||
<tex>\mbox{var}({b}_{k})={\sigma}^{2}	\sum_{j} {\frac{{\upsilon}^{2}_{kj}}{{\mu}^{2}_{j}}}</tex><br/>  | <tex>\mbox{var}({b}_{k})={\sigma}^{2}	\sum_{j} {\frac{{\upsilon}^{2}_{kj}}{{\mu}^{2}_{j}}}</tex><br/>  | ||
| Строка 168: | Строка 155: | ||
== Исходный код ==  | == Исходный код ==  | ||
| - | *Cкачать листинги алгоритмов можно здесь [https://mlalgorithms.svn.sourceforge.net/svnroot/mlalgorithms/  | + | *Cкачать листинги алгоритмов можно здесь [https://mlalgorithms.svn.sourceforge.net/svnroot/mlalgorithms/Group774/Sungurov2010Multicollinearity/]  | 
== Смотри также ==  | == Смотри также ==  | ||
| Строка 176: | Строка 163: | ||
* [[Линейная регрессия (пример)]]  | * [[Линейная регрессия (пример)]]  | ||
* [[Сингулярное разложение]]  | * [[Сингулярное разложение]]  | ||
| - | * [[  | + | * [[Метод Белсли]]  | 
== Литература ==  | == Литература ==  | ||
| Строка 182: | Строка 169: | ||
* D. A. Belsley, A  Guide  to  Using  the  Collinearity  Diagnostics. Computer Science in Economics and Management 4: 33-50, 1991.  | * D. A. Belsley, A  Guide  to  Using  the  Collinearity  Diagnostics. Computer Science in Economics and Management 4: 33-50, 1991.  | ||
* Karen Callaghan and  Jie Chen, Revisiting the Collinear Data Problem: An Assessment of Estimator 'Ill-Conditioning' in Linear Regression. Practical Assessment, Research & Evaluation, 2008, 13.  | * Karen Callaghan and  Jie Chen, Revisiting the Collinear Data Problem: An Assessment of Estimator 'Ill-Conditioning' in Linear Regression. Practical Assessment, Research & Evaluation, 2008, 13.  | ||
| - | {{  | + | {{ЗаданиеВыполнено|Сунгуров Дмитрий|В.В.Стрижов|28 мая 2010|e1ekt|strijov}}  | 
[[Категория:Практика и вычислительные эксперименты]]  | [[Категория:Практика и вычислительные эксперименты]]  | ||
[[Категория:Линейная регрессия]]  | [[Категория:Линейная регрессия]]  | ||
Текущая версия
Мультиколлинеарность — тесная корреляционная взаимосвязь между отбираемыми для анализа факторами, совместно воздействующими на общий результат, которая затрудняет оценивание регрессионных параметров.
Содержание | 
Постановка задачи
Задана выборка  признаков и зависимой переменной. Рассматривается линейная регрессионная модель вида:
Предполагается, что вектор регрессионных невязок имеет нулевое математическое ожидание и дисперсию 
.
Требуется создать инструмент исследования мультиколлинеарности признаков (методики VIF, Belsley) и проверить его работу на модельных данных.
Описание алгоритма
Фактор инфляции дисперсии (VIF)
Методика Belsley, Kuh, и Welsch (BKW)
Диагностика коллинеарности BKW основана на двух элементах, относящихся к  матрице данных 
 использующейся в линейной регрессии 
 : индексы обусловленности(the scaled condition indexes) и дисперсионные доли(the  variance-decomposition proportions). Оба этих диагностических элемента могут быть получены из сингулярного разложения (SVD) матрицы 
: 
, где 
 и 
 - диагональная с неотрицательными элементами 
 называющимися сингулярными числами 
. Индексы обусловленности это:
, 
 
 для всех 
. Наибольший из индексов обусловленности это число обусловленности матрицы 
. Большое значение 
 указывает на зависимость близкую к линейной между признаками и чем больше 
 тем сильнее зависимость. Дисперсионные доли находятся из того факта, что используя SVD ковариационная матрица метода наименьших квадратов 
 может записана как:
 
где  это дисперсия возмущения 
. Таким образом дисперсия 
-го регрессионного коэффициента 
 это 
-й диагональный элемент (3): 
где  - сингулярные значения 
 и 
. 
Определим 
-е дисперсионное соотношение как долю дисперсии 
-го регрессионного коэффициента связанная с 
-м компонентом его разложения (4). Доля считается как:
 
, 
, 
 
Дисперсионное соотношение: 
 
, 
 
 
Данные удобно представить в виде таблицы: 
| Condition index | ||||
|---|---|---|---|---|
|   |   |   | ... |   | 
|   |   | ... | ... |   | 
| . | . | . | . | |
| . | . | . | . | |
| . | . | . | . | |
|   |   |   | ... |   | 
Перед использованием BKW необходимо отмасштабировать матрицу . Стандартно применяется приведение столбцов к одинаковой длинне(норму). Будем рассматривать отмасштабированные индексы обусловленности 
 :
 
, 
Алгоритм BKW
1. Стандартизация столбцов матрицы.
2. Вычисление индексов обусловленности и дисперсионных долей.
3. Определение количества зависимостей.
Превышение индексом обусловленности выбраного заранее порога означает наличие зависимости между признаками.
Относительная сила зависимости определяется положение значения индекса обусловленности в прогресии 1, 3, 10, 30, 100, 300, 1000 итд.
4. Определение признаков участвующих в зависимости. 
2 случая :
1) Только один достаточно большой индекс обусловленности - тогда возможно определение участвующих в зависимости признаков из дисперсионных долей: признак считается вовлеченным если его дисперсионная доля связанная с этим индексом превышает выбранный порог  (обычно 0.25).
2) Есть несколько больших индексов обусловленности. В этом случае вовлеченность признака в зависимость определяется по сумме его дисперсионных долей отвечающих большим значениям индекса обусловленности - когда сумма превышает порог  признак участвует как минимум в одной линейной зависимости.
Вычислительный эксперимент
В эксперименте используются модельные данные, для которых вычисляется VIF и матрица Belsley в зависимоти от параметра определяющего степень коллинеарности между признаками. Зависимость VIF и индексов обусловленности показана на графиках. Остальная часть таблицы BKW раскрашивалась (от темно-синего для 0 к темно-красному для 1) и создавалось видео показывающее ее изменение при параметре от 0 до 1.
Пример 1
Используются два ортогональных признака , 
 и третий признак 
 зависящий от параметра 
. При 
 все признаки ортогональны, при увеличении 
 зависимый признак 
 приближается к 
, вплоть до полной коллинеарности при 
. 
Зависимость VIF от параметра:
![]()
Как видно из графика VIF  и 
 растет вплоть до бесконечности при 
, VIF 
 при этом не изменен и равен 1.
Зависимость индексов обусловленности  от 
:
![]()
Таблица дисперсионных долей:
Видно что признаки  и 
 связаны усиляющейся зависимостью, и что других связей нет.
Пример 2
Используется неизменные признаки , 
 и зависящие от параметра 
 признаки 
,
,
. При 
 все признаки ортогональны, при увеличении 
 признаки 
, 
 приближаются к 
, а 
 - к 
 вплоть до полной коллинеарности при 
.
Зависимость VIF от параметра:
![]()
Зависимость индексов обусловленности  от 
:
![]()
Таблица дисперсионных долей:
Наблюдается две основных зависимости - первая зависимость между признаками , 
, 
 и вторая между признаками 
, 
.
Пример 3
Используются реальные данные. На них был проведен эксперимент по вычислению VIF и таблицы BKW.
| # | VIF | # | VIF | 
|---|---|---|---|
| 1 | 1.21 | 7 | 3.82 | 
| 2 | 1.31 | 8 | 7.43 | 
| 3 | 1.69 | 9 | 3.46 | 
| 4 | 1.51 | 10 | 1.47 | 
| 5 | 19.27 | 11 | 1.97 | 
| 6 | 16.37 | 
У двух признаков значение фактора инфляции дисперсии больше 10, еще у одного больше 5. Такой результат — следствие их мультиколлинеарности относительно остальных признаков нашего набора.
| Condition index | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | 0.0004 | 0.0006 | 0.0001 | 0.0001 | 0.0000 | 0.0000 | 0.0001 | 0.0001 | 0.0000 | 0.0000 | 0.0008 | 
| 7.12 | 0.0031 | 0.0016 | 0.00016 | 0.0002 | 0.0001 | 0.0000 | 0.0251 | 0.0043 | 0.0000 | 0.0002 | 0.2885 | 
| 9.03 | 0.0003 | 0.2262 | 0.0013 | 0.0007 | 0.0000 | 0.0010 | 0.0284 | 0.0154 | 0.0000 | 0.0001 | 0.1557 | 
| 10.88 | 0.0149 | 0.3400 | 0.0003 | 0.0035 | 0.0022 | 0.01285 | 0.0007 | 0.0179 | 0.0000 | 0.0003 | 0.0380 | 
| 14.14 | 0.9113 | 0.0819 | 0.0036 | 0.0003 | 0.0001 | 0.0001 | 0.0179 | 0.0001 | 0.0003 | 0.0004 | 0.0158 | 
| 18.83 | 0.0233 | 0.2490 | 0.1015 | 0.0240 | 0.0032 | 0.0238 | 0.0240 | 0.0325 | 0.0105 | 0.0398 | 0.3721 | 
| 26.77 | 0.0032 | 0.0063 | 0.6467 | 0.0012 | 0.0004 | 0.0268 | 0.0326 | 0.0897 | 0.0318 | 0.0296 | 0.0324 | 
| 29.44 | 0.0316 | 0.0509 | 0.1138 | 0.9072 | 0.0000 | 0.0075 | 0.0504 | 0.0163 | 0.0073 | 0.0040 | 0.0128 | 
| 34.04 | 0.0065 | 0.0026 | 0.0337 | 0.0310 | 0.0014 | 0.0211 | 0.0472 | 0.0863 | 0.0322 | 0.8635 | 0.0105 | 
| 46.73 | 0.0043 | 0.0048 | 0.0009 | 0.0124 | 0.0460 | 0.0027 | 0.5990 | 0.7163 | 0.3045 | 0.0003 | 0.0468 | 
| 101.67 | 0.0006 | 0.03557 | 0.0974 | 0.0190 | 0.9462 | 0.9036 | 0.1742 | 0.0207 | 0.613 | 0.0612 | 0.0261 | 
Из таблицы видно что самому большому индексу обусловленности соответствует связь между 5, 6 и 9 признаками которым соответсвуют 19, 16 и 3 значения VIF. Также видна зависимость между 7 и 8 признаками - со значениями 3 и 7 VIF соответственно.
Исходный код
- Cкачать листинги алгоритмов можно здесь [1]
 
Смотри также
- Фактор инфляции дисперсии
 - Мультиколлинеарность
 - Метод наименьших квадратов
 - Линейная регрессия (пример)
 - Сингулярное разложение
 - Метод Белсли
 
Литература
- Gianfranco Galmacci, Collinearity Detection in Linear Regression. Computational Economics 9:215-227, 1996.
 - D. A. Belsley, A Guide to Using the Collinearity Diagnostics. Computer Science in Economics and Management 4: 33-50, 1991.
 - Karen Callaghan and Jie Chen, Revisiting the Collinear Data Problem: An Assessment of Estimator 'Ill-Conditioning' in Linear Regression. Practical Assessment, Research & Evaluation, 2008, 13.
 
|   |  Данная статья была создана в рамках учебного задания.
 
 См. также методические указания по использованию Ресурса MachineLearning.ru в учебном процессе.  | 

