Softmax Regression(Multinomial Logistic Regression) 01
본 글은 모두를 위한 머신러닝/딥러닝 강의를 참고하여 작성하였습니다.
ML lec 6-1 - Softmax Regression
이전에는 Binary classification에 대해 다뤘다.
오늘은 Multinomial classification에 대해 알아보겠다.
Multinomial Classification
Multinomial Classification은 세 개 이상의 값을 분류하는 방법이다.
이를 설명하기 위해선 binary classification의 이해를 바탕으로 해야한다.
예를들어,
$A, B, C$란 값이 존재할 때,
하나만 잘 분류하는 선분이 있다고 가정하자.
그럼 각 선분은 아래와 같이 정의 할 수 있다.
- 첫 번째 선분은 $A$와 아닌것
- 두 번째 선분은 $B$와 아닌것
- 세 번째 선분은 $C$와 아닌것
위 선분을 가지고 값을 분류할 수 있는 분류기를 만들면,
$x$값이 주어졌을 때 어떤 값인지에 대해 $w$인 가중치를 주고,
이를 분별하는 함수(sigmoid)에 통과시킨다.
sigmoid: 이항 분류떄 사용하는 함수
함수를 통과한 값은 특정 $y$ 값을 얻는 데
이를 $\hat{y}$로써 표현한다.
위에서 만들어진 식으로부터 $w$를 추출한다.
첫 번째 식에서 추출한 $w$ 값을
$w$ 행렬의 첫 번째 행으로 담고,
두 번째 식에서 추출한 $w$ 값을
$w$ 행렬의 두 번째 행 으로 담고,
첫 번째 식에서 추출한 $w$ 값을
$w$ 행렬의 세 번째 행으로 담는다.
두 개의 행렬이 만들어지면,
$W \cdot X $와 같이 행렬 곱셈을 이용한다.
계산을 진행하면, 각각 $A, B, C$을 분류하는 $y$값이 구해진다.
즉, 이항 분류를 통해 각 값을 분류할 수 있는 $\hat{y}$을 찾을 수 있다.
또한, 결과 값을 행렬로 표현하면,
$H(X) = WX$로 이전에 설정한 가설로써 표현 할 수 있다.
댓글남기기