Метод Белсли

Материал из MachineLearning.

Перейти к: навигация, поиск

Линейные регрессионные модели часто используются для исследования зависимости между ответом и признаками, однако результаты часто сомнительны, так как данные не всегда подходящие. Например, при большом количестве признаков часто многие из них сильно зависимы друг от друга, и эта зависимость уменьшает вероятность получения адекватных результатов. Belsley, Kuh и Welsch предложили метод анализа мультиколлинеарности основанный на индексах обусловленности(the scaled condition indexes) и дисперсионных долях(the variance-decomposition proportions).

Содержание

Разложение линейной модели

Линейная регрессионная модель:
y=X \beta + \varepsilon. (1)
где y - n-мерный ветор ответа(зависимой переменной), X - n x p (n>p) матрица признаков \beta - p-мерный вектор неизвестных коэффициентов, \varepsilon - p-мерный вектор случайного возмущения с нулевым матожиданием и ковариационной матрицей {\sigma}^2 I, где I это n x n единичная матрица, а {\sigma}^2>0. Будем считать что X имеет ранг p. Если есть коллинеарность между признаками согласно Belsley имеет смысл использовать сингулярное разложение(SVD) чтобы определить вовлеченные переменные. Матрица сингулярного разложения X определяется как:
X=UDV^T. (2)
Где U - n x p ортогональная матрица, D - p x p верхняя диагональная матрица, чьи неотрицательные элементы являются сингулярными значениями X, V - p x p ортогональная матрица, чьи колонки это собственные вектора X^T X. Если существует коллинеарная зависимоть, то будут какие-либо сингулярные значения, скажем, (р - s), которые близки к нулю. Предположим, что d_{jj}, или просто d_{j}, элементы матрицы D упорядочены так, что
d_{1} \geq d_{2} \geq ...\geq d_{s} \geq ... \geq  d_{p} \geq 0
И рассмотрим разбиение

D=\begin{pmatrix} D_{s\times s} & O_{s \times (p-s)} \\ O_{(p-s) \times s} & D_{(p-s)\times (p-s)} \end{pmatrix},
где D_{s\times s} и D_{(p-s)\times (p-s)} диогональные, и недиогональнык блоки нулевые. D_{s\times s}, или просто D_{S}, содержит достаточно большие сингулярные значения, а D_{(p-s)\times (p-s)}, или D_{N}, содержит близкие к нулю. Теперь разделим U и V соответственно:

U=(U_{n\times s}  U_{n \times (p-s)}) = (U_{S} U_{N})

V=(U_{p\times s}  V_{p \times (p-s)}) = (V_{S} V_{N}),
где U_{S} и V_{S} соответствуют первым s наибольших сингулярных значений, а U_{N} и V_{N} содержат (p-s) веторов соответствующих малым сингулярным значениям. Матрица U ортогональна, т.е U^T U=I_{p \times p}, так же как и U_{S} и U_{N}. Таким образом :
U^{T}_{S} U_{S}=I_{s \times s}

U^{T}_{N} U_{N}=I_{(p-s) \times (p-s)}

U^{T}_{S} U_{N}=O_{s \times (p-s)}

U^{T}_{N} U_{S}=O_{(p-s) \times s}

Т.к V тоже ортогональна, то
V^{T}_{S} V_{S}=I_{s \times s}

V^{T}_{N} V_{N}=I_{(p-s) \times (p-s)}

V^{T}_{S} V_{N}=O_{s \times (p-s)}

V^{T}_{N} V_{S}=O_{(p-s) \times s}

Таким образом разложение нам дает:
X=UDV^T=U_{S} D_{S} V_{S}^T + U_{N} D_{N} V_{N}^T
Обозначим слагаемые в правой части как
X_{S}=U_{S} D_{S} V_{S}^T

X_{N}=U_{N} D_{N} V_{N}^T (8)
Заметим что получившиеся матрицы ортогональны, т.е :
X_{S}^{T} X_{N} = O (9)
что обеспечивает возможность ортогонального разложения X :
X=X_{S}+X_{N} (10)
Здесь все матрицы имеют размер n \times p и полагая что X имеет ранг p, X_{S} и X_{N} имеють ранг s и (p-s) соответственно. Тогда для разложения (2) :
X(V_{S} V_{N})=(U_{S} U_{N}) \begin{pmatrix}
D_{S} & O \\
O & D_{N} \\
\end{pmatrix} (11)
Далее мы получаем
X V_{S}=X_{S} V_{S}=U_{S} D_{S} (12)
и
X V_{N}=X_{N} V_{N}=U_{N} D_{N} \approx O (13)
Равенства в (12) и (13) получаются из (8) и (10) ссылаясь на то что из ортогональности V следует V^T_N V_S = O. Это значит что X_S содержит всю информацию, и только ее, входящую в X которая свободна от коллинеарности связанной с остальными (p-s) собственными векторами.
Соответственно X_N содержит только информацию связанную с коллинеарностью делая прогноз на дополнительное пространство  \mathbb R^{\mathrm (p-s)}. Это пространство связанное с элементами матрицы D_N близкими к 0 называется квази-нулевым пространством
Следовательно предложенное разложение подчеркивает X_S как часть X полученную из s основных компонентов которые в меньшей степени участвуют в коллинеарности. X^N же содержит информацию связанную с p-s компонентами которые участвую в коллинеарных зависимостях. Переменные, входящие в коллинеарности, это те, которые имеют наибольшие координаты в столбцах матрицы V_N. Вектор \beta минимизирующего ошибку в метода наименьших квадратов:
\beta=(X^T X)^{-1} X^T y = X^{+}y
где X^{+} - псевдообратная матрица X и последнее равенство выполняется только если X имеет полный ранг. Используя предыдущее разложение может быть показано что:
(X^T X)^{-1}=V D^{-2} V^T =V_S D^{-2}_S V_S^T + V_N D^{-2}_N V_N^T= (X^T_S X_S)^{+} +(X^T_N X_N)^{+}
Последнее равенство получается из того что X^T_S X_S=V_S D^{2}_S V_S^T - сингулярное разложение X^T_S X_S и следовательно (X^T_S X_S)^{+}=V_S D^{-2}_S V_S^T. Для (X^T_N X_N)^{+} аналогично.
Подставляя (15) и (7) в (14) получаем:
\beta=V_S D^{-1}_S U_S^T y + V_N D^{-1}_N U_N^T y=X^{+}_S y + X^{+}_N y = {\beta}_S + {\beta}_N
Окончательно модель:
y=(X_S + X_N)({\beta}_S + {\beta}_N) +e
Где e это вектор остатков.
Из (15) получаем:
Cov(\beta) = {\sigma}^2 (X^T X)^{-1}= {\sigma}^2 [V_S D^{-2}_S V_S^T + V_N D^{-2}_N V_N^T]={\sigma}^2 [(X^T_S X_S)^{+} +(X^T_N X_N)^{+} ] = Cov({\beta}_S) + Cov({\beta}_N)
Элементы на главной диогонали (X^T_N X_N)^{-1} это VIF, которые могут быть разложены на компоненты соответствующие каждому {\beta}_{Si} и {\beta}_{Ni} (i=1,2,...,p).

Выявление мультиколлинеарности

Смотри также

Литература

Личные инструменты