답변:
온도 는 softmax를 적용하기 전에 로짓을 스케일링하여 예측의 임의성을 제어하는 데 사용되는 LSTM (및 일반적으로 신경망)의 하이퍼 파라미터입니다. 예를 들어 LSTM 의 TensorFlow의 Magenta 구현 에서 온도는 softmax를 계산하기 전에 로짓을 나눌 정도를 나타냅니다.
온도가 1 인 경우는, 직접 logits에 softmax를 (이전 층들의 실제 크기의 출력)을 계산하고, 0.6의 온도를 사용하여 모델의 계산이 softmax 이므로 더 큰 값을 얻습니다. 더 큰 값으로 softmax를 수행하면 LSTM의신뢰도가 높아지고(출력 레이어를 활성화하는 데 입력이 덜 필요함)샘플에서더 보수적입니다 (아마도 후보에서 샘플링 할 가능성이 적음). 더 높은 온도를 사용하면 클래스에 대한 확률 분포가 더 부드러워지고 RNN이 샘플에 의해 "쉽게 여기"되므로더 많은 다양성과실수가 발생합니다.
신경망 로짓 벡터와 클래스 확률 생성 여기서 Z = ( Z 1 , ... , Z의 N ) 생산 확률 벡터에이 softmax 기능을 수행하여 Q = ( Q 1 , ... , q 개의 N을 ) 과 비교하여 Z I를 다른 logits과 함께 .
softmax 함수는 네트워크 출력이 모든 시간 단계에서 모두 0과 1 사이에 있도록함으로써 지수 값을 기반으로 네트워크의 각 반복에서 후보를 정규화합니다.
따라서 온도는 낮은 확률 후보에 대한 민감도를 증가시킵니다. LSTM에서 후보 또는 샘플은 예를 들어 문자, 단어 또는 음표 일 수 있습니다.
Hinton, Geoffrey, Oriol Vinyals 및 Jeff Dean. "신경망에서 지식을 추출." arXiv 프리 프린트 arXiv : 1503.02531 (2015). arXiv