Where is sigmoid?




여기서 결과 Z 행렬에 sigmoid를 취해 0~1 사이의 값을 만들어냄.



는 각각 0~1 사이의 값을 만들어 내는데,



을 만족 하게끔 못 하나?


Softmax


sigmoid 대신 softmax를 사용한다면 가능. 결과를 나올 확률로 정의함.



여기서 가장 높은 확률의 선택지를 1.0으로, 나머지를 0.0으로 대치

-> one-hot encoding ( tensorflow의 argmax )


예를 들면,

z 행렬이 [ 2.0, 1.0, 0.5 ]가 나왔다면

softmax를 거친다면

Y 행렬은 [ 0.63, 0.23, 0.14 ] 가 됨. 

( sum( array(Y) ) == 1 )


one-hot encoding을 적용하면 Y 행렬은 [ 1.0, 0.0, 0.0 ]이 됨.



Cross-Entropy Cost 



왜 이 Cost function을 사용하지?



실제 값과 예측값이 맞았을 때, Cost값이 작게 측정

                          틀렸을 때, Cost 값이 크게 측정


위 수식이 그렇게 되는지 확인해보자.




 



즉, 예측 값과 실제 값이 맞으면 cost는 0,

                               틀리면 cost는 INF 로 반영.



Logistic Cost VS Cross Entropy Cost ?








보기 쉽게 재 정의 하면,






실제로 같은 것이다.




Cross Entropy Cost function






Gradient descent


이렇게 생겼음. Logistic때와 같음.

minimize한 cost를 만드는 W를 찾아보자



이전과 똑같다.

+ Recent posts