[NLP] Temperature

hyunsooo·2022년 10월 12일
0

softmax라는 함수를 사용하다 보면 temperature라는 파라미터가 등장한다. 이 파라미터는 무슨 역할을 하는지 알아보자.

softmax(yi)=eyijeyjsoftmax(y_i) = \frac {e^{y_i}}{\sum_j e^{y_j}}

softmax식은 exp값을 그 결과들의 총합으로 나눠주게 되는데 이 값은 0과 1사이 값을 갖으며 ii번째 softmax 값의 합은 항상 1을 보장하게 된다.

학습이 잘 진행되면 어떤 한가지 값이 1에 가깝게 되고 나머지는 0에 가까운 값을 갖는 분포가 형성된다. temperature는 이 분포를 조금 더 뾰족하게 혹은 평평하게 만들 수 있는 파라미터이다.

softmax(yi)=eyiTjeyjTsoftmax(y_i) = \frac {e^{\frac{y_i}{T}}}{\sum_j e^{\frac{y_j}{T}}}

temperature값이 크다면 평평하게 작다면 더 뾰족한 분포를 얻을 수 있다.

profile
지식 공유

0개의 댓글