Эффект переключения ответа и объясняющей переменной в простой линейной регрессии


48

Допустим, существует некоторая «истинная» связь между и такая что , где и - константы, а - нормальный шум. Когда я случайным образом генерирую данные из этого кода R: а затем подгоняю к подобной модели , я, очевидно, получаю достаточно хорошие оценки для и .yxy=ax+b+ϵabϵx <- 1:100; y <- ax + b + rnorm(length(x))y ~ xab

Однако если я переключу роль переменных, как в (x ~ y), и затем перезапишу результат, чтобы была функцией от , результирующий наклон всегда будет круче (либо более отрицательным, либо более положительным), чем тот, который оценивается регрессией. Я пытаюсь точно понять, почему это так, и был бы признателен, если бы кто-нибудь дал мне интуитивное представление о том, что там происходит.yxy ~ x


1
Это не правда в целом. Возможно, вы просто видите это в своих данных. Вставьте этот код: y = rnorm (10); х = норм (10); лм (у ~ х); лм (х ~ у); в R несколько раз, и вы обнаружите, что он идет в обе стороны.
Макро

Это немного отличается от того, что я описывал. В вашем примере y вообще не была функцией x, так что на самом деле никакого «наклона» нет (в моем примере это «a»).
Грег Апонте

lm (y ~ x) соответствует модели по наименьшим квадратам (эквивалентно оценке ML, когда ошибки нормальны). Есть склон. y=β0+β1x+ε
Макро

2
Ваш вопрос задают и получают ответы (вроде) на stats.stackexchange.com/questions/13126 и stats.stackexchange.com/questions/18434 . Тем не менее, я полагаю, что никто еще не внес простого и ясного объяснения взаимосвязей между (а) регрессией против , (б) регрессией против , (в) анализом соотношения и , (d) регрессия ошибок в переменных и и (e) подгонка двумерного нормального распределения к . Это было бы хорошее место для такой экспозиции :-). YXXYXYXY(X,Y)
whuber

2
Конечно, макрос верен: поскольку x и y играют одинаковые роли в вопросе, то, какой наклон является более экстремальным, зависит от случая. Однако геометрия предполагает (неправильно), что когда мы обращаем x и y в регрессии, мы должны получить обратную величину исходного наклона. Это никогда не происходит, за исключением случаев, когда x и y линейно зависимы. Этот вопрос можно интерпретировать как вопрос, почему.
whuber

Ответы:


23

