본문 바로가기
개발 Tools/파이썬_Deep learning & ML

딥러닝 Softmax function (소프트 맥스)

by 전컴반 2022. 5. 19.
반응형
Softmax function

 

- 이진 분류가 아닌 모든 output의 확률의 합이 1이 되도록 하고 싶다는 생각에서 나왔다. 달리 말하면 sigmoid는 하나의 클래스가 속할 확률에 대해 나타냈다면 softmax는 전체 클래스에 대해 속할 확률을 나타냈다.

 

만약 분류될 클래스가 k 개라고 할 때, k차원의 벡터를 입력받아 각각 클래스(output)에 속할 확률을 추정하는 것이다.

식을 보면 아래와 같다.

 

간단히 보면 j번째일 확률 / 전체 확률로 나타낼 수 있다.

그렇다면 h는 무엇일까?? 활성 함수를 통과하기 전에 값이다. 근데 가만 보면 그냥 h들의 조합으로 확률을 나타내도 똑같이 확률로 나오는데 굳이 e를 붙인 이유는 뭘까??

 

먼저, 값이 두드러진다. 그리고 무엇보다 h가 원래 어떻게 생겼는지 보면 알 수 있다. logit이라는 꼴로 나타내는데 얘가 loge(p/(1-p)로 나타나기 때문에 e를 붙여서 단순히 p/(1-p)로 나타낸다.

 

이렇게 softmax를 써서 전체 클래스에 대한 확률을 구할 수 있다.

반응형

댓글