Lojistik regresyon

Python ile Olasılığın Temelleri

Alexander A. Ramírez M.

CEO @ Synergy Vision

Orijinal veri

Çalışma saati vs. puan verisi

Python ile Olasılığın Temelleri

Yeni veri

Geçti/Kaldı test grafiği

Python ile Olasılığın Temelleri

Çizgiyi nereye çizerdin?

Sınırlayıcı çizgi nereye? animasyon grafiği

Python ile Olasılığın Temelleri

Olasılığa dayalı çözüm

Modelle olasılık hesabı

Python ile Olasılığın Temelleri

Lojistik fonksiyon

Lojistik fonksiyon grafiği

$$ logistic(t) = logistic(slope*x + intercept) $$

Python ile Olasılığın Temelleri

Eğimi değiştirmek

Eğim parametresi sigmoid fonksiyonu dikleştiriyor animasyonu

Python ile Olasılığın Temelleri

Kesimi değiştirmek

Kesim parametresi sigmoid fonksiyon grafiği

Python ile Olasılığın Temelleri

Veriden olasılığa

Lojistik modelle olasılık hesabı

Python ile Olasılığın Temelleri

Çıktılar

Lojistik model çıktı grafiği

Python ile Olasılığın Temelleri

Yanlış sınıflamalar

Olasılık hesabı ve yanlış sınıflamalar

Python ile Olasılığın Temelleri

Lojistik regresyon

# Import LogisticRegression
from sklearn.linear_model import LogisticRegression
# sklearn logistic model
model = LogisticRegression(C=1e9)
model.fit(hours_of_study, outcomes)
# Get parameters
beta1 = model.coef_[0][0]
beta0 = model.intercept_[0]
# Print parameters
print(beta1, beta0)
(1.3406531235010786, -15.05906237996095)
Python ile Olasılığın Temelleri

Çalışma saatine göre çıktı tahmini

hours_of_study_test = [[10]]
outcome = model.predict(hours_of_study_test)
print(outcome)
array([False])
Python ile Olasılığın Temelleri

Olasılık hesabı

$$ $$

# Put value in an array
value = np.asarray(9).reshape(-1,1)
# Calculate the probability for 9 hours of study
print(model.predict_proba(value)[:,1])
array([0.04773474])
Python ile Olasılığın Temelleri

Hadi pratik yapalım!

Python ile Olasılığın Temelleri

Preparing Video For Download...