[시즌1].Lecture 05_1 - Logistic Classification_Hypothesis 함수 소개

* 이 글은 홍콩과기대 김성훈 교수님의 무료 동영상 강좌 "모두를 위한 머신러닝과 딥러닝 강의"를 보고 요점을 정리한 글 입니다.

 

Regression(회귀) 일반화

Regression(회귀)의 Hypothesis(가설)을 일반화 해보면 Equation (1)으로 표현이 가능합니다.

 

$$ H(x)=Wx $$ (1)

 

일반화시킨 Hypothesis를 Cost Function(비용 함수)에 대입해서 Equation (2)를 도출하고, 이 새로이 도출한 Cost Function을 Gradient Descent Algorithm(기울기 감소 알고리즘)에 대입하여 일반화된 공식인 Equation (3)를 도출할 수 있습니다.

 

$$ \text{cost}(W) = \frac{1}{m} \sum_{i=1}^{m} (Wx^{(i)} - y^{(i)})^2 $$ (2)
$$ W := W - \alpha \frac{1}{m} \sum_{i=1}^{m} (Wx^{(i)} - y^{(i)})x^{(i)} $$ (3)

 

Logistic Regression/Classification(논리 회귀/분류)

Classification(분류)에서 가장 기본적인 것은 Binary Classification(이진 분류)입니다. Binary Classification은 분류를 할때 2가지로 항목으로 분류하는 것을 의미하는데 이는 Logistic Regression(논리 회귀) 혹은 Logistic Classification(논리 분류) 이라고 부르기도 합니다. 예를 들어 메일이 스팸메일인지 아닌지 구분하는 것, 주가가 오를지 내릴지 구분하는 것, 시험에 통과할지 떨어질지 구분하는 것들은 모두 Logistic Regression 라고 할 수 있습니다.

Logistic Regression을 할 때는 결과 값을 0과 1로 설정합니다. 왜냐하면 학습의 결과로 분류를 해야하는데 이 결과값이 수치로 나오기 때문입니다.

 

Logistic Hypothesis(논리적 가설)

Logistic Regression의 결과는 0과 1사이의 값이 나와야하는데 Linear Regression에서 사용한 Hypothesis를 적용시킬경우 1보다 매우 크거나 0보다 작은 값이 나올수 있기 때문에 사용하지 않습니다. 대신에 Logistic Hypothesis(논리적 가설)이라는 Hypothesis를 사용하는데 이 공식은 Regression에서 사용한 가설Equation (4)를 z변수로 설정하고 이 z변수를 사용한 공식입니다.

 

$$ Wx + b $$ (4)

 

이 공식은 Logistic Function(논리 함수) 혹은 Sigmoid Function(시그모이드 함수)라고 부릅니다. 이 함수의 그래프는 위의 사진에서 볼수 있듯이 S자 곡선을 그리고 있습니다. z의 값이 커지면 이 함수의 결과값은 1에 가까워지고, 값이 작아지면 0에 가까워 집니다.

 

이 공식은 Equation (5)-(7)을 만족합니다.

 

$$ z = Wx + b $$ (5)
$$ H(x) = g(z) $$ (6)
$$ g(x) = \frac{1}{1 + e^{-z}} $$ (7)

 

정리하면 Logistic Hypothesis 는 위의 공식을 모두 합친 Equation (8)임을 알 수 있습니다.

 

$$ H(x) = \frac{1}{1 + e^{-(Wx + b)}} $$ (8)