Olasılık ve Bayes Teoremi

Python ile Bayesçi Veri Analizi

Michal Oleszak

Machine Learning Engineer

Olasılık kuramı

  • Belirsizliği ifade eder.
  • 0 ile 1 arasında bir sayı.
    • P = 0 → imkansız
    • P = 1 → kesin
    • P = 0.5 → yarı yarıya şans

 

  • P(yarın yağmur) = 0.75 → yarın yağmur olasılığı %75
Python ile Bayesçi Veri Analizi

Olasılık kuralları

Toplam kuralı

  • A veya B olasılığı (bağımsız olaylar)
  • VEYA = toplama
  • Zar ile 2 veya 4 gelme olasılığı

P(2 veya 4) = 1/6 + 1/6 = 0.33333... = %33,3

Çarpım kuralı

  • A ve B olasılığı (bağımsız olaylar)
  • VE = çarpma
  • Zar ile önce 2 sonra 4 gelme olasılığı

P(2 ve 4) = 1/6 * 1/6 = 0.02777... = %2,8

Python ile Bayesçi Veri Analizi

Koşullu olasılık

  • Başka bir olay gerçekleştiğinde bir olayın olasılığı.
  • P(A | B)

 

  • P(turuncu) = 2/3 → koşulsuz
  • P(mavi) = 1/3 → koşulsuz

 

  • P(mavi | turuncu) = 1/2 → koşullu
  • P(turuncu | mavi) = 1 → koşullu

Bir kutuda üç topun şematik resmi. İkisi turuncu, biri mavi.

Python ile Bayesçi Veri Analizi

Bayes Teoremi

  • Diğer bazı olasılıkları bildiğimizde koşullu olasılığı hesaplama yöntemi.

 

$$P(A|B) = \frac{P(B|A) * P(A)}{P(B)}$$

Python ile Bayesçi Veri Analizi

Bayes Teoremi

  • Diğer bazı olasılıkları bildiğimizde koşullu olasılığı hesaplama yöntemi.

 

$$P(\text{kaza}|\text{kaygan}) = \frac{P(\text{kaygan}|\text{kaza}) * P(\text{kaza})}{P(\text{kaygan})}$$

road_conditions.head()
     kaza   kaygan
0       False       True
1        True       True
2       False      False
3       False      False
4       False      False
Python ile Bayesçi Veri Analizi

Bayes Teoremi: uygulama

 

$$P(\text{kaza}|\text{kaygan}) = \frac{P(\text{kaygan}|\text{kaza}) * P(\text{kaza})}{P(\text{kaygan})}$$

# Kazanın koşulsuz olasılığı
p_accident = road_conditions["accident"].mean()  # 0.0625


# Yolun kaygan olmasının koşulsuz olasılığı p_slippery = road_conditions["slippery"].mean() # 0.0892
# Kaza olduğunda yolun kaygan olma olasılığı p_slippery_given_accident = road_conditions.loc[road_conditions["accident"]]["slippery"].mean() # 0.7142
# Yol kayganken kaza olma olasılığı p_accident_given_slippery = p_slippery_given_accident * p_accident / p_slippery # 0.5
Python ile Bayesçi Veri Analizi

Hadi pratik yapalım!

Python ile Bayesçi Veri Analizi

Preparing Video For Download...