본문 바로가기
Mathematics/Mathematical Statistics

『개발자를 위한 필수 수학』 Chapter 6. 로지스틱 회귀와 분류

by Night Fury 2024. 10. 8.
반응형
토머스 닐드, 『개발자를 위한 필수 수학』, 박해선, 한빛미디어-OREILLY(2024), p219-254.

 

로지스틱 함수

하나의 입력 변수 x에 대한 확률 y

$$ y=\frac{1}{1+e^{-(\beta_0+\beta_1x)}}$$

 

로그 오즈(log-odds) 함수

$$-(\beta_0+\beta_1x)$$

 

둘 이상의 입력 변수 x에 대한 확률 y

$$y=\frac{1}{1+e^{-(\beta_0+\beta_1x_1+\cdots +\beta_nx_n)}}$$

 

최대 가능도 추정(maximum likelihood estimation): 로지스틱 함수가 관측된 데이터를 출력할 가능성을 최대화하는 것

  • 결합 확률 개념을 적용 (여러 사건의 확률 or 가능도를 결합하기 위해 곱함)
  • 작은 소수점 여러 개를 곱할 때 문제 ➡️ log()

$$Joint\;Probability=\prod_{i=1}^{n}{(\frac{1}{1+e^{-(\beta_0+\beta_1x_i)}})^{y_i}}\times{(1-\frac{1}{1+e^{-(\beta_0+\beta_1x_i)}})^{1-y_i}}$$

 

 

lambdify(): 표현식을 파이썬 함수로 변환하는 함수

 

로짓 함수(logit function): 오즈를 자연로그로 감싼 것

  • 다른 확률과 비교하기가 더 쉬움
    • 0보다 큰 값: 사건이 발생할 확률이 높은 것으로 간주
    • 0보다 작은 값: 사건이 발생하지 않을 확률이 높은 것으로 간주
  • https://www.youtube.com/watch?v=ARfXDSkQf1Y

 

오즈 비(odds ratio):하나의 x값과 다른 x값 간의 효과를 비교할 수 있음

  • e.g. 8시간 오즈 값 / 6시간 오즈 값 = 4 ➡️ 2시간 더 노출되면 증상 발생 확률이 4배 증가하는 것을 의미

 

R2 = (훈련 전 로그 가능도) - (훈련 후 로그 가능도) / (훈련 전 로그 가능도)

 

오차행렬(Confusion Matrix)

  • precision: TP / (TP+FP)
  • sensitivity(=recall) : TP / (TP+FN)
  • specificity: TN / (TN+FP)
  • negative predicted value: TN / (TN+FN)
  • accuracy : (TP+TN) / (TP+TN+FP+FN)

출처: https://velog.io/@gangjoo/ML-%ED%8F%89%EA%B0%80-%EC%98%A4%EC%B0%A8-%ED%96%89%EB%A0%AC-Confusion-Matrix-%EC%A0%95%EB%B0%80%EB%8F%84-Precision-%EC%9E%AC%ED%98%84%EC%9C%A8-Recall

 

 

ROC Curve (Receiver Operator Characteristic curve)

출처: https://machinelearningmastery.com/roc-curves-and-precision-recall-curves-for-classification-in-python/

 

Reference

반응형

댓글