다잘하고싶어

딥러닝모델 정확도를 높이기 위한 반복 학습시키기 본문

프로젝트회고/팩세이프(FacSafe)

딥러닝모델 정확도를 높이기 위한 반복 학습시키기

챙영잉 2023. 12. 10. 22:42

이번 공장안전자동화시스템 개발 프로젝트 FacSafe (Factory + Safety) 를 진행하면서

화재, 낙상 감지를 인식하는 딥러닝 모델 학습 및 적용 부분을 담당하게 되었다.

생각보다 정확한 데이터셋을 찾는 것이 쉽지 않았고,

찾더라도 정확도를 높이기 위해 반복적으로 학습을 시켜주어야 했다

아래 내용은 딥러닝모델 학습 과정에서 겪었던 어려움을 정리한 내용이다.

 


roboflow 에서 낙상 관련 dataset 을 다운 받은 후 학습을 시키면

폴더 내에 runs\detect\train\weights 폴더가 생성되고 이 안에 "best.pt" 파일이 생성된다.

즉, 학습 후 가장 높은 퀄리티의 학습된 결과가 저장된 것.

인식 정확도를 높이기 위해서는 같은 모델을 여러번 학습시켜야 한다

한번 학습을 실행시킬때마다 같은 폴더 내에 train2, train3, train4 … 형식으로 폴더와 파일이 생성되며,

가중치 누적을 위해서는 이전에 학습시킨 결과물 best.pt 를 기준으로 다음 학습을 실행해야 한다.

 

 

 

그러나,, 

2회 실행

 

 

5회 실행

입만 나왔지만 굉장히 우울해하고 있는 나의 모습,,

알고보니 잘 인식이 안됐던 이유는 애초에 dataset에서 fall 데이터밖에 없는 데이터셋이기 때문이었다. 

잘못된 데이터로 반복학습을 시켰으니 의미가 없었던 것

 

이후에는 정상상태를 같이 학습할 수 있는 데이터로 다시 학습을 진행했다.