Diciamo che esiste una relazione “vera” tra $ y $ e $ x $ tale che $ y = ax + b + \ epsilon $, dove $ a $ e $ b $ sono costanti e $ \ epsilon $ è senza rumore normale. Quando generi dati casualmente da quel codice R: x <- 1:100; y <- ax + b + rnorm(length(x))
e quindi adattare un modello come y ~ x
, ovviamente ottengo stime ragionevolmente buone per $ a $ e $ b $.
Se cambio ruolo delle variabili come in (x ~ y)
, tuttavia, e quindi riscrivi il risultato per $ y $ in funzione di $ x $, la pendenza risultante è sempre più ripida (più negativa o più positivo) rispetto a quello stimato dalla regressione y ~ x
. Sto cercando di capire esattamente il motivo e apprezzerei se qualcuno potesse darmi unintuizione su cosa sta succedendo lì .
Commenti
- Questo ‘ non è vero in generale. Forse ‘ lo vedi solo nei tuoi dati. Incolla questo codice: y = rnorm (10); x = rnorm (10); lm (y ~ x); lm (x ~ y); in R più volte e ‘ scoprirai che va in entrambe le direzioni.
- Questo ‘ è leggermente diverso da quello Stavo descrivendo Nel tuo esempio y non era affatto ‘ una funzione di x, quindi ‘ non è affatto ” pendenza ” (‘ a ‘ nel mio esempio).
- lm (y ~ x) si adatta al modello $ y = \ beta_ {0} + \ beta_ {1} x + \ varepsilon $ per minimi quadrati (equivalente alla stima ML quando gli errori sono normali). Cè una pendenza.
- La tua domanda viene posta e risposta (più o meno) a stats.stackexchange.com/questions/13126 e stats.stackexchange.com/questions/18434 . Tuttavia, credo che nessuno abbia ancora fornito una spiegazione semplice e chiara delle relazioni tra (a) regressione di $ Y $ vs $ X $, (b) regressione di $ X $ vs $ Y $, (c) analisi della correlazione di $ X $ e $ Y $, (d) regressione degli errori nelle variabili di $ X $ e $ Y $ e (e) adattare una distribuzione Normale bivariata a $ (X, Y) $. Questo sarebbe un buon posto per una simile esposizione :-).
- Ovviamente Macro ha ragione: poiché xey giocano ruoli equivalenti nella domanda, quale pendenza è più estrema è una questione di caso. Tuttavia, la geometria suggerisce (erroneamente) che quando invertiamo xey nella regressione, dovremmo ottenere il destinatario della pendenza originale. Ciò non accade mai tranne quando xey sono linearmente dipendenti. Questa domanda può essere interpretata come una domanda sul perché.
Risposta
Dati $ n $ punti dati $ (x_i, y_i), i = 1,2, \ ldots n $, nel piano, tracciamo una linea retta $ y = ax + b $. Se prevediamo $ ax_i + b $ come valore $ \ hat {y} _i $ di $ y_i $, l errore è $ (y_i- \ hat {y} _i) = (y_i- ax_i-b) $, l errore al quadrato è $ (y_i-ax_i-b) ^ 2 $ e l errore al quadrato totale $ \ sum_ {i = 1} ^ n (y_i-ax_i-b) ^ 2 $. Chiediamo
Quale scelta di $ a $ e $ b $ minimizza $ S = \ displaystyle \ sum_ {i = 1} ^ n (y_i-ax_i -b) ^ 2 $?
Poiché $ (y_i-ax_i-b) $ è la distanza verticale di $ (x_i, y_i) $ dal retta, chiediamo la retta in modo che la somma dei quadrati delle distanze verticali dei punti dalla retta sia la più piccola possibile. Ora $ S $ è una funzione quadratica sia di $ a $ che di $ b $ e raggiunge il suo valore minimo quando $ a $ e $ b $ sono tali che $$ \ begin {align *} \ frac {\ partial S} {\ parziale a} & = 2 \ sum_ {i = 1} ^ n (y_i-ax_i-b) (- x_i) & = 0 \\ \ frac {\ partial S} {\ partial b} & = 2 \ sum_ {i = 1} ^ n (y_i-ax_i-b) (- 1) & = 0 \ end {align *} $$ Dalla seconda equazione, otteniamo $$ b = \ frac {1} {n} \ sum_ {i = 1} ^ n ( y_i – ax_i) = \ mu_y – a \ mu_x $$ dove $ \ displaystyle \ mu_y = \ frac {1} {n} \ sum_ {i = 1} ^ n y_i, ~ \ mu_x = \ frac {1} {n } \ sum_ {i = 1} ^ n x_i $ sono i valori medi aritmetici rispettivamente di $ y_i $ “se $ x_i $”. Sostituendo la prima equazione, otteniamo $$ a = \ frac {\ left (\ frac {1} {n} \ sum_ {i = 1} ^ n x_iy_i \ right) – \ mu_x \ mu_y} {\ left (\ frac {1} {n} \ sum_ {i = 1} ^ n x_i ^ 2 \ right) – \ mu_x ^ 2}. $$ Quindi, la linea che minimizza $ S $ può essere espressa come $$ y = ax + b = \ mu_y + \ left (\ frac {\ left (\ frac {1} {n} \ sum_ {i = 1} ^ n x_iy_i \ right) – \ mu_x \ mu_y} {\ left (\ frac {1} {n} \ sum_ {i = 1} ^ n x_i ^ 2 \ right) – \ mu_x ^ 2} \ right) (x – \ mu_x), $$ e il valore minimo di $ S $ è $$ S _ {\ min} = \ frac {\ left [\ left (\ frac {1} {n} \ sum_ {i = 1} ^ n y_i ^ 2 \ right) – \ mu_y ^ 2 \ right] \ left [\ left (\ frac {1} {n} \ sum_ {i = 1} ^ n x_i ^ 2 \ right) – \ mu_x ^ 2 \ right ] – \ left [\ left (\ frac {1} {n} \ sum_ {i = 1} ^ n x_iy_i \ right) – \ mu_x \ mu_y \ right] ^ 2} {\ left (\ frac {1} { n} \ sum_ {i = 1} ^ n x_i ^ 2 \ right) – \ mu_x ^ 2}.$$
Se scambiamo i ruoli di $ x $ e $ y $, tracciamo una linea $ x = \ hat {a} y + \ hat {b} $ e chiediamo i valori di $ \ hat {a} $ e $ \ hat {b} $ che minimizzano $$ T = \ sum_ {i = 1} ^ n (x_i – \ hat {a} y_i – \ hat {b}) ^ 2, $$ cioè, vogliamo la linea in modo tale che la somma dei quadrati delle distanze orizzontali dei punti dalla linea sia la più piccola possibile, quindi otteniamo
$$ x = \ hat {a} y + \ hat {b} = \ mu_x + \ left (\ frac {\ left (\ frac {1} {n} \ sum_ {i = 1} ^ n x_iy_i \ right) – \ mu_x \ mu_y} {\ left (\ frac {1} {n} \ sum_ {i = 1} ^ n y_i ^ 2 \ right) – \ mu_y ^ 2} \ right) (y – \ mu_y) $$ e il valore minimo di $ T $ è $$ T _ {\ min} = \ frac {\ left [\ left (\ frac {1} {n} \ sum_ {i = 1} ^ n y_i ^ 2 \ right) – \ mu_y ^ 2 \ right] \ left [\ left (\ frac {1} {n} \ sum_ {i = 1} ^ n x_i ^ 2 \ right) – \ mu_x ^ 2 \ right] – \ left [\ left (\ frac { 1} {n} \ sum_ {i = 1} ^ n x_iy_i \ right) – \ mu_x \ mu_y \ right] ^ 2} {\ left (\ frac {1} {n} \ sum_ {i = 1} ^ n y_i ^ 2 \ right) – \ mu_y ^ 2}. $$
Nota che entrambe le linee passano per il punto $ (\ mu_x, \ mu_y) $ ma le pendenze sono $$ a = \ frac { \ left (\ frac {1} {n} \ sum_ {i = 1} ^ n x_iy_ i \ right) – \ mu_x \ mu_y} {\ left (\ frac {1} {n} \ sum_ {i = 1} ^ n x_i ^ 2 \ right) – \ mu_x ^ 2}, ~~ \ hat {a } ^ {- 1} = \ frac {\ left (\ frac {1} {n} \ sum_ {i = 1} ^ n y_i ^ 2 \ right) – \ mu_y ^ 2} {\ left (\ frac {1 } {n} \ sum_ {i = 1} ^ n x_iy_i \ right) – \ mu_x \ mu_y} $$ sono diversi in generale. Infatti, come sottolinea @whuber in un commento, le pendenze sono le stesse quando tutti i punti $ (x_i, y_i) $ si trovano sulla stessa linea retta. Per vedere questo, nota che $$ \ hat {a} ^ {- 1} – a = \ frac {S _ {\ min}} {\ left (\ frac {1} {n} \ sum_ {i = 1} ^ n x_iy_i \ right) – \ mu_x \ mu_y} = 0 \ Rightarrow S _ {\ min} = 0 \ Rightarrow y_i = ax_i + b, i = 1,2, \ ldots, n. $$
Commenti
- Grazie! abs (correlation) < 1 spiega perché la pendenza era sistematicamente più ripida nel caso inverso.
- (+1) ma ho aggiunto una risposta con solo unillustrazione di quello che hai appena detto, dato che ho una mente geometrica 🙂
- Risposta della classe (+1)
Risposta
Solo per illustrare la risposta di Dilip: nelle immagini seguenti,
- i punti neri sono punti dati;
- a sinistra, la linea nera è la linea di regressione ottenuta da
y ~ x
, che minimizza i quadrati della lunghezza dei segmenti rossi; - a destra, la linea nera è la linea di regressione ottenuta da
x ~ y
, che minimizza i quadrati della lunghezza dei segmenti rossi.
Modifica (regressione minima rettangoli)
Se non esiste un modo naturale per scegliere una “risposta” e una “covariata”, ma piuttosto le due variabili sono interdipendenti potresti voler conservare un ruolo simmetrico per $ y $ e $ x $ ; in questo caso puoi usare “la regressione minima dei rettangoli”.
- scrivi $ Y = aX + b + \ epsilon $, come al solito;
- denota $ \ hat y_i = a x_i + b $ e $ \ hat x_i = {1 \ over a} (y_i – b) $ le stime di $ Y_i $ condizionale a $ X = x_i $ e di $ X_i $ condizionale a $ Y = y_i $;
- minimizza $ \ sum_i | x_i – \ hat x_i | \ cdot | y_i – \ hat y_i | $, che porta a $$ \ hat y = \ mathrm {sign} \ left (\ mathrm {cov} (x, y) \ right) {\ hat \ sigma_y \ over \ hat \ sigma_x} (x- \ overline x) + \ overline y. $$
Di seguito è riportata unillustrazione con gli stessi punti dati, per ogni punto viene calcolato un “rettangolo” come prodotto della lunghezza di due segmenti rossi e la somma dei rettangoli è minimizzato. Non so molto delle proprietà di questa regressione e non trovo molto con Google.
Commenti
- Alcune note: ( 1 ) A meno che non mi sbagli, sembra che ” la regressione dei rettangoli minimi ” è equivalente alla soluzione ottenuta prendendo il primo componente principale sulla matrice $ \ mathbf X = (\ mathbf y, \ mathbf x) $ dopo aver centrato e ridimensionato in hanno varianza unitaria e poi sostituiscono. (cont.)
- (cont.) ( 2 ) Visto in questo modo, è facile vedere che questi ” rettangoli minimi regressione ” è equivalente a una forma di minimi quadrati ortogonali (o totali) e, quindi, ( 3 ) Un caso speciale di regressione di Deming sui vettori centrati e riscalati che assumono $ \ delta = 1 $. I minimi quadrati ortogonali possono essere considerati come ” regressione dei minimi cerchi “.
- @cardinal Commenti molto interessanti! (+1) Credo che lasse maggiore (riducendo al minimo le distanze perpendicolari tra reg.linea e tutti i punti, à la PCA) o regressione dellasse maggiore ridotto o regressione di tipo II come esemplificato in anche il pacchetto R lmodel2 di P Legendre è pertinente poiché queste tecniche vengono utilizzate quando ‘ è difficile da indica quale ruolo (risposta o predittore) gioca ogni variabile o quando vogliamo tenere conto degli errori di misurazione.
- @chl: (+1) Sì, credo che tu abbia ragione e la pagina di Wikipedia sui minimi quadrati totali elenca molti altri nomi per la stessa procedura, non tutti con i quali ho familiarità. Sembra risalire almeno a R. Frisch, Analisi statistica della confluenza mediante sistemi di regressione completi , Universitetets Ø konomiske Instituut, 1934 dove è stato chiamato regressione diagonale .
- @cardinal Avrei dovuto essere più attento quando ho letto la voce di Wikipedia … Per riferimento futuro, ecco una immagine presa da Analisi e progettazione biostatistica utilizzando R , di M. Logan (Wiley, 2010; Fig. 8.4, p. 174), che riassume i diversi approcci, proprio come le belle illustrazioni di Elvis ‘.
Risposta
Solo una breve nota sul motivo per cui vedi la pendenza più piccola per una regressione. Entrambe le pendenze dipendono da tre numeri: deviazioni standard di $ x $ e $ y $ ($ s_ {x} $ e $ s_ {y} $) e correlazione tra $ x $ e $ y $ ($ r $). La regressione con $ y $ come risposta ha pendenza $ r \ frac {s_ {y}} {s_ {x}} $ e la regressione con $ x $ come risposta ha pendenza $ r \ frac {s_ {x}} {s_ {y}} $, quindi il rapporto tra la prima pendenza e il reciproco della seconda è uguale a $ r ^ 2 \ leq 1 $.
Quindi maggiore è la proporzione di varianza spiegata, più vicino è il piste ottenute da ogni caso. Si noti che la proporzione di varianza spiegata è simmetrica ed è uguale alla correlazione quadrata nella regressione lineare semplice.
Risposta
La linea di regressione è non (sempre) la stessa relazione vera
Potresti avere una relazione causale “vera” come
$$ y = a + bx + \ epsilon $$
ma le linee di regressione adattate y ~ x
o x ~ y
non hanno lo stesso significato come quella relazione causale (anche quando in pratica lespressione per una delle rette di regressione può coincidere con lespressione per la relazione causale “vera”)
Relazione più precisa tra le pendenze
Per due regressioni lineari semplici commutate:
$$ Y = a_1 + b_1 X \\ X = a_2 + b_2 Y $$
puoi correlare le pendenze come segue:
$$ b_1 = \ rho ^ 2 \ frac {1} {b_2} \ leq \ frac {1} {b_2} $$
Quindi le piste sono non reciprocamente inverse.
Intuizione
Il motivo è che
- Le linee di regressione e le correlazioni non necessariamente corrisponde uno a uno a una relazione causale.
- Le linee di regressione si riferiscono più direttamente a una probabilità condizionale o alla migliore previsione.
Puoi immaginare che la probabilità condizionale si riferisca alla forza della relazione. Le linee di regressione riflettono questo e le pendenze delle linee possono essere sia poco profonde quando la forza della relazione è piccola o entrambe ripide quando la forza della relazione è forte. Le pendenze non sono semplicemente inverse tra loro.
Esempio
Se due variabili $ X $ e $ Y $ sono collegati tra loro da una relazione lineare (causale) $$ Y = \ text {un po di $ X + $ molto di errore} $$ Quindi puoi immaginare che non sarebbe bene invertire completamente quella relazione nel caso in cui desideri esprimere $ X $ basato su un dato valore di $ Y $ .
Invece di
$$ X = \ text {molto $ Y + $ un po di errore} $$
sarebbe meglio usare anche
$$ X = \ text {un po di $ Y + $ molti errori} $$
Vedi le seguenti distribuzioni di esempio con i loro rispettive linee di regressione.Le distribuzioni sono normali multivariate con $ \ Sigma_ {11} \ Sigma_ {22} = 1 $ e $ \ Sigma_ {12 } = \ Sigma_ {21} = \ rho $
I valori attesi condizionali (ciò che otterresti in una regressione lineare) sono
$$ \ begin {array} {} E (Y | X) & = & \ rho X \\ E (X | Y) & = & \ rho Y \ end {array} $$
e in questo caso con $ X, Y $ una distribuzione normale multivariata, quindi le distribuzioni marginali sono
$$ \ begin {array} {} Y & \ sim & N (\ rho X, 1- \ rho ^ 2) \\ X & \ sim & N (\ rho Y, 1- \ rho ^ 2) \ end {array} $$
Così puoi vedere la variabile Y come un par t $ \ rho X $ e una parte noise con varianza $ 1- \ rho ^ 2 $ . Lo stesso vale al contrario.
Maggiore è il coefficiente di correlazione $ \ rho $ , più vicine saranno le due linee. Ma più bassa è la correlazione, meno forte è la relazione, meno ripide saranno le linee (questo è vero per entrambe le linee Y ~ X
e X ~ Y
)
Commenti
- Questa è una spiegazione eccellente. Semplice e intuitivo
Risposta
Un modo semplice per vederlo è notare che, se per il vero model $ y = \ alpha + \ beta x + \ epsilon $ , esegui due regressioni:
- $ y = a_ {y \ sim x} + b_ {y \ sim x} x $
- $ x = a_ {x \ sim y} + b_ {x \ sim y} y $
Quindi abbiamo, usando $ b_ {y \ sim x } = \ frac {cov (x, y)} {var (x)} = \ frac {cov (x, y)} {var (y)} \ frac {var (y)} {var (x)} $ :
$$ b_ {y \ sim x} = b_ {x \ sim y} \ frac {var (y)} {var ( x)} $$
Quindi se si ottiene una pendenza più ripida o meno dipende solo dal rapporto $ \ frac {var (y)} { var (x)} $ . Questo rapporto è uguale a, in base al presunto modello vero:
$$ \ frac {var (y)} {var (x)} = \ frac { \ beta ^ 2 var (x) + var (\ epsilon)} {var (x)} $$
Collegamento con altre risposte
Puoi collegare questo risultato con le risposte di altri, che hanno detto che quando $ R ^ 2 = 1 $ , dovrebbe essere il reciproco. Infatti, $ R ^ 2 = 1 \ Rightarrow var (\ epsilon) = 0 $ e anche $ b_ {y \ sim x} = \ beta $ (nessun errore di stima), quindi:
$$ R ^ 2 = 1 \ Rightarrow b_ {y \ sim x} = b_ {x \ sim y} \ frac {\ beta ^ 2 var (x) + 0} {var (x)} = b_ {x \ sim y} \ beta ^ 2 $$
Quindi $ b_ {x \ sim y} = 1 / \ beta $
Risposta
Diventa interessante quando cè anche rumore sui tuoi input (che potremmo sostenere è sempre il caso, nessun comando o osservazione è mai perfetto).
I abbiamo costruito alcune simulazioni per osservare il fenomeno, basate su una semplice relazione lineare $ x = y $, con rumore gaussiano sia su x che su y. Ho generato le osservazioni come segue (codice python):
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)
Vedi i diversi risultati (odr qui è ortogonale regressione della distanza, cioè lo stesso della regressione dei rettangoli minimi):
Tutto il codice è lì:
https://gist.github.com/jclevesque/5273ad9077d9ea93994f6d96c20b0ddd
Risposta
La risposta breve
Lobiettivo di una semplice regressione lineare è trovare le migliori previsioni del y
, dati i valori della variabile x
. Questo è un obiettivo diverso dal cercare di ottenere la migliore previsione della variabile x
, dati i valori della variabile y
.
La regressione lineare semplice di y ~ x
fornisce il modello “migliore” possibile per prevedere y
dato x
. Quindi, se si adatta un modello per x ~ y
e lo si inverte algebricamente, quel modello potrebbe funzionare al meglio solo come il modello per y ~ x
. Ma invertire un modello di adattamento per x ~ y
di solito peggiora la previsione di y
dato x
, rispetto al modello “ottimale” y ~ x
, perché il modello “inverted x ~ y
” è stato creato per raggiungere un obiettivo diverso.
Illustrazione
Immagina di avere il seguente set di dati:
Quando esegui una regressione OLS di y ~ x
, ottieni il seguente modello
y = 0.167 + 1.5*x
Questo ottimizza le previsioni di y
effettuando le seguenti previsioni, che hanno errori associati:
Le previsioni di regressione OLS sono ottimali nel senso che la la somma dei valori nella colonna più a destra (cioè la somma dei quadrati) è la più piccola possibile.
Quando esegui una regressione OLS di x ~ y
, inventare un modello diverso:
x = -0.07 + 0.64*y
Questo ottimizza le previsioni di x facendo le seguenti previsioni, con gli errori associati.
Ancora una volta, questo è ottimale nel senso che la somma dei valori della colonna più a destra è la più piccola possibile (uguale a 0.071
).
Ora, immagina di aver provato a invertire semplicemente il primo modello, y = 0.167 + 1.5*x
, usando lalgebra, dandoti il modello x = -0.11 + 0.67*x
.
In questo modo vengono fornite le seguenti previsioni e gli errori associati:
La somma dei valori nella colonna più a destra è 0.074
, che è maggiore di la somma corrispondente dal modello che ottieni facendo regredire x su y, cioè il modello x ~ y
. In altre parole, il modello “inverted y ~ x
” sta facendo un lavoro peggiore nel prevedere x rispetto al modello OLS di x ~ y
.