Регресування залишків логістичної регресії на інших регресорах


9

За допомогою регресії OLS, застосованої для безперервної реакції, можна скласти рівняння множинної регресії шляхом послідовно запущених регресій залишків на кожному коваріаті. Моє запитання: чи існує спосіб це зробити за допомогою логістичної регресії через залишки логістичної регресії ?

Тобто, якщо я хочу оцінити використовуючи стандартний узагальнений підхід лінійного моделювання, чи є спосіб запустити логістичну регресію проти x та отримати псевдо-залишки R_1 , а потім регресувати R_1 на z до отримати неупереджений оцінювач коефіцієнтів логістичної регресії. Посилання на підручники чи літературу були б вдячні.Пр(Y=1|х,z)хR1R1z


Я здогадуюсь, що це не буде працювати з тієї ж причини, що REML не поширюється на GLM; магія найменших квадратів втрачається. Цікаво, чи спрацювало б це в повністю байєсівському контексті, коли ви відібрали приховану змінну як частину симу. Причиною, що я хотів це зробити, було те, що я міг запускати glmnet над різними класами змінних і отримувати різні кількості регуляризації для класів - звичайно, є інші способи отримати цей ефект.
Бен Огорек

Це дуже схоже на використання алгоритму зворотного пристосування для логістичної регресії?
usεr11852

Я згадував про це в коментарі нижче, але в багатьох реалізаціях ви можете передати "базовий" прогноз (зсув параметра в glmnet), тому, можливо, це стане можливим після регресування залежних варіантів. @BenOgorek ви хочете додати мету в основний текст
seanv507

@ seanv507 Я переживаю, що додавання в частину регуляризації занадто сильно збільшить сферу застосування, особливо зараз, коли нижче є кілька хороших відповідей. Після завершення цього запитання я створити окреме питання, де компенсувати насправді може наш друг.
Бен Огорек

Це не відповідь, але у мене недостатньо репутації для коментарів. Питання полягає в регресуванні залишків на іншому регресорі (тобто прогнозах ), а не в регресуванні залишку на залишках . Мене бентежить відповідь.
T Wu

Відповіді:


3

