(코랩)
1.yolo_train.zip 업로드
2.런타임 유형은 GPU
3. 코드실행
's' 눌러서 이미지 저장
wandb는 학습 로그를 웹으로 시각화해주는 서비스
(필수는 아님)
3번 선택해주자.
30 epochs completed in 0.159 hours.
총 30 epoch 학습 완료
학습에 걸린 시간: 약 0.159시간 = 약 9.5분
Optimizer stripped from weights...
모델을 저장할 때 불필요한 optimizer 정보(Adam, SGD 등)를 제거했다는 의미.
파일 크기를 줄이고 추론용으로만 남긴 것.
정상적인 메시지.
Validating best.pt...
학습 후 생성된 best.pt 모델을 검증 데이터셋으로 평가한 단계.
Fusing layers...
BatchNorm + Conv 레이어를 합쳐서 추론 속도를 높이는 최적화 작업
추론할 때 더 빨라짐
모든 YOLOv5 모델에서 자동으로 발생하는 정상 처리
YOLOv5s summary: 157 layers, 7018282 parameters, 0 gradients, 15.8 GFLOPs
157개의 레이어로 구성된 YOLOv5-small 모델
학습 가능한 파라미터 총합: 7,018,282개
0 gradients는 "지금은 추론 모드라 gradient 없음"이라는 뜻
15.8 GFLOPs → 연산량(대략 컴퓨터가 얼마나 계산해야 하는지)
Class Images Instances P R mAP50 mAP50-95
all 30 30 0.361 0.433 0.439 0.165
각 의미는 다음과 같아:
“wandb는 더 이상 권장되지 않으며, 앞으로의 YOLOv5 버전에서는 제거될 예정입니다.
지원되는 다른 통합 도구들은 https://github.com/ultralytics/yolov5#integrations 에서 확인하세요.”
YOLOv5에서 wandb 기능이 앞으로 사라질 예정이라는 뜻이야.
지금은 자동으로 wandb 연결을 시도하지만
앞으로 업데이트되면 YOLOv5가 wandb를 기본으로 사용하지 않을 것
대신 다른 로그/시각화 도구를 쓰라는 안내
학습하는 데는 아무 문제 없음
단순 안내 메시지일 뿐
wandb를 쓰지 않아도 YOLOv5 학습은 정상적으로 진행돼
걱정 안 해도 돼!
wandb 는 Weights & Biases라는 이름의 딥러닝 실험 관리 도구예요.
YOLOv5나 YOLOv8 같은 모델을 학습하면 자동으로 wandb 연동 설정이 나타나는 이유는,
Ultralytics가 기본적으로 학습 로그를 wandb로 기록하도록 되어 있기 때문이에요.
딥러닝 모델을 학습할 때:
손실(loss) 값 변화 그래프
정확도 변화
이미지 예측 결과
하이퍼파라미터 기록
모델 버전 관리
이런 것들을 클라우드 상에서 자동으로 저장하고 시각화 해주는 서비스예요.
즉,
학습 과정을 웹에 정리해서 깔끔하게 보여주는 “대시보드” 도구
라고 보면 돼요.
다운로드 중 일부 깨짐
핸드폰에서 찍은 사진을 불완전하게 전송
압축/해제 과정에서 손실 발생
OS 간 이동(mac → Windows 등) 시 메타데이터 깨짐
예를 들어:
EXIF 정보 이상
색상 채널이 3채널(RGB)이 아닌 경우
JPEG 헤더 오류
YOLOv5는 이런 비표준 파일을 자동으로 정규화해요.
특히 Roboflow, CVAT, 라벨링 앱에서 변환된 경우 간혹 발생.
압축 파일 자체가 문제였거나 파일 크기 손실이 발생한 경우.
💡 아니야. 대부분 아무 문제 없음.
YOLOv5가 자동 복구했고, 재저장까지 완료했기 때문에 학습은 정상 진행돼.
하지만 계속 발생하면:
데이터 품질이 떨어질 수 있고
일부 이미지가 색상 깨짐/해상도 낮아짐/파싱 오류가 있을 수는 있어.
데이터 수가 많지 않다면 이미지를 손으로 확인하는 것도 좋음.
경고에 나오는 경로 파일을 열어서 직접 확인해봐.
from PIL import Image
import os
path = "/content/train/images"
for f in os.listdir(path):
try:
img = Image.open(os.path.join(path, f))
img.verify()
except Exception as e:
print("Corrupted:", f, e)
“JPEG (90%)”로 내보내면 종종 해결됨
PNG로 저장했다가 JPEG로 다시 변환해도 해결됨