Як можна обробляти нестабільні оцінки в лінійній регресії з високою мультиколінеарністю без викидання змінних?


13

Бета-стабільність при лінійній регресії з високою мультиколінеарністю?

Скажімо, в лінійній регресії змінні і x_2 мають високу мультиколінеарність (кореляція становить близько 0,9).х 2x1x2

Ми стурбовані стабільністю коефіцієнта β тому нам доводиться ставитись до багатоколінеарності.

Рішенням підручника було б просто викинути одну зі змінних.

Але ми не хочемо втрачати корисну інформацію, просто викинувши змінні.

Будь-які пропозиції?


5
Ви пробували якусь схему регуляризації (наприклад, регресія хребта)?
Нестор

Відповіді:


11

Можна спробувати регресійний підхід хребта в тому випадку, коли матриця кореляції близька до сингулярної (тобто змінні мають високу кореляцію). Це дасть вам надійну оцінку .β

Питання лише в тому, як вибрати параметр регуляризації . Це не проста проблема, хоча я пропоную спробувати різні значення.λ

Сподіваюся, це допомагає!


2
Перехресне підтвердження - це звичайна річ, щоб вибрати ;-). λ
Нестор

дійсно (+1 для відповіді та коментаря Нестора), і якщо ви виконайте обчислення в "канонічній формі" (використовуючи власне розкладання , ви можете знайти мінімізує помилку перехресної перевірки "один-один" методом Ньютона дуже дешевоλXTXλ
Дикран Марсупіал

дуже дякую! Будь-який підручник / примітки, як це зробити, включаючи перехресну перевірку в R?
Луна

Перегляньте розділ 3 цієї книги: stanford.edu/~hastie/local.ftp/Springer/ESLII_print5.pdf . Реалізація регресії хребта виконується в R деякими авторами (Google - ваш друг!).
Нестор

2
Ви можете використовувати lm.ridgeрутину в пакеті MASS. Якщо ви передасте йому діапазон значень для , наприклад, для виклику, як , ви повернете узагальнену статистику перехресної перевірки в і зможете побудувати їх проти : вибрати мінімальний. λλfoo <- lm.ridge(y~x1+x2,lambda=seq(0,10,by=0.1))fooλplot(foo$GCV~foo$lambda)
jbowman

10

Ну, є один спеціальний метод, який я використовував раніше. Я не впевнений, чи має ця процедура назва, але це має сенс інтуїтивно.

Припустимо, ваша мета - підходити до моделі

Yi=β0+β1Xi+β2Zi+εi

де два предиктори - - сильно корелюються. Як ви вже зазначали, використання їх обох в одній моделі може робити дивні речі для оцінок коефіцієнтів та значень. Альтернатива - підходити до моделі pXi,Zip

Zi=α0+α1Xi+ηi

Тоді залишковий буде некорельований з і може, в деякому сенсі, розглядатись як частина яка не підпадає під лінійний зв'язок з . Потім можна приступити до підгонки моделіX i Z i X iηiXiZiXi

Yi=θ0+θ1Xi+θ2ηi+νi

яка буде охоплювати всі ефекти першої моделі (і, дійсно, матиме такий самий як і перша модель), але прогнози вже не колінеарні.R2

Редагувати: ОП попросило пояснити, чому остаточні дані, нарешті, не мають вибіркової кореляції нуля з передбачувачем, коли ви опускаєте перехоплення, як вони роблять, коли перехоплення включається. Це занадто довго, щоб розміщувати коментарі, тому я тут зробив правки. Це виведення не є особливо освічуючим (на жаль, я не міг придумати розумний інтуїтивно зрозумілий аргумент), але він показує, що вимагала ОП :

Коли перехоплення опущено в простій лінійній регресії , , так . Кореляція вибірки між та пропорційна де позначає середню вибірку кількості під бар. Зараз я покажу, що це не обов'язково дорівнює нулю.β^=xiyixi2 xiei¯xe-ei=yixixiyixi2xiei¯

xe¯x¯e¯
¯

Спочатку маємо

xe¯=1n(xiyixi2xiyixi2)=xy¯(1xi2xi2)=0

але

x¯e¯=x¯(y¯x¯xy¯x2¯)=x¯y¯x¯2xy¯x2¯

тож для того, щоб та мали вибіркову кореляцію рівно 0, нам потрібно дорівнювати . Тобто нам потрібноx i ¯ x ¯ e 0 ¯eixix¯e¯0

y¯=x¯xy¯x2¯

що взагалі не містить двох довільних наборів даних .x,y


Це нагадує мені про часткові регресійні графіки.
Andy W

3
Це звучить як наближення до заміни їх основними компонентами. (X,Z)
whuber

3
Я мав на увазі, що PCA легко узагальнює більше ніж дві змінні. Інша полягає в тому, що вона розглядає і симетрично, тоді як ваша пропозиція з'являється довільно, щоб виділити одну з цих змінних. Інша думка полягала в тому, що PCA пропонує дисциплінований спосіб зменшити кількість змінних (хоча з цим треба бути обережними, оскільки невеликий головний компонент може бути сильно корельованим із залежною змінною). ZXZ
whuber

1
Привіт Макро, Дякую за відмінний доказ. Так, зараз я це розумію. Коли ми говоримо про співвідношення вибірки між x та залишками, для цього потрібно включити термін перехоплення, щоб кореляція вибірки становила 0. З іншого боку, коли ми говоримо про ортогональність між x та залишками, він не потребує терміна перехоплення бути включеним, щоб ортогональність виконувалась.
Луна

1
@Luna, я особливо не погоджуюся з використанням регресії хребта - це саме те, що мені вперше прийшло в голову (я відповів, як це було запропоновано). Одне, що я можу сказати, - це те, що оцінка регресії хребта є упередженою, так що, в деякому сенсі, ви насправді оцінюєте дещо іншу (зменшену) величину, ніж у вас із звичайною регресією, що робить інтерпретацію коефіцієнтів, можливо, більш складною (як гунг натякає на). Також те, що я описав тут, вимагає лише розуміння основних лінійних регресій і може бути інтуїтивно більш привабливим для деяких.
Макрос

4

Мені подобаються обидві відповіді, дані до цього часу. Дозвольте додати кілька речей.

Інший варіант полягає в тому, що ви також можете комбінувати змінні. Це робиться шляхом стандартизації обох (тобто, перетворення їх на z-бали), усереднення їх, а потім пристосування вашої моделі лише до складеної змінної. Це був би хороший підхід, коли ви вважаєте, що це дві різні міри однієї основної конструкції. У цьому випадку у вас є два вимірювання, забруднені помилкою. Найімовірніше справжнє значення для змінної, що ви насправдітурбота про них знаходиться між ними, таким чином усереднення їх дає більш точну оцінку. Ви їх спочатку стандартизуєте, щоб розмістити їх в одній шкалі, щоб номінальні проблеми не забруднювали результат (наприклад, ви б не хотіли проводити середні вимірювання температури, якщо деякі є Фаренгейтом, а інші - Цельсієм). Звичайно, якщо вони вже є в одному масштабі (наприклад, кілька висококорельованих опитувань громадської думки), ви можете пропустити цей крок. Якщо ви думаєте, що одна із змінних може бути точнішою за іншу, ви можете зробити середньозважене (можливо, використовуючи зворотні помилки вимірювань).

Якщо ваші змінні є просто різними заходами однієї конструкції і є досить сильно співвіднесеними, ви дійсно можете їх просто викинути, не втрачаючи багато інформації. Як приклад, колись я опинився в ситуації, коли я хотів використати коваріат, щоб поглинути деяку дисперсію помилок та посилити потужність, але там, де я не переймався цим коваріатом - це не було по суті. У мене було кілька варіантів, і всі вони співвідносилися один з одним . Я в основному вибрав один навмання і продовжив, і воно спрацювало чудово. Я підозрюю, що втратив би силу, спалюючи два зайві ступені свободи, якби я включив і інших, використовуючи якусь іншу стратегію. Звичайно, я міг би їх поєднувати, але навіщо турбуватись? r>.98Однак це критично залежить від того, що ваші змінні є корельованими, оскільки це дві різні версії одного і того ж; якщо є інша причина, по якій вони співвідносяться, це може бути абсолютно недоречним.

З цього випливає, я пропоную вам подумати над тим, що лежить за вашими корельованими змінними. Тобто вам потрібна теорія, чому вони настільки сильно співвіднесені, щоб зробити найкращу роботу щодо вибору тієї стратегії. Окрім різних заходів однієї і тієї ж прихованої змінної, деякі інші можливості - це причинний ланцюг (тобто ) та більш складні ситуації, коли ваші змінні є результатом безлічі причинних сил, деякі з яких є однаково для обох. Мабуть, самий крайній випадок - це супресорна змінна, яку @whuber описує у своєму коментарі нижче. Наприклад, пропозиція @ Макроса передбачає, що вас насамперед цікавить і цікавить питання про додатковий внесокXX1X2YXX x 1 x 2 X ZZ після того, як було внесено внесокТаким чином, думаючи про те, чому ваші змінні корелюють і то , що ви хочете знати , допоможе вам вирішити , який (тобто, або ) слід розглядати як і які . Ключовим є використання теоретичного розуміння для інформування про свій вибір. Xx1x2XZ

Я погоджуюсь, що регресія хребта, можливо, краще, тому що вона дозволяє використовувати змінні, які ви спочатку мали на меті, і, ймовірно, дасть бета-версії, які дуже близькі до їх справжніх значень (хоча вони будуть упередженими - див. Тут або тут для отримання додаткової інформації ). Тим не менш, я думаю, що у нього є також два потенційні мінуси: він складніший (вимагає більшої статистичної витонченості), і отриману модель, на мою думку, складніше інтерпретувати.

Я вважаю, що, можливо, вищим підходом було б відповідати моделі структурних рівнянь. Це тому, що це дозволить сформулювати точний набір відносин, які ви вважаєте функціонуючими, включаючи приховані змінні. Однак я не знаю СЕМ достатньо добре, щоб тут щось про це сказати, крім згадки про можливість. (Я також підозрюю, що це було б надмірно в ситуації, яку ви описуєте, лише з двома коваріатами.)


4
Зверніться до першого пункту: Нехай вектор має діапазон значень, і нехай вектор має невеликі значення, повністю некорельовані з так що сильно корелює з . Встановіть . У регресії відносно або ви не побачите значних чи важливих результатів. У регресії проти та ви отримаєте надзвичайно гарну форму , оскільки . Таким чином, якщо викинете будь-який з або e X 1 X 2 = X 1 + e X 1 Y = e Y X 1 X 2 Y X 1 X 2 Y = X 2 - X 1 X 1 X 2 Y YX1eX1X2=X1+eX1Y=eYX1X2YX1X2Y=X2X1X1X2Ви втратили по суті всієї інформації про . Отже, "сильно корельовані" не означають "мають еквівалентну інформацію про ". YY
whuber

Дякую, Гунг! Q1. Чому такий підхід працює: "Це робиться шляхом стандартизації обох (тобто перетворення їх на z-бали), усереднення їх, а потім підгонки вашої моделі лише до складеної змінної."? Q2. Чому регрес Рейда був би кращим? Q3. Чому SEM буде кращим? Хто-небудь, будь ласка, пролити на це світло? Дякую!
Луна

Привіт Луна, рада допомогти. Я фактично збираюся це відредагувати; @whuber мав рацію, ніж я спочатку усвідомлював. Я спробую вкласти більше, щоб допомогти з вашими додатковими запитаннями, але це займе багато, тому це може зайняти деякий час. Ми побачимо, як це йде.
gung - Відновити Моніку
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.