У стандартній множинній лінійній регресії можливість встановлення оцінок звичайних найменших квадратів (OLS) у два етапи походить від теореми Фріша – Ву-Ловелла . Ця теорема показує, що оцінка коефіцієнта для конкретного предиктора у множинній лінійній моделі дорівнює оцінці, отриманій регресуванням залишків відповіді (залишків від регресії змінної реакції проти інших пояснювальних змінних) проти залишків предиктора (залишків від регресії змінної предиктора щодо інших пояснювальних змінних. Очевидно, ви шукаєте аналогію з цією теоремою, яку можна використовувати в моделі логістичної регресії.

Для цього питання корисно пригадати латентно-змінну характеристику логістичної регресії :

Yi=I(Yi>0)Yi=β0+βXxi+βZzi+εiεiIID Logistic(0,1).

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

Це створює проблему для будь-якої спроби створити двоетапну підгонку моделі. Ця теорема Фріша-Во-Ловелла залежить від здатності отримувати проміжні залишки для відповіді та прогнозованого інтересу проти інших пояснювальних змінних. У цьому випадку ми можемо отримати залишки лише із "категоризованої" змінної відповіді. Створення двоступеневого процесу пристосування для логістичної регресії вимагатиме від вас використання залишків відповіді з цієї категоризованої змінної відповіді без доступу до базової латентної відповіді. Мені це здається головним перешкодою, і, хоча це не доводить неможливості, здається, що неможливо підібрати модель в два кроки.

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


Як виглядатиме двоступенева логістична регресія? Припустимо, ми хочемо побудувати двоступеневу підгонку для логістичної регресійної моделі, де параметри оцінюються за допомогою оцінки максимальної ймовірності на кожному кроці. Ми хочемо, щоб процес включав проміжний крок, який відповідає наступним двом моделям:

Yi=I(Yi>0)Yi=α0+αXxi+τiτiIID Logistic(0,1),  Zi=γ0+γXxi+δiδiIID g.

Ми оцінюємо коефіцієнти цих моделей (через MLE), і це дає проміжні пристосовані значення . Потім на другому кроці ми підходимо до моделі:α^0,α^X,γ^0,γ^X

Yi=logistic(α^0+α^1xi)+βZ(ziγ^0γ^Xxi)+ϵiϵiIID f.

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

Щоб побачити, чи це можливо, спочатку записуємо всі оцінені параметри з першого кроку:

y|x(α^0,α^X)=maxα0,αXi=1nlnBern(yi|logistic(α0+αXxi)),z|x(γ^0,γ^X)=maxγ0,γXi=1nlng(ziγ0γXxi).

Нехай так що функція вірогідності журналу для другого кроку є:ϵi=yilogistic(α^0α^1xi)+βZ(ziγ^0γ^Xxi)

y|z|x(βZ)=i=1nlnf(yilogistic(α^0α^1xi)+βZ(ziγ^0γ^Xxi)).

Ми вимагаємо, щоб максимальна величина цієї функції була MLE моделі множинної логістичної регресії. Іншими словами, ми вимагаємо:

arg max βXy|z|x(βZ)=arg max βXmaxβ0,βZi=1нlnБерн(уi|логістичний(β0+βХхi+βZzi)).

Я залишаю це іншим, щоб визначити, чи є рішення цієї проблеми чи доказ того, що немає рішення. Я підозрюю, що «категоризація» змінної латентної реакції у логістичній регресії унеможливить пошук двоступеневого процесу.


1
Привіт @ Ben, дякую за те, що ви навчали мене про теорему Фріша – Ву – Ловелла. Я підірвав це на винагороду - думка "минув" означає, що його просто перестали рекламувати. Вибач за те. Мені подобається ваша ідея, заснована на ймовірності. Ви можете спробувати це чи щось подібне та опублікувати нижче.
Бен Огорек

@Ben Ogorek: Нічого не турбуйтесь про щедроту. Радий, що відповідь допомогла.
Бен - Відновіть Моніку

@ Бен Огорек: (Щоб поповнити втрачені 25 очок баунті, які зникли в ефірі, просто перейдіть на сайт і голосуйте будь-які 3 відповіді. Тоді ваша карма відновиться!)
Бен - Відновіть Моніку

1
Готово! (І я їх прочитав першим).
Бен Огорек

3

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

Для того, щоб він працював, припустимо, що - вектор результату, - матриця моделі для предикторів, які вже є в моделі, і ви хочете включити . Вам потрібно регресувати залишок регресії на проти залишку регресії на щоб отримати коефіцієнт OLS для .уХх1уХх1Хх1

Ось простий приклад:

set.seed(12345)
n <- 5000
x1 <- rnorm(n)
x2 <- .5 * x1 + rnorm(n) # Correlated predictors
y <- x1 + x2 + rnorm(n)

Підходить модель з OLS:

coef(lm(y ~ x1 + x2))
(Intercept)          x1          x2 
0.001653707 1.037426007 0.996259446 

Регресія щодо залишків:

coef(lm(residuals(lm(y ~ x1)) ~ x2))
(Intercept)          x2 
0.001219232 0.818774874 

Це неправильно, вам потрібно:

coef(lm(residuals(lm(y ~ x1)) ~ residuals(lm(x2 ~ x1))))
           (Intercept) residuals(lm(x2 ~ x1)) 
         -6.707350e-17           9.962594e-01 

Який повертає правильний коефіцієнт для x2, це вирівнюється з очікуваними різницями у заданих відмінностях у x2, тримаючи x1 постійною (виймаючи його з y і x1).

Це в стороні логістичної регресії було б навіть більш проблематичним, оскільки коефіцієнти логістичної регресії страждають від опущених змінних ухилів навіть за відсутності плутаних відносин, дивіться тут і тут , тому, якщо всі прогнози результатів не є в моделі, не можна отримати неупереджені оцінки справжніх параметрів населення. Більше того, я не знаю жодних залишків з цієї моделі, які могли б піддатися другій логістичній регресії з усіма значеннями, що лежать між 0 і 1.

Деякі посилання на регресію щодо залишків:

  • Maxwell, SE, Delaney, HD, & Manheimer, JM (1985). Анова залишків та Анкова: виправлення ілюзії за допомогою модельних порівнянь та графіків. Журнал статистики освіти, 10 (3), 197–209. Отримано з http://journals.sagepub.com/doi/pdf/10.3102/10769986010003197
  • Freckleton, RP (2002), Про неправильне використання залишків в екології: регресія залишків проти множинної регресії. Журнал екології тварин, 71 , 542-545. doi: 10.1046 / j.1365-2656.2002.00618.x

Я думаю, що ваша перша пара абзаців трохи вводить в оману / незрозуміло ... було б краще, якби ви почали з того, як ви насправді робите "лінійну регресію з залишками" .. (+ 1) і зможете знайти її в елементах статистичного навчання ( множинна регресія з підрозділу одиночної регресії?)
seanv507

У багатьох реалізаціях ви можете передати "базовий" прогноз (зсувний параметр у glmnet), тому, можливо, це стане можливим після регресу залежних
варіантів

@ seanv507 Я вже включаю це у свою відповідь. Це остання демонстрація коду у мене. Це просто неможливо в способі, описаному ОП, регресування залишків на прогнокторі. Але я міг би переписати це, щоб показати правильний шлях із самого початку, якщо це ви маєте на увазі.
Гетероскедастичний Джим

Так, я мав на увазі переписати це, щоб показати правильний шлях із самого початку,
seanv507

@ seanv507 не знаю, що ти маєш на увазі, якщо ти можеш пройти базовий прогноз? І регресувати залежні змінні?
Гетероскедастичний Джим

1

Я сподіваюся, що я не неправильно трактую ваше запитання, оскільки моя відповідь трохи змінить формулювання того, як ви сформулювали тему.

Я думаю, що ти намагаєшся створити свою регресійну модель, додавши по черзі одну незалежну змінну. І ви це робите, спостерігаючи, яка перспективна змінна має найвищу кореляцію із залишком вашої першої регресії між Y та X1. Отже, змінна з найбільшою кореляцією з цим першим залишком буде X2. Отже, тепер у вас є модель з двома незалежними змінними X1 і X2. І, ви продовжуєте цей точний процес, щоб вибрати X3, X4 тощо. Це крок вперед.

Ви можете зробити те саме, що з Logistic Regression з тієї простої причини, що Logistic Regression є значною мірою OLS Regression, де залежною змінною є лог непарного (або logit). Але, чи є Y logit чи ні, це не впливає на поступовий процес, зазначений вище.

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

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.