Am primit câteva întrebări despre regresia bayesiană:
-
Având în vedere o regresie standard ca $ y = \ beta_0 + \ beta_1 x + \ varepsilon $. Dacă vreau să schimb acest lucru într-o regresie bayesiană, am nevoie de distribuții anterioare atât pentru $ \ beta_0 $, cât și $ \ beta_1 $ (sau nu funcționează așa)?
-
În regresia standard, s-ar încerca să minimizeze reziduurile pentru a obține valori unice pentru $ \ beta_0 $ și $ \ beta_1 $. Cum se face acest lucru în regresia Bayes?
Chiar mă lupt foarte mult aici:
$$ \ text {posterior} = \ text {anterior} \ times \ text {probabilitate} $$
Probabilitatea vine din setul de date curent (deci este parametrul meu de regresie, dar nu ca o singură valoare, ci ca distribuție de probabilitate, nu?). Anterior provine dintr-o cercetare anterioară (să spunem). Așa că am obținut această ecuație:
$$ y = \ beta_1 x + \ varepsilon $$
cu $ \ beta_1 $ fiind probabilitatea mea sau posterioară (sau este doar complet greșit)?
Pur și simplu nu pot înțelege cum se transformă regresia standard într-una Bayes.
Răspuns
Modelul de regresie liniară simplă
$$ y_i = \ alpha + \ beta x_i + \ varepsilon $$
în termeni de model probabilistic din spatele acestuia
$$ \ mu_i = \ alpha + \ beta x_i \\ y_i \ sim \ mathcal {N} (\ mu_i, \ sigma) $$
adică variabila dependentă $ Y $ urmează distribuția normală parametrizată prin medie $ \ mu_i $, adică o funcție liniară de $ X $ parametrizată cu $ \ alpha, \ beta $ și prin deviația standard $ \ sigma $. Dacă estimați un astfel de model folosind cele mai mici pătrate , nu trebuie să vă deranjați cu privire la formularea probabilistică, deoarece căutați valori optime de $ \ alpha, \ parametrii beta $ prin minimizarea erorilor pătrate ale valorilor ajustate la valorile prezise. Pe de altă parte, ați putea estima un astfel de model folosind estimarea maximă a probabilității , unde ați căuta valori optime ale parametrilor prin maximizarea funcției de probabilitate
$$ \ DeclareMathOperator * {\ argmax} {arg \, max} \ argmax _ {\ alpha, \, \ beta, \, \ sigma} \ prod_ {i = 1} ^ n \ mathcal {N} (y_i; \ alpha + \ beta x_i, \ sigma) $$
unde $ \ mathcal {N} $ este o funcție de densitate a distribuției normale evaluată la $ y_i $ puncte, parametrizată prin mijloace $ \ alpha + \ beta x_i $ și deviația standard $ \ sigma $.
În abordarea bayesiană, în loc să maximizăm singura funcția de probabilitate, am presupune distribuții anterioare pentru parametri și vom folosi teorema Bayes
$$ \ text {posterior } \ propto \ text {probabilitate} \ ori \ text {anterior} $$
Funcția de probabilitate este aceeași ca mai sus, dar ceea ce se schimbă este că presupuneți că unele distribuții anterioare pentru parametrii estimați $ \ alpha, \ beta, \ sigma $ și includeți-i în ecuație
$$ \ underbrace {f (\ alpha, \ beta, \ sigma \ mid Y, X)} _ {\ text {posterior}} \ propto \ underbrace {\ prod_ {i = 1} ^ n \ mathcal {N} (y_i \ mid \ alpha + \ beta x_i, \ sigma)} _ {\ text {probabilitate}} \ ; \ underbrace {f _ {\ alpha} (\ alpha) \, f _ {\ beta} (\ beta) \, f _ {\ sigma} (\ sigma)} _ {\ text {priors}} $$
„Ce distribuții?” este o întrebare diferită, deoarece există un număr nelimitat de opțiuni. Pentru parametrii $ \ alpha, \ beta $ puteți, de exemplu, să presupuneți distribuții normale parametrizate de niște hiperparametri , sau $ t $ -distribuire dacă doriți să presupuneți cozi mai grele, sau distribuție uniformă dacă nu doriți să faceți multe ipoteze, dar doriți să presupuneți că parametrii pot fi a priori „orice în intervalul dat” etc. Pentru $ \ sigma $ trebuie să presupuneți o distribuție anterioară care este limitată să fie mai mare decât zero, deoarece deviația standard trebuie să fie pozitivă. Acest lucru poate duce la formularea modelului, așa cum este ilustrat mai jos de John K. Kruschke.
(sursa: http://www.indiana.edu/~kruschke/BMLR/ )
În timp ce în maximă probabilitate căutați o valoare optimă unică pentru fiecare dintre parametri, în abordarea bayesiană prin aplicarea teoremei Bayes, obțineți distribuția posterioară a parametrilor. Estimarea finală va depinde de informațiile care provin din datele dvs. și de priorii dvs., dar cu cât sunt conținute mai multe informații în datele dvs., cu atât mai puțin influente sunt priori .
Observați că atunci când utilizați prioruri uniforme, acestea iau forma $ f (\ theta) \ propto 1 $ după renunțarea la constantele de normalizare. Acest lucru face ca teorema lui Bayes să fie proporțională cu funcția de probabilitate singură, astfel încât distribuția posterioară va atinge maximul exact în același punct ca estimarea maximă a probabilității.Ceea ce urmează, estimarea sub priorități uniforme va fi aceeași ca și prin utilizarea celor mai mici pătrate obișnuite, deoarece minimizarea erorilor pătrate corespunde maximizării probabilității normale .
Pentru a estima un model în abordarea bayesiană în unele cazuri, puteți utiliza priori conjugați , deci posterior distribuția em> este direct disponibilă (a se vedea exemplul aici ). Cu toate acestea, în marea majoritate a cazurilor distribuția posterioară nu va fi disponibilă direct și va trebui să utilizați metodele Markov Chain Monte Carlo pentru estimarea model (verificați acest exemplu de utilizare a algoritmului Metropolis-Hastings pentru estimarea parametrilor de regresie liniară). În cele din urmă, dacă sunteți interesat doar de estimări punctuale ale parametrilor, puteți utiliza estimare maximă a posteriori , adică
$$ \ argmax_ { \ alpha, \, \ beta, \, \ sigma} f (\ alpha, \ beta, \ sigma \ mid Y, X) $$
Pentru o descriere mai detaliată a regresiei logistice puteți verifica Model logit Bayesian – explicație intuitivă? fir.
Pentru a afla mai multe, puteți verifica următoarele cărți:
Kruschke, J. (2014). Realizarea analizei bayesiene a datelor: un tutorial cu R, JAGS și Stan. Academic Press.
Gelman, A., Carlin, JB, Stern, HS și Rubin, DB (2004). Analiza datelor bayesiene. Chapman & Hall / CRC.
Comentarii
- +1 Având în vedere modul în care este formulată întrebarea, eu ‘ aș putea sublinia un pic mai mult această diferență filozofică: În estimările minime pătrate obișnuite și estimarea maximă a probabilității, începem cu întrebarea ” Care sunt cele mai bune valori pentru $ \ beta_i $ (probabil pentru utilizare ulterioară )? ” , în timp ce în abordarea bayesiană completă, începem cu întrebarea ” Ce putem spune despre valorile necunoscute $ \ beta_i $? ” și poate continuați să utilizați media maximă a posteriori sau posterioară dacă este necesară o estimare punctuală.
- +1. Un alt lucru care ar putea fi util să subliniem pentru a clarifica relația dintre abordările bayesiene și OLS este că OLS poate fi înțeleasă ca medie posterioară sub un prior plat (cel puțin din câte înțeleg eu). Ar fi grozav dacă ați putea explica mai puțin despre asta în răspunsul dvs.
- @amoeba ‘ este un punct bun, eu ‘ mă voi gândi la asta. Dar, pe de altă parte, nu ‘ nu vreau să fac răspunsul mult prea lung, așa că există un punct în a merge la detalii.
- @amoeba FYI, I a adăugat un scurt comentariu la acest lucru.
Răspuns
Având în vedere un set de date $ D = (x_1, y_1) , \ ldots, (x_N, y_N) $ unde $ x \ in \ mathbb {R} ^ d, y \ in \ mathbb {R} $, o regresie liniară bayesiană modelează problema în felul următor:
Anterior: $$ w \ sim \ mathcal {N} (0, \ sigma_w ^ 2 I_d) $$
$ w $ este vector $ (w_1, \ ldots, w_d) ^ T $, deci distribuția anterioară este un Gaussian multivariat; și $ I_d $ este matricea de identitate $ d \ times d $.
Probabilitate: $$ Y_i \ sim \ mathcal {N} (w ^ T x_i, \ sigma ^ 2) $$
Presupunem că $ Y_i \ perp Y_j | w, i \ neq j $
Deocamdată vom folosi precizia în locul varianței, $ a = 1 / \ sigma ^ 2 $ și $ b = 1 / \ sigma_w ^ 2 $. Vom presupune, de asemenea, că $ a, b $ sunt cunoscute.
Priorul poate fi declarat ca $$ p (w) \ propto \ exp \ Big \ {- \ frac {b} {2} w ^ tw \ Big \} $$
Și probabilitatea $$ p (D | w) \ propto \ exp \ Big \ {- \ frac {a} {2} (y-Aw) ^ T (y-Aw) \ Big \} $$
unde $ y = (y_1, \ ldots, y_N) ^ T $ și $ A $ este o matrice $ n \ times d $ unde i -al rândul este $ x_i ^ T $.
Apoi posteriorul este $$ p (w | D) \ propto p (D | w) p (w) $$
După multe calcule descoperim că
$$ p (w | D) \ sim \ mathcal {N} (w | \ mu, \ Lambda ^ {- 1}) $$
unde ($ \ Lambda $ este matricea de precizie)
$$ \ Lambda = a A ^ TA + b I_d $$ $ $ \ mu = a \ Lambda ^ {- 1} A ^ T y $$
Observați că $ \ mu $ este egal cu $ w_ {MAP} $ din regresia liniară regulată, acest lucru se datorează faptului că pentru Gaussian, media este egală cu modul.
De asemenea, putem face o algebră peste $ \ mu $ și putem obține următoarea egalitate ($ \ Lambda = a A ^ TA + bI_d $):
$$ \ mu = (A ^ TA + \ frac {b} {a} I_d) ^ {- 1} A ^ T y $$
și comparați cu $ w_ {MLE} $:
$$ w_ {MLE} = (A ^ TA) ^ {- 1} A ^ T y $$
Expresia suplimentară în $ \ mu $ corespunde celei anterioare. Acest lucru este similar cu expresia pentru regresia Ridge, pentru cazul special când $ \ lambda = \ frac {b} {a} $. Regresia Ridge este mai generală, deoarece tehnica poate alege priori improprii (în perspectiva bayesiană).
Pentru distribuția predictivă posterioară:
$$ p (y | x, D) = \ int p (y | x, D, w) p (w | x, D ) dw = \ int p (y | x, w) p (w | D) dw $$
este posibil să se calculeze că
$$ y | x, D \ sim \ mathcal {N} (\ mu ^ Tx, \ frac {1} {a} + x ^ T \ Lambda ^ {- 1} x) $$
Referință: Lunn și colab. Cartea BUGS
Pentru utilizarea unui instrument MCMC precum JAGS / Stan verificați Kruschke „s Efectuarea analizei bayeziene a datelor
Comentarii
- Mulțumesc jpneto. Cred că acesta este un răspuns minunat, dar încă nu îl înțeleg din cauza lipsei de matematică cunoștințe. Dar cu siguranță o voi citi din nou după ce am dobândit niște abilități matematice
- Este foarte frumos, dar presupunerea că precizia este cunoscută este puțin neobișnuită. Isn ‘ nu este mult mai obișnuit să presupunem o distribuție Gamma inversă pentru varianță, adică o distribuție Gamma pentru precizie?
- +1. Puteți comenta un pic mai mult pe ” Regresia crestei este mai generală, deoarece tehnica poate alege priorii necorespunzători „? ‘ nu o primesc. I gândit RR = Gaussian (adecvat) prior pe $ w $.
- @amoeba: Prior Gaussian este $ w \ sim N (0, \ lambda ^ {- 1} I_d) $ dar $ \ lambda $ poate sa să fie zero, ceea ce rezultă într-un precedent necorespunzător, adică rezultă în MLE.
- @DeltaIV: sigur, atunci când avem incertitudine cu privire la un parametru îl putem modela cu un prior. Presupunerea de precizie cunoscută este de a face mai ușoară găsirea unei soluții analitice. De obicei, acele soluții analitice nu sunt posibile și trebuie să folosim aproximări, cum ar fi MCMC sau o tehnică variațională.