본문 바로가기
IT 기록/머신러닝

[머신러닝]06-1.Softmax Regression 기본 개념 소개

by Lazy Quant 2018. 8. 2.
반응형

※본 포스팅은 직접 강의하는 내용이 아닌, 김성훈 교수님의 머신러닝 강의를 정리하기 위한 포스팅입니다.

김성훈 교수님의 강의는 모두를 위한 머신러닝/딥러닝(http://hunkim.github.io/ml)에서 들을 수 있습니다.


Multinomial Classification

우리는 Linear Regression으로 예측을 시작했다. Linear Regression은 100, 200, -10 등 하나의 실수의 값을 예측한다. Linear Regression은 유용한 예측 모델이지만, Binary한 예측(합격/불합격, 발병여부 등)에는 적합하지 않다. 그래서 그 예측 값을 0~1 사이의 수로 압축해서 나타내었다. 이를 통해 0과 1이라는 Binary한 값으로 예측할 수 있게 되었다.(Logistic Regression, Binary Classification). 나아가서 우리는 이제 Binary한 구분을 넘어 여러 개로 구분(ex.공부시간에 따른 등급)하는 예측 모델을 공부하려고 한다.


지금까지 한 것을 간단하게 그림으로 나타내면 다음과 같다.

입력 값 X를 넣고, W라는 unit을 가지고 계산을 해서 Z라는 값이 나오면, 이를 Sigmoid 함수에 넣으면 Y hat 값(0과 1 사이)이 나온다



Logistic regression이 하는 일을 직관적으로 나타내면 아래와 같다.

W를 학습한다, 학습시킨 다는 것은 두 값 사이를 구분하는 선을 찾는 일(네모와 X를 구분하는 것)


이 아이디어를 그대로 Multinomial Classification에 적용할 수 있다.

몇 시간을 공부했고, 수업에 몇 번 참석했는데, 어떤 Grade를 받을 것인가? (A, B, C 중)

이 문제에서는 세 가지 선을 찾을 수 있다. (A or not / B or not / C or not). 세 개의 Binary Classification라고 할 수 있다.


세 가지의 독립적인 Binary Classification을 수식으로 나타내면 다음과 같다.


세 가지 독립적인 Binary Classification을 수식으로 나타나니 복잡하기 때문에 하나의 수식으로 나타내보았다.


다음 강에서는 이 식에서 어떻게 Sigmoid 함수를 적용시키는지 공부할 것이다.



반응형

댓글