Regresi logistik

Dasar-Dasar Probabilitas di Python

Alexander A. Ramírez M.

CEO @ Synergy Vision

Data awal

Data jam belajar vs skor

Dasar-Dasar Probabilitas di Python

Data baru

Plot lulus atau gagal

Dasar-Dasar Probabilitas di Python

Di mana Anda menggambar garisnya?

Animasi di mana menggambar garis klasifikasi

Dasar-Dasar Probabilitas di Python

Solusi berbasis probabilitas

Perhitungan probabilitas dengan model

Dasar-Dasar Probabilitas di Python

Fungsi logistik

Plot fungsi logistik

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

Dasar-Dasar Probabilitas di Python

Mengubah kemiringan

animasi parameter kemiringan membuat fungsi sigmoid lebih curam

Dasar-Dasar Probabilitas di Python

Mengubah intersep

plot fungsi sigmoid dengan parameter intersep

Dasar-Dasar Probabilitas di Python

Dari data ke probabilitas

Perhitungan probabilitas dengan model logistik

Dasar-Dasar Probabilitas di Python

Keluaran

Plot keluaran model logistik

Dasar-Dasar Probabilitas di Python

Salah klasifikasi

Perhitungan probabilitas dan salah klasifikasi

Dasar-Dasar Probabilitas di Python

Regresi logistik

# 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)
Dasar-Dasar Probabilitas di Python

Memprediksi keluaran berdasarkan jam belajar

hours_of_study_test = [[10]]
outcome = model.predict(hours_of_study_test)
print(outcome)
array([False])
Dasar-Dasar Probabilitas di Python

Perhitungan probabilitas

$$ $$

# 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])
Dasar-Dasar Probabilitas di Python

Ayo berlatih!

Dasar-Dasar Probabilitas di Python

Preparing Video For Download...