신경망·연습 문제

Softmax — 온도(temperature) 조절

문제 설명PROBLEM

preview

Softmax with Temperature

LLM 샘플링, 강화학습 policy, knowledge distillation 에서 모두 쓰이는 온도 조절 softmax-v1. 로짓을 TT 로 나눈 뒤 softmax-v1:

pi=exp(xi/T)jexp(xj/T)p_i = \frac{\exp(x_i / T)}{\sum_j \exp(x_j / T)}

온도의 효과

  • T0+T \to 0^+: sharp — argmax 에 확률 집중 (greedy).
  • T=1T = 1: 표준 softmax-v1.
  • TT \to \infty: uniform — 모든 클래스 확률 동일.

과제

함수 softmax-v1_t(x, T) 를 완성하세요.

  • x: shape (N,) 로짓.
  • T: 양의 실수 온도.
  • 반환: 확률 분포 (합 1, 각 원소 >0).
  • 수치 안정성을 위해 max 를 빼고 지수화 (온도로 나눈 후에).

테스트 케이스

#이름검증
1합이 1sum == 1
2T=1 → 기본 softmax-v1동일
3T↑ → 엔트로피↑더 균등
4T↓ → argmax 에 집중최대값 prob → 1
5수치 안정 (큰 로짓)inf/nan 없음
개념 노트와 실수 포인트

신경망

  • 순전파 → 손실 → 역전파(연쇄법칙) → 갱신.
  • ⚠️ 행렬곱 차원: A(m×n) @ B(n×p) — 안쪽 차원이 같아야 함.
  • 비선형 활성화가 없으면 층을 쌓아도 선형. 가중치 초기화 중요.