로지스틱 회귀

Python으로 배우는 확률 기초

Alexander A. Ramírez M.

CEO @ Synergy Vision

원본 데이터

공부 시간 vs 점수 데이터

Python으로 배우는 확률 기초

새 데이터

합격/불합격 테스트 플롯

Python으로 배우는 확률 기초

경계선을 어디에 그리겠습니까?

경계선 어디에 그릴지 애니메이션 플롯

Python으로 배우는 확률 기초

확률 기반 해법

모델로 확률 계산

Python으로 배우는 확률 기초

로지스틱 함수

로지스틱 함수 플롯

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

Python으로 배우는 확률 기초

기울기 변경

기울기 파라미터가 시그모이드를 가파르게 만드는 애니메이션

Python으로 배우는 확률 기초

절편 변경

절편 파라미터 시그모이드 함수 플롯

Python으로 배우는 확률 기초

데이터에서 확률로

로지스틱 모델로 확률 계산

Python으로 배우는 확률 기초

결과

로지스틱 모델 결과 플롯

Python으로 배우는 확률 기초

오분류

확률 계산과 오분류

Python으로 배우는 확률 기초

로지스틱 회귀

# 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으로 배우는 확률 기초

공부 시간으로 결과 예측

hours_of_study_test = [[10]]
outcome = model.predict(hours_of_study_test)
print(outcome)
array([False])
Python으로 배우는 확률 기초

확률 계산

$$ $$

# 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으로 배우는 확률 기초

Ayo berlatih!

Python으로 배우는 확률 기초

Preparing Video For Download...