Для точек данных , на плоскости нарисуем прямую линию . Если мы прогнозируем как значение для , то ошибка будет равна , а квадратичная ошибка будет равна , и общая квадратичная ошибка . Мы просим( х я , у я ) , я = 1 , 2 , ... п у = х + б х я + б у я у я ( у я - у я ) = ( у я - х я - б ) ( у я - а х я - бn(xi,yi),i=1,2,ny=ax+baxi+by^iyi(yiy^i)=(yiaxib)n i = 1 ( y i - a x i - b ) 2(yiaxib)2 i=1n(yiaxib)2

Какой выбор и минимизирует ?b S = n i = 1 ( y i - a x i - b ) 2abS=i=1n(yiaxib)2

Поскольку - это вертикальное расстояние от прямой линии, мы запрашиваем такую ​​линию, чтобы сумма квадратов вертикальных расстояний точек от линии была такой же маленькой, как возможно. Теперь является квадратичной функцией как и и достигает своего минимального значения, когда и таковы, что Из второго уравнения получаем где ( x i , y i ) S a b a b S(yiaxib)(xi,yi)Sabab b=1

Sa=2i=1n(yiaxib)(xi)=0Sb=2i=1n(yiaxib)(1)=0
μy=1
b=1ni=1n(yiaxi)=μyaμx
yixia=( 1μy=1ni=1nyi, μx=1ni=1nxi - среднее арифметическое значения и соответственно. Подставляя в первое уравнение, мы получаем Таким образом, линия, которая минимизирует может быть выражена как и минимальное значение составляет yixiSy=ax+b=μy+((1
a=(1ni=1nxiyi)μxμy(1ni=1nxi2)μx2.
SSSmin=[(1
y=ax+b=μy+((1ni=1nxiyi)μxμy(1ni=1nxi2)μx2)(xμx),
S
Smin=[(1ni=1nyi2)μy2][(1ni=1nxi2)μx2][(1ni=1nxiyi)μxμy]2(1ni=1nxi2)μx2.

Если мы поменяемся ролями и , нарисуем линию и запросим значения и которые минимизируют то есть мы хотим, чтобы линия была такой, чтобы сумма квадратов горизонтальных расстояний точек от линия как можно меньше, то мы получимxyx=a^y+b^a^b^

T=i=1n(xia^yib^)2,

x=a^y+b^=μx+((1ni=1nxiyi)μxμy(1ni=1nyi2)μy2)(yμy)
и минимальное значение is T
Tmin=[(1ni=1nyi2)μy2][(1ni=1nxi2)μx2][(1ni=1nxiyi)μxμy]2(1ni=1nyi2)μy2.

Обратите внимание, что обе линии проходят через точку но наклоны имеют в целом отличаются. Действительно, как указывает @whuber в комментарии, наклоны одинаковы, когда все точки лежат на одной прямой линии. Чтобы увидеть это, обратите внимание, что (μx,μy)

a=(1ni=1nxiyi)μxμy(1ni=1nxi2)μx2,  a^1=(1ni=1nyi2)μy2(1ni=1nxiyi)μxμy
(xi,yi)
a^1a=Smin(1ni=1nxiyi)μxμy=0Smin=0yi=axi+b,i=1,2,,n.

Спасибо! abs (корреляция) <1 объясняет, почему наклон был систематически круче в обратном случае.
Грег Апонте

(+1) но я добавил ответ только с иллюстрацией того, что вы только что сказали, так как у меня геометрический разум :)
Элвис

Классный ответ (+1)
Digio

39

Просто чтобы проиллюстрировать ответ Дилипа: на следующих рисунках

  • черные точки являются точками данных;
  • слева черная линия является полученной линией регрессии y ~ x, которая минимизирует квадраты длины красных сегментов;
  • справа черная линия - это полученная линия регрессии x ~ y, которая минимизирует квадраты длины красных сегментов.

линии регрессии

Изменить (регрессия наименьших прямоугольников)

Если нет естественного способа выбрать «ответ» и «ковариату», а две переменные взаимозависимы, возможно, вы захотите сохранить симметричную роль для и ; в этом случае вы можете использовать «регрессию наименьших прямоугольников».yx

  • напишите , как обычно;Y=aX+b+ϵ
  • обозначим и оценки условные для и условные для ;y^i=axi+bx^i=1a(yib)YiX=xiXiY=yi
  • минимизировать, что приводит к i|xix^i||yiy^i|
    y^=sign(cov(x,y))σ^yσ^x(xx¯)+y¯.

Вот иллюстрация с теми же точками данных, для каждой точки «прямоугольник» вычисляется как произведение длины двух красных сегментов, а сумма прямоугольников минимизируется. Я не знаю много о свойствах этой регрессии, и я не нахожу много с Google.

наименьшие прямоугольники


14
Некоторые примечания: ( 1 ) Если я не ошибаюсь, кажется, что «регрессия наименьших прямоугольников» эквивалентна решению, полученному при взятии первого главного компонента в матрице после центрирования и масштабирование, чтобы иметь единичную дисперсию, а затем замену на обратную. (продолжение)X=(y,x)
кардинал

14
(продолжение) ( 2 ) С этой точки зрения легко увидеть, что эта «регрессия наименьших прямоугольников» эквивалентна форме ортогональных (или общих) наименьших квадратов и, таким образом, ( 3 ) особый случай регрессии Деминга на центрированные, масштабированные векторы, принимающие . Ортогональные наименьшие квадраты можно рассматривать как «регрессию наименьших кругов». δ=1
кардинал

2
@cardinal Очень интересные комментарии! (+1) Я полагаю, что большая ось (минимизация перпендикулярных расстояний между линией измерения и всеми точками, как PCA) или уменьшенная регрессия по главной оси , или регрессия типа II, как показано в пакете lmodel2 R от P Legendre, также применимы здесь поскольку эти методы используются, когда трудно сказать, какую роль (ответ или предиктор) играет каждая переменная или когда мы хотим учесть ошибки измерения.
ЧЛ

1
@chl: (+1) Да, я верю, что вы правы, и на странице Википедии о наименьших квадратах перечислены несколько других имен для той же процедуры, не все из которых я знаком. Похоже, что он восходит, по крайней мере, к Р. Фришу, Статистический анализ слияния посредством полных регрессионных систем , Universitetets Økonomiske Instituut, 1934, где он назывался диагональной регрессией .
кардинал

3
@cardinal Я должен был быть более осторожным при чтении статьи в Википедии ... Для дальнейшего использования приведу снимок, сделанный из проекта «Биостатистический дизайн и анализ с использованием R » М. Логана (Wiley, 2010; рис. 8.4, стр. 174) , который суммирует различные подходы, во многом как хорошие иллюстрации Элвиса.
ЧЛ

13

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

Таким образом, чем больше объясняется доля дисперсии, тем ближе уклоны, полученные в каждом случае. Обратите внимание, что объясненная доля дисперсии симметрична и равна квадрату корреляции в простой линейной регрессии.


1

Простой способ взглянуть на это - заметить, что если для истинной модели , вы запускаете две регрессии:y=α+βx+ϵ

  • y=ayx+byxx
  • x=axy+bxyy

Тогда мы имеем, используя :byx=cov(x,y)var(x)=cov(x,y)var(y)var(y)var(x)

byx=bxyvar(y)var(x)

Так что, получите ли вы более крутой уклон или нет, зависит только от отношения . Это соотношение равно, исходя из предполагаемой истинной модели:var(y)var(x)

var(y)var(x)=β2var(x)+var(ϵ)var(x)

Связь с другими ответами

Вы можете связать этот результат с ответами других, которые сказали, что когда , он должен быть взаимным. Действительно, , а также (без ошибки оценки), следовательно:R2=1R2=1var(ϵ)=0byx=β

R2=1byx=bxyβ2var(x)+0var(x)=bxyβ2

Так чтоbxy=1/β


0

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

Я построил некоторые симуляции, чтобы наблюдать явление, основанное на простой линейной зависимости , с гауссовым шумом на x и y. Я сгенерировал наблюдения следующим образом (код Python):x=y

x = np.linspace(0, 1, n)
y = x

x_o = x + np.random.normal(0, 0.2, n)
y_o = y + np.random.normal(0, 0.2, n)

Посмотрите на разные результаты (здесь odr - регрессия ортогонального расстояния, то есть такая же, как регрессия наименьших прямоугольников):

введите описание изображения здесь

Весь код там:

https://gist.github.com/jclevesque/5273ad9077d9ea93994f6d96c20b0ddd


0

Линия регрессии не всегда совпадает с истинным отношением

Вы можете иметь некоторые «истинные» причинно-следственные связи, такие как

y=a+bx+ϵ

но соответствуют регрессионным линиям y ~ xили x ~ yне означают то же, что и эти причинно-следственные связи (даже если на практике выражение для одной из регрессионных линий может совпадать с выражением для причинно-следственной «истинной» связи)


Более точные отношения между склонами

Для двух переключаемых простых линейных регрессий:

Y=a1+b1XX=a2+b2Y

Вы можете связать склоны следующим образом:

b1=ρ21b21b2

Таким образом, склоны не являются друг друга обратными.


Интуиция

Причина в том, что

  • Линии регрессии и корреляции не обязательно соответствуют причинно-следственной связи.
  • Линии регрессии более непосредственно связаны с условной вероятностью или лучшим прогнозом.

Вы можете представить, что условная вероятность связана с силой отношений. Линии регрессии отражают это, и наклоны линий могут быть как неглубокими, когда сила отношения мала, так и крутыми, когда сила отношения сильна. Склоны не просто обратные.

пример

Если две переменных и связаны друг с другом какой - либо (причинной) линейной зависимостью Тогда вы можете себе представить , что было бы не хорошо , чтобы полностью изменить эту связь в случае , если вы хотите , чтобы выразить на основе заданного значения .XY

Y=a little bit of X+ a lot of error
XY

Вместо

X=a lot of Y+ a little of error

было бы лучше также использовать

X=a little bit of Y+ a lot of error

Смотрите следующие примеры распределений с соответствующими им линиями регрессии. Распределения являются многомерными нормальными с иΣ11Σ22=1Σ12=Σ21=ρ

пример

Условные ожидаемые значения (что вы получили бы в линейной регрессии)

E(Y|X)=ρXE(X|Y)=ρY

и в этом случае с многомерное нормальное распределение, то маргинальные распределенияX,Y

YN(ρX,1ρ2)XN(ρY,1ρ2)

Таким образом, вы можете увидеть переменную Y как часть и часть шума с дисперсией . То же самое верно и наоборот.ρX1ρ2

Чем больше коэффициент корреляции , тем ближе две линии будут. Но чем ниже корреляция, тем менее сильные отношения, тем менее крутыми будут линии (это верно как для линий, так и для )ρY ~ XX ~ Y


0

Краткий ответ

Цель простой линейной регрессии состоит в том, чтобы придумать лучшие предсказания yпеременной, учитывая значения xпеременной. Это другая цель, чем пытаться придумать лучший прогноз xпеременной, учитывая значения yпеременной.

Простая линейная регрессия y ~ xдает «лучшую» возможную модель для прогнозирования yдано x. Следовательно, если вы подходите для модели x ~ yи алгебраически инвертируете ее, эта модель в лучшем случае может делать то же самое, что и модель для y ~ x. Но инверсия модели, подходящей для, x ~ yбудет обычно хуже предсказывать yданные x, по сравнению с «оптимальной» y ~ xмоделью, потому что «инвертированная x ~ yмодель» была создана для достижения другой цели.

иллюстрация

Представьте, что у вас есть следующий набор данных:

введите описание изображения здесь

Когда вы запускаете регрессию OLS y ~ x, вы получаете следующую модель

y = 0.167 + 1.5*x

Это оптимизирует прогнозы y, делая следующие прогнозы, которые связаны с ошибками:

введите описание изображения здесь

Прогнозы регрессии OLS являются оптимальными в том смысле, что сумма значений в крайнем правом столбце (т.е. сумма квадратов) настолько мала, насколько это возможно.

Когда вы запускаете регрессию OLS x ~ y, вы получаете другую модель:

x = -0.07 + 0.64*y

Это оптимизирует прогнозы x, делая следующие прогнозы со связанными ошибками.

введите описание изображения здесь

Опять же, это оптимально в том смысле, что сумма значений самого правого столбца настолько мала, насколько это возможно (равно 0.071).

Теперь представьте, что вы пытались просто инвертировать первую модель y = 0.167 + 1.5*x, используя алгебру, чтобы дать вам модель x = -0.11 + 0.67*x.

Это даст вам следующие прогнозы и связанные с ними ошибки:

введите описание изображения здесь

Сумма значений в крайнем правом столбце 0.074больше, чем соответствующая сумма из модели, которую вы получаете путем регрессии x на y, то есть x ~ yмодели. Другими словами, «перевернутая y ~ xмодель» выполняет предсказание х хуже, чем модель OLS x ~ y.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.