AI 모델의 학습 역학 재고: 실험을 통한 초기 이론
Source: Dev.to
딥러닝의 핵심 가정
- 전형적인 관점: 손실 최소화 → 성능 향상.
- 관찰: 손실을 최소화하는 것만으로는 의미 있는 표현 학습과 항상 연관되지 않으며, 특히 학습 초기 단계에서 그렇다.
제안 아이디어
표현 불안정 단계 – 그래디언트가 먼저 표면 수준의 패턴을 최적화하고, 이후에야 안정적인 내부 추상화가 나타난다.
이 현상이 이미 이름이 있는지, 혹은 학습 노이즈를 구조로 착각하고 있는지는 확신이 서지 않는다.
실증적 관찰
| 학습 단계 | 관찰된 행동 |
|---|---|
| 초기 에포크 | 매우 변동성이 큰 임베딩 |
| 중간 학습 | 표현들의 급격한 클러스터링 |
| 후기 학습 | 손실 개선이 둔화되면서도 임베딩이 안정화 |
이러한 동역학은 합성 데이터를 사용해 작은 트랜스포머‑유사 모델을 학습하면서 중간 레이어 활성화를 기록함으로써 관찰되었다.
학습 루프 예시
for epoch in range(num_epochs):
optimizer.zero_grad()
outputs = model(inputs)
loss = criterion(outputs, targets)
loss.backward()
optimizer.step()
# 그래디언트 없이 임베딩 노름 추적
with torch.no_grad():
embedding_norm = model.encoder.weight.norm().item()
print(f"Epoch {epoch} | Loss: {loss.item():.4f} | Embedding Norm: {embedding_norm:.2f}")
참고: 임베딩 노름과 코사인 유사도는 특히 초기 단계에서 손실 값보다 훨씬 급격하게 변했다.
코사인 유사도 트래커
prev_embedding = None
for epoch in range(num_epochs):
current_embedding = model.encoder.weight.clone().detach()
if prev_embedding is not None:
similarity = cosine_similarity(
prev_embedding.view(-1),
current_embedding.view(-1)
)
print(f"Epoch {epoch} | Embedding Stability: {similarity.item():.4f}")
prev_embedding = current_embedding
유사도 점수는 처음에 불규칙하게 급등하고, 이후 손실 개선이 미미해도 약 0.98–0.99 수준으로 수렴한다.
작업 가설
- 경사 하강법은 초기에는 의미론적 구조보다 최적화 지름길을 우선한다.
- 후기에는 견고하고 일반화 가능한 표현으로 수렴한다.
잠재적 함의
- 조기 종료는 의미 있는 추상화를 방해할 수 있다.
- 일부 과적합 단계는 표현 형성에 필요할 수도 있다.
- 정규화는 표현 붕괴를 방지하기보다 지연시킬 수 있다.
열린 질문
- 데이터셋 크기: 이것이 작은 데이터셋의 부작용일까?
- 기존 이론: 손실‑풍경 평탄성, 모드 연결성, 정보 병목과 같은 개념과 일치하는가?
- 측정 지표: 학습 품질을 추적하기에 손실보다 더 좋은 지표가 있을까?
- 노이즈 vs. 구조: 나는 emergent 구조를 무작위 정렬로 혼동하고 있지는 않은가?
- 형식적 인식: “불안정 → 추상화 → 안정화” 패턴이 문헌에서 공식적으로 인식되고 있는가?
나는 이를 주장이라기보다 질문으로 다루고 있다. 추론이 어디서 무너지거나—보다 엄밀하게 프레임화할 수 있는 방법에 대한 통찰을 매우 환영한다.