Gustând din Bayes

Analiza bayesiană a datelor în Python

Michal Oleszak

Machine Learning Engineer

Distribuția binomială

  • Distribuție discretă, poate lua doar două valori:
    • Succes (1)
    • Eșec (0)
  • Un parametru: probabilitatea de succes.
  • Sarcină: pe baza unei liste de extrageri, estimați probabilitatea de succes.
Analiza bayesiană a datelor în Python

Distribuția binomială în Python

Număr de succese în 100 de încercări:

import numpy as np
np.random.binomial(100, 0.5)
51

 

np.random.binomial(100, 0.5)
44

Extrageri dintr-o distribuție binomială:

import numpy as np
np.random.binomial(1, 0.5, size=5)
array([1, 0, 0, 1, 1])
Analiza bayesiană a datelor în Python

Probabilitatea capului

  • get_heads_prob() - funcție personalizată
  • intrare: o listă de aruncări cu moneda
  • ieșire: o listă cu distribuția probabilității de succes

 

import numpy as np
tosses = np.random.binomial(1, 0.5, size=1000)
print(tosses)
[1 0 0 0 1 1 0 1 1 ... ]
Analiza bayesiană a datelor în Python

Probabilitatea capului

heads_prob = get_heads_prob(tosses)
print(heads_prob)
[0.47815295 0.51679212 0.51684779 ... ]
import matplotlib.pyplot as plt
import seaborn as sns

sns.kdeplot(heads_prob, 
            shade=True, 
            label="heads probabilty")
plt.show()

Curbă simetrică în formă de clopot cu vârful în jurul valorii 0,51 pe axa X.

Analiza bayesiană a datelor în Python

Să aruncăm cu moneda!

Analiza bayesiană a datelor în Python

Preparing Video For Download...