Study/Linux

[Ubuntu 16.04 /YOLO] YOLO 학습할 때 메모리가 자꾸 죽는 경우(Killed)

growingtree 2021. 5. 28. 14:33

 

 

우분투 리눅스에서 darknet을 사용해 YOLO 알고리즘을 학습시킬 때 자꾸 메모리가 죽는경우가 있다.

잘 실행되다가 이렇게 죽어버리고 프로세스가 끝나는데 이러면 학습이 안되는채로 끝나버리는 것이다.

이때 cfg 파일을 조금 수정해주면 죽지 않고 계속 진행된다.

 

개발환경

- Oracle VirtualBox/ Linux 16.04 LTS

-darknet으로 학습을 진행

학습은 아래의 블로그를 참고해 진행했습니다.

https://writenkeep.tistory.com/6

 

[3] YOLO 데이터 학습

필자는 컴퓨터 운영체제로서 'Linux Ubuntu 18.04.1 LTS'를 사용하고 그래픽 카드는 'GeForce GTX 970'을 사용한다. 이 글은 온전히 필자의 컴퓨터를 기준으로 작성했다. 이전 글에선 YOLO가 Detecting하는 방법

writenkeep.tistory.com

 

Yolo_Mark로 바운딩 박스를 그리고 데이터를 학습을 시키려면 ~/darknet$ 에서 아래의 명령어를 치면 된다.

$ ./darknet detector train data/obj.data yolo-obj.cfg darknet53.conv.74

 

학습하다가 프로세스가 계속 죽는다면, 메모리의 문제이므로 yolo-obj.cfg파일을 수정하면 문제를 해결할 수 있다. 

 

~(홈)에서 darknet 디렉토리로 들어가면 우리가 학습 때 사용했던 yolo-obj.cfg 파일을 찾을 수 있다.

yolo-obj.cfg 파일을 수정하려면 아래의 명령어를 치면 된다.

gedit yolo-obj.cfg

위에서 나는 batch의 개수를 64 ->32 로, height,width를 416 -> 256로 수정한 후 저장했다. 

(저장은 오른쪽 위)

텍스트 편집기를 종료하고 싶다면 터미널에서 Ctrl+C 누르면 종료됨. 

 

수정한 후 다시 실행해보면 프로세스가 죽지않고 계속 학습을 진행한다! 

반응형