mmdetection에서 Mask2Former를 사용시 train에는 문제가 없지만, validation시 즉 평가시 out of memory가 발생
https://github.com/open-mmlab/mmdetection/issues/9424
해당 문제는 Mask2Former가 이미지에서 많은 수의 개체를 감지할 때 발생 즉, Object라고 판단되는 것들의 감지가 많은 경우에 발생 메모리 부족 에러가 발생
error가 발생하는 py 파일
/workspace/lib/mmdetection-3.0.0/mmdet/models/seg_heads/panoptic_fusion_heads/maskformer_fusion_head.py
해당 위치에서 메모리 부족 에러가 발생한다 따라서 수정이 필요 !!
170 번째 라인 !!
mask_scores_per_image = (mask_pred.sigmoid() *
mask_pred_binary).flatten(1).sum(1) / (
mask_pred_binary.flatten(1).sum(1) + 1e-6)
다음 같이 수정
try:
mask_scores_per_image = (mask_pred.sigmoid() *
mask_pred_binary).flatten(1).sum(1) / (
mask_pred_binary.flatten(1).sum(1) + 1e-6)
except:
mask_pred = mask_pred.to("cpu")
mask_pred_binary = mask_pred_binary.to("cpu")
mask_pred_binary = mask_pred_binary.to("cpu")
mask_scores_per_image = (mask_pred.sigmoid() *
mask_pred_binary).flatten(1).sum(1) / (
mask_pred_binary.flatten(1).sum(1) + 1e-6)
mask_scores_per_image = mask_scores_per_image.to(torch.device("cuda"))
'Error 해결 및 유용한 방법들' 카테고리의 다른 글
ERROR: Failed to download 발생 .. (0) | 2023.11.06 |
---|---|
리눅스 mount (0) | 2023.10.20 |
docker container에서 한글 이름 폴더 깨짐 해결방법 (0) | 2023.09.06 |
SSH 접속 오류 해결 (0) | 2023.09.06 |
리눅스 심볼릭 링크 (0) | 2023.05.30 |