뭐라도 끄적이는 BLOG

Lec 06 Softmax Regresion(Multinomial Logistic Regression) 본문

AI/모두를 위한 머신러닝

Lec 06 Softmax Regresion(Multinomial Logistic Regression)

Drawhale 2021. 5. 2. 17:08

Logistic Regression

Logistic Regression은 Linear Regression의 Hypothesis를 z변수라고 하고 z변수를 Sigmoid Function의 변수로 사용한 공식을 Hypothesis로 사용한 Regression입니다. Logistic Regression의 결과 값은 0과 1사이의 값이 나오며 이것을 통하여 Classification도 가능하기 때문에 Logistic Classification이라고도 부릅니다.

Multinomial Classification

Logistic Regression이 2개의 범주만을 분류하는 것이라고 한다면 Multinomial Classification은 3개 이상의 범주가 있고 이것을 분류하는 것을 의미합니다.

왼쪽 그림에서 볼 수 있듯이 3개의 범주가 있는 경우 각각의 범주를 분류하는 Logistic Regression 3개로 표현할 수도 있습니다.

각각의 Logistic Regression은 앞에서 보듯 Linear Regression의 Hypothesis를 사용합니다."H(x) = Wx" 이 Hypothesis는 입력 변수가 2개 이므로 행렬로 표현이 가능합니다.

각각의 Logistic Regression은 앞에서 보듯 Linear Regression의 Hypothesis를 사용합니다.H(x) = Wx 이 Hypothesis는 입력 변수가 2개 이므로 행렬로 표현이 가능합니다.

Multinomial Classification의 경우 범주가 여러개이기 때문에 Sigmoid Function을 사용하지 않습니다. 대신 Softmax라는 공식을 사용하게 됩니다. 이 Softmax를 사용하면 각각의 항목의 결과가 모두 0부터 1사이의 값이 나오고 모든 항목의 결과값을 합치면 무조건 1이 됩니다. 이러한 특징을 가지고 있는 Softmax를 사용하기 때문에 Multinomial Classification 을 Softmax Regression이라고도 부릅니다.

Softmax Regression

Logistic Regression은 단순히 입력한 결과를 2가지 종류로 분류하는 것이라고 한다면 Softmax Regression은 여러개의 종류로 분류하는 것을 말합니다.

기본적인 과정은 비슷하지만 가장 큰 차이점으로는 Logistic Regression은 Hypothesis에서 결과를 Sigmoid함수를 통해 0과 1사이의 값으로 도출시킨 후 분류하고 Softmax Regression에서는 Softmax함수를 사용하여 여러개의 종류에 대한 확률값을 도출한다는 점 입니다. 물론 확률값이므로 다 더하면 1이 됩니다.

이러한 Softmax의 공식은

형태를 가집니다. 정리하자면 입력값을 넣은 후 도출된 여러개의 확률들중 가장 큰 값을 갖는 항목으로 분류하는 것을 Softmax Regression이라고 할 수 있습니다.

Softmax Regression의 Cost Function

다른 Regression과 같이 Softmax Regression도 Cost Function으로 학습이 가능합니다. Softmax Regression의 Cost Function에 사용되는 공식은

의 형태이고 이것을 Cross-Entropy 함수라고 부릅니다. Cross-Entropy함수를 보기에 새로워 보이지만 실질적으로 Logistic Regression의 Cost Function내부 공식과 유사하다는 것을 알 수 있습니다. Cross-Entropy 함수는 분류한 값이 실제 값과 유사할 수록 0에 가까워 지고, 실제값과 다르면 다를 수록 커지게 됩니다. 위 형태는 1개의 데이터에 관해서만 적용한 공식이기 때문에 이것을 완전한 Cost Function으로 나타내면

 

의 형태를 만족하게 됩니다.

Softmax Regression을 사용한 학습에서도 Cost Function의 최소값을 찾기 위해 Gradient Descent Algorithm을 사용하게 됩니다. Cost Function 공식만 바뀔뿐 전체적 과정은 Logistic Regression이나 Linear Regression과 같습니다.


 

 

모두를 위한 머신러닝/딥러닝 강의

 

hunkim.github.io

 

반응형