Bayes’i Tatmak

Python ile Bayesçi Veri Analizi

Michal Oleszak

Machine Learning Engineer

Binom dağılımı

  • Ayrık bir dağılım; yalnızca iki değer alır:
    • Başarı (1)
    • Başarısızlık (0)
  • Tek parametre: başarı olasılığı.
  • Görev: çekiliş (başarı/başarısızlık) listesine göre başarı olasılığını tahmin etmek.
Python ile Bayesçi Veri Analizi

Python’da binom dağılımı

100 denemedeki başarı sayısı:

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

 

np.random.binomial(100, 0.5)
44

Binomdan örneklem alma:

import numpy as np
np.random.binomial(1, 0.5, size=5)
array([1, 0, 0, 1, 1])
Python ile Bayesçi Veri Analizi

Tura (heads) olasılığı

  • get_heads_prob() - özel bir fonksiyon
  • girdi: yazı-tura listesi
  • çıktı: başarı olasılığı dağılımı (liste)

 

import numpy as np
tosses = np.random.binomial(1, 0.5, size=1000)
print(tosses)
[1 0 0 0 1 1 0 1 1 ... ]
Python ile Bayesçi Veri Analizi

Tura (heads) olasılığı

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()

X ekseninde 0,51 civarında tepe yapan simetrik, çan eğrisi.

Python ile Bayesçi Veri Analizi

Hadi biraz yazı-tura atalım!

Python ile Bayesçi Veri Analizi

Preparing Video For Download...