참고영상 :
여러개의 클래스가 있을때 그것을 예측하는 Multinomial classification
그중에서도 가장 많이쓰는 softmax regression에 대해서 알아보자
linear한 hypothesis를 가지고 출발했었다
이 것의 단점은 return 하는 값이 100, 200 같은 실수이기 때문에
0이냐 1이냐를 고르는 것에는 적합하지 않았다.
그래서 이것을 하나의 Z라고 놓고
큰 값을 압축을 해서 g(z)를 0이나 1사이의 값으로 나오면 좋겠다는 생각을 했다
z값이 엄청 커지고 작아져도 값이 0과 1사이였다.
저런 그래프를 sigmoid 함수라고 불렀다.
Y : real
Y^ (=H(x)) : prediction
우리가 하려는 일을 직관적으로 보자
우리가 분류해야될 데이터 들이 ㅁ와 X로 있다
그것을 구분할 선을 구하려고한다
저 선을 구하기 위해 학습하려고 한다
데이터가 저런식으로 주어진다고 생각하자
A B C 같은 grade를 매긴다고 생각하자
대략 그래프에 표시하면 저렇게 될 것이다
binary classification으로도 데이터들을 구분할 수 있다.
다음의 선은 AB 와 C를 구분한다
나머지를 구분하는 선들도 찾아보면 다음과 같을 것이다.
x 데이터를 이용해서 Y햇을 구해야 할거다.
독립적으로 구해야한다고 생각하면 행렬로 저렇게 나타 낼 수 있을 것이다.
하지만 이러면 너무 많으니까
쭉 늘려서 저런 꼴의 행렬로 만든다고 생각해보자
곱하면 어떻게 될까?
매트릭스 곱을 해야한다
이런식으로 하면 되는데
그래서 위를 이대로 계산해보면
저렇게 나올 것이다.
y 햇 A는 HA(X)를 나타내는 거겠지
근데 이 값은 실수 이기 때문에 S, 즉 sigmoid 함수로 한번 처리를 해서 값을 압축시켜야 한다.
저 yA yB yC 모두에 각각의 sigmoid 모듈을 적용시켜야 할 것이다.
이 방법에 대해선 다음 강의에서 계속