티스토리 뷰
Error명:
Runtimeerror: cuda error: device-side assert triggered
cuda kernel errors might be asynchronously reported at some other api call,so the stacktrace below might be incorrect. for debugging consider passing cuda_launch_blocking=1.
이런 에러가 발생했습니다.
GPU 메모리가 부족한 것인가? 다시 런타임을 종료하고 시작해보면 다시 model이 device에 올라가긴 했는데, 결국 같은 오류가 반복적으로 발생합니다.
해당 오류명으로 구글에 검색해보면 핵심은 내 코드에 무슨 문제가 있는지 디버깅을 해야하는데, 이 오류가 떴을 때 어떻게 해결하냐? 에는 역시 다양한 접근법이 존재했습니다.
1. Add the following to lines at the top of the notebook
import os
os.environ['CUDA_LAUNCH_BLOCKING'] = "1"
하지만 전 이 방법으로 해결되지 않았습니다.
2. Turn colab to CPU and Recreate the error
device = torch.device('cpu')
CUDA에서 발생하는 RuntimeError는 대부분 인덱스 불일치에 원인이 많다고 합니다. 실제로 입출력 차원에 오류가 있을 수 있단 겁니다. 저도 output dimension에서 오류가 발생했습니다.
따라서 제시한 해결 방법이 CPU로 전환해서 상세한 Error를 확인하는 것입니다.
그랬더니 다시 전 해당 에러를 출력했습니다.
Runtimeerror: all elements of input should be between 0 and 1
해당 에러의 발생 원인은 loss function으로 BCEloss를 사용하는데, 0과 1 사이의 출력값이 아니라는 것입니다. 전 lstm 모델을 짰기 때문에, 마지막 fc layer의 output을 Sigmoid function에 넣어 출력을 [0, 1]로 맞춰줘야 했습니다.
아무튼 저는 CPU로 바꾸고 나서 다시 GPU로 안 바꾸고 그대로 학습하는데, 학습이 3분이 지나도 1 epoch도 돌지 않아서 오잉 뭐지 하다가 나중에 깨닫고 다시 device를 바꿔주었답니다. 다시 바꿔주는 것도 잊지마시길! 😥
이상입니다. 감사합니다!
'Skills > Error' 카테고리의 다른 글
bash: wget command not found (0) | 2022.12.13 |
---|---|
ModuleNotFoundError: No module named 'skimage' (0) | 2022.12.13 |
[Python] WARNING: There was an error checking the latest version of pip. (0) | 2022.12.11 |
IndexError: index 2 is out of bounds for axis 0 with size 2 (0) | 2022.10.26 |
OSError: unrecognized data stream contents when reading image file (0) | 2022.10.25 |
- Total
- Today
- Yesterday
- 파이썬
- python
- few-shot learning
- 프롬프트
- NLP
- 데이터셋다운로드
- 구글드라이브서버다운
- vscode 자동 저장
- 퓨샷러닝
- 파이썬 클래스 다형성
- style transfer
- 도커 컨테이너
- 구글드라이브연동
- Unsupervised learning
- docker
- CNN
- 도커
- stylegan
- 서버구글드라이브연동
- 파이썬 딕셔너리
- 파이썬 클래스 계층 구조
- 서버에다운
- support set
- 딥러닝
- 구글드라이브서버연동
- cs231n
- clip
- 구글드라이브다운
- prompt learning
- Prompt
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |