오답노트

[yolov5] Yolov5 정리 - 훈련, 예측 시의 인자 설명 본문

머신러닝, 딥러닝

[yolov5] Yolov5 정리 - 훈련, 예측 시의 인자 설명

장비 정 2021. 2. 19. 19:51

You only look ones 의 준말이며 이미지 객체 검출 프로그램

 

YOLOv5 의 각 모델별 속도와 성능차이

위의 표를 보듯이 YOLOv5 에는 총 4가지의 모델이 존재하며

 

YOLOv5 s, m, l, x 순으로 각각 속도가 빠른만큼 성능이 그만큼 떨어진다.

(s가 가장 가볍고 빠르지만 성능은 제일 낮고, x 가 가장 무겁고 느린만큼 성능은 제일 높다.)

 

 

훈련시 각 인자를 설명하자면

 

python train.py --data xxx.yaml --cfg yolov5s.yaml --weights xxxxx.pt --batch 16 --img 256 --name xxx

 

--data xxx.yaml : 훈련시킬 데이터의 정보가 적힌 텍스트 파일이다.

                      (yaml 파일의 경로를 적어주면 된다.)

 

--cfg yolov5s.yaml : 훈련을 할 때 어떤 모델을 쓸지를 정해준다.

                          (~models/model.yaml 경로를 적어주면 되며, 상술 했듯이 s, m, l, x 가 있다.)

 

--weights xxxx.pt : 미리 학습 된 가중치를 불러온다.

                        (xxxx.pt 로 된 파일의 경로를 적어주면 된다. 위의 인자를 적지 않으면 backbone, 즉 처음부터 훈련을 시작하며 weights 가 만들어진다.)

 

--batch 16 : 일반적인 batch_size 다.

 

--img 256 : 이미지 파일의 사이즈를 지정해준다.

 

--name xxx : 훈련이 진행 되는 동안, 완료 후에 어떤 이름의 폴더에 해당 값들을 넣어줄지를 저어준다.

 

 

훈련이 끝나게 되면

 

runs 라는 폴더에 weights 폴더가 생성이 되는데, 이 폴더 안에는 훈련 진행동안에 어떤 식으로 학습이 되었는지를 보여주는 그래프와 test 파일들이 들어가게 된다.

 

그 후에 detect (predict) 를 하게 되는데,

 

마찬가지로 그 인자들을 설명해주자면

 

python detect.py --source xxxx --weights xxx.pt --conf 0.4

 

--source xxxx : detect 할 데이터 파일의 경로를 지정해준다.

 

--weights xxx.pt : train 후에 생성 된 weights 의 경로를 지정해준다.

                       (훈련이 끝나게 되면 best.pt 와 last.pt 가 생성이 되는데, 각각 가장 최적의 가중치와 가장 마지막에 생성 된 가중치 값이 저장 된다.)

 

--conf 0.4 : conf_threshold 의 값이라고 하며 0~1 의 값을 준다.

               (바운딩 박스를 그리는 기준이 되며 해당 스코어를 넘겨야 바운딩 박스를 그린다.)

 

 

'머신러닝, 딥러닝' 카테고리의 다른 글

HMM (Hidden Markov Model) - 은닉 마르코프 모형  (0) 2021.03.29
one_hot_encoding  (0) 2021.03.25
[yolov5] YOLOv5 - OMP error15  (0) 2021.02.13
[DL] ImageDataGenerator  (0) 2021.02.09
[openCV] OpenCV 에서의 RGB, BGR  (0) 2021.02.05