- 코랩을 통해 학습한 결과물(아래의 파일)을 다운로드 받아 usb를 사용해 라즈베리파이에 옮기기
- 라즈베리파이 yolo 사용 기본 코드에서 위 파일 대신 아래 파일로 변경하기
darknet/data/obj.names
darknet/cfg/yolov4-tiny-custom.cfg
drive/MyDrive/darknet_backup/yolov4-tiny-custom_*.weights
yolov4-tiny-custom.cfg 파일의
batch(6번째줄) 1 확인
subdivisions(7번째줄) 1확
batch: 한 번의 학습 step(=iteration) 에서 사용하는 총 이미지 수
(예: batch=64 → 한 번에 64장으로 손실(loss)을 계산)
subdivisions: 그 batch를 몇 개로 나눠서 GPU/CPU 메모리에 올릴지 결정
(예: subdivisions=4 → 64장을 4번에 나누어 16장씩 처리)
즉,
👉 실제 한 번에 메모리에 올라가는 이미지 수 = batch / subdivisions
Darknet은 내부적으로
👉 “batch 이미지를 subdivision으로 나누어 여러 번 순차적으로 처리하고, 그 결과를 평균내서 한 번의 weight update”를 합니다.
이 경우 Darknet은 다음과 같이 처리합니다.
전체 batch는 1장이므로, subdivisions=2일 경우
→ 1 / 2 = 0.5가 되어버리죠.
정수로 처리할 수 없기 때문에 Darknet 내부에서는
결국 한 번의 subdivision(=1장) 만 처리합니다.
즉, subdivisions이 batch보다 커도 동작은 하지만 의미가 없습니다.
Darknet은 가능한 만큼만 subdivision을 만들어 처리하고 나머지는 무시합니다.