Raportarea rezultatelor bayesiene

Analiza bayesiană a datelor în Python

Michal Oleszak

Machine Learning Engineer

Modul onest

  • Raportați distribuția a priori și a posteriori pentru fiecare parametru
posterior_draws
array([8.02800413, 8.97359548, 7.57437476, ..., 5.85264609, 7.92875104,
       7.41463758])
  • Reprezentați grafic distribuțiile a priori și a posteriori
sns.kdeplot(prior_draws, shade=True, label="prior")
sns.kdeplot(posterior_draws, shade=True, label="posterior")
Analiza bayesiană a datelor în Python

Modul onest

Două grafice de densitate suprapuse. Ambele au formă de clopot. A priori este centrată la 0, scurtă și largă; a posteriori este centrată în jurul valorii 7 și este mult mai înaltă și mai îngustă.

Analiza bayesiană a datelor în Python

Modul onest

Două grafice de densitate suprapuse. Ambele au formă de clopot. A priori este centrată la 0, scurtă și largă; a posteriori este centrată în jurul valorii 7 și este mult mai înaltă și mai îngustă.

Analiza bayesiană a datelor în Python

Modul onest

Două grafice de densitate suprapuse. Ambele au formă de clopot. A priori este centrată la 0, scurtă și largă; a posteriori este centrată în jurul valorii 7 și este mult mai înaltă și mai îngustă.

Analiza bayesiană a datelor în Python

Modul onest

Două grafice de densitate suprapuse. Ambele au formă de clopot. A priori este centrată la 0, scurtă și largă; a posteriori este centrată în jurul valorii 7 și este mult mai înaltă și mai îngustă.

Analiza bayesiană a datelor în Python

Estimări punctuale bayesiene

  • Niciun număr nu poate reda complet informațiile dintr-o distribuție

  • Uneori este totuși nevoie de o estimare punctuală a unui parametru

Un grafic de densitate în formă de clopot.

Analiza bayesiană a datelor în Python

Estimări punctuale bayesiene

  • Niciun număr nu poate reda complet informațiile dintr-o distribuție

  • Uneori este totuși nevoie de o estimare punctuală a unui parametru

posterior_mean = np.mean(posterior_draws)


Un grafic de densitate în formă de clopot cu o linie verticală marcând media.

Analiza bayesiană a datelor în Python

Estimări punctuale bayesiene

  • Niciun număr nu poate reda complet informațiile dintr-o distribuție

  • Uneori este totuși nevoie de o estimare punctuală a unui parametru

posterior_mean = np.mean(posterior_draws)
posterior_median = np.median(posterior_draws)

Un grafic de densitate în formă de clopot cu o linie verticală marcând mediana.

Analiza bayesiană a datelor în Python

Estimări punctuale bayesiene

  • Niciun număr nu poate reda complet informațiile dintr-o distribuție

  • Uneori este totuși nevoie de o estimare punctuală a unui parametru

posterior_mean = np.mean(posterior_draws)
posterior_median = np.median(posterior_draws)
posterior_p75 = np.percentile(posterior_draws, 75)

Un grafic de densitate în formă de clopot cu o linie verticală marcând percentila 75.

Analiza bayesiană a datelor în Python

Intervale credibile

  • Un interval cu probabilitatea x% ca parametrul să se afle în interiorul său
  • Cu cât intervalul credibil este mai larg, cu atât incertitudinea este mai mare
  • Parametrul este aleator, deci poate cădea într-un interval cu o anumită probabilitate
  • În abordarea frecventistă, intervalul (de încredere) este aleator, iar parametrul este fix

Un grafic de densitate în formă de clopot cu două linii verticale punctate delimitând regiunea dintre ele.

Analiza bayesiană a datelor în Python

Cea mai mare densitate a posteriori (HPD)

Un GIF cu un grafic de densitate în formă de clopot, prezentând o linie orizontală coborând pe grafic, rezultând o zonă crescândă a masei de probabilitate dintre punctele de intersecție ale liniei cu graficul.

import arviz as az

hpd = az.hdi(posterior_draws, 
             hdi_prob=0.9)
print(hpd)
[-4.86840193  4.96075498]
Analiza bayesiană a datelor în Python

Exersați raportarea rezultatelor bayesiene!

Analiza bayesiană a datelor în Python

Preparing Video For Download...