Rapporteren van Bayesiaanse resultaten

Bayesian Data Analysis in Python

Michal Oleszak

Machine Learning Engineer

De eerlijke manier

  • Rapporteer de prior en posterior van elke parameter
posterior_draws
array([8.02800413, 8.97359548, 7.57437476, ..., 5.85264609, 7.92875104,
       7.41463758])
  • Plot prior- en posteriorverdelingen
sns.kdeplot(prior_draws, shade=True, label="prior")
sns.kdeplot(posterior_draws, shade=True, label="posterior")
Bayesian Data Analysis in Python

De eerlijke manier

Twee overlappende dichtheidsplots. Beide klokvormig. Prior gecentreerd op 0, laag en breed; posterior rond 7, veel hoger en smaller.

Bayesian Data Analysis in Python

De eerlijke manier

Twee overlappende dichtheidsplots. Beide klokvormig. Prior gecentreerd op 0, laag en breed; posterior rond 7, veel hoger en smaller.

Bayesian Data Analysis in Python

De eerlijke manier

Twee overlappende dichtheidsplots. Beide klokvormig. Prior gecentreerd op 0, laag en breed; posterior rond 7, veel hoger en smaller.

Bayesian Data Analysis in Python

De eerlijke manier

Twee overlappende dichtheidsplots. Beide klokvormig. Prior gecentreerd op 0, laag en breed; posterior rond 7, veel hoger en smaller.

Bayesian Data Analysis in Python

Bayesiaanse puntschattingen

  • Eén getal vat de informatie in een verdeling nooit volledig samen

  • Soms is toch een puntschatting van een parameter nodig

Een klokvormig dichtheidsplot.

Bayesian Data Analysis in Python

Bayesiaanse puntschattingen

  • Eén getal vat de informatie in een verdeling nooit volledig samen

  • Soms is toch een puntschatting van een parameter nodig

posterior_mean = np.mean(posterior_draws)


Een klokvormig dichtheidsplot met een verticale lijn bij het gemiddelde.

Bayesian Data Analysis in Python

Bayesiaanse puntschattingen

  • Eén getal vat de informatie in een verdeling nooit volledig samen

  • Soms is toch een puntschatting van een parameter nodig

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

Een klokvormig dichtheidsplot met een verticale lijn bij de mediaan.

Bayesian Data Analysis in Python

Bayesiaanse puntschattingen

  • Eén getal vat de informatie in een verdeling nooit volledig samen

  • Soms is toch een puntschatting van een parameter nodig

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

Een klokvormig dichtheidsplot met een verticale lijn bij het 75e percentiel.

Bayesian Data Analysis in Python

Geloofwaardige intervallen

  • Een interval waarvoor de kans dat de parameter erin valt x% is
  • Hoe breder het betrouwbaarheidsinterval, hoe meer onzekerheid
  • De parameter is willekeurig, dus kan met een bepaalde kans in het interval vallen
  • Frequentistisch: het (betrouwbaarheids)interval is willekeurig en de parameter is vast

Een klokvormig dichtheidsplot met twee gestippelde verticale lijnen die het gebied ertussen markeren.

Bayesian Data Analysis in Python

Hoogste posterior-dichtheid (HPD)

Een GIF van een klokvormig dichtheidsplot met een horizontale lijn die zakt, waardoor het kansgebied tussen de snijpunten toeneemt.

import arviz as az

hpd = az.hdi(posterior_draws, 
             hdi_prob=0.9)
print(hpd)
[-4.86840193  4.96075498]
Bayesian Data Analysis in Python

Laten we oefenen met het rapporteren van Bayesiaanse resultaten!

Bayesian Data Analysis in Python

Preparing Video For Download...