
[Python] Mixed Precision & NaN Loss 문제 해결: 행렬 연산의 수치적 안정성
·
코딩/이슈
배경특정 딥러닝 학습 스크립트가 의도치않게 종료되었습니다.Epoch 4에서 Out of Memory로 인한 예상치 못한 종료가 발생하였는데, 모델의 복잡도를 줄일 수는 없는 상황이라, 두 가지 최적화 방법을 적용하였습니다:Batch size를 25%로 낮춤Mixed Precision 도입`torch.nn.BCELoss`를 `torch.nn.functional.binary_cross_entropy_with_logits`로 교체하여 `autocast` 호환성 확보문제상황코드 수정 후 loss가 NaN으로 계산되는 새로운 문제가 발생했습니다.추론Batch size 감소만으로는 문제가 발생하지 않았음을 확인이 요소만 조작한 뒤 학습하면, 상식적인 loss 값이 나오므로 배제Mixed Precision 적용이 N..