티스토리 뷰

Yolo11 커스텀 데이터 학습하기로_46

Yolo11 커스텀 데이터 학습하기

Yolo11 커스텀 데이터 학습하기로에 대해 궁금하신 분들은 아래를 참고하세요!

Yolo11 커스텀 데이터 학습하기로_1Yolo11 커스텀 데이터 학습하기로_2Yolo11 커스텀 데이터 학습하기로_3

요약 한 줄: 커스텀 데이터로 Yolo11을 학습하기 위해 폴더 구조·라벨링·data.yaml·하이퍼파라미터 최적화·검증·배포까지 7단계로 정리했으며, 실무 기준으로 mAP 50~95 90%대를 현실적으로 노려볼 수 있습니다.

Yolo11, 커스텀 데이터, 학습하기 전 과정을 7단계로 정리했습니다. 지금 바로 체크리스트와 예제 명령어를 따라 하며 정확도를 올려보세요. 궁금하면 끝까지 확인해보세요!

핵심 흐름 참고 · 설정 예시 보기 · 실습 팁 · 문제 해결 사례 · 전처리 가이드 · 하이퍼파라미터 표 · 배포 요령

목차

```

Yolo11 커스텀 데이터 재정의와 준비

지금부터 Yolo11 커스텀 데이터 학습하기로에 대한 내용을 아래에서 확인해 보도록 하겠습니다.

준비하기: 데이터·환경·폴더 구조

Yolo11 커스텀 데이터 학습하기로_4Yolo11 커스텀 데이터 학습하기로_5Yolo11 커스텀 데이터 학습하기로_6

처음에는 간단해 보여도 막상 해보면 헷갈립니다. 그래서 Yolo11을 기준으로 커스텀 데이터 학습하기 전에 꼭 점검할 준비물을 한 장짜리로 묶었습니다.

목표 커스텀 데이터 분포를 파악하고, 라벨링 품질을 끌어올리며, 폴더 구조와 data.yaml까지 한 번에 정리하는 일입니다.

개인적인 경험을 먼저 밝히면, 초반에 라벨 누락이 3%만 나와도 mAP가 6~12%p 흔들렸습니다. 작은 실수가 성능을 크게 깎아내려요. 그래서 초반 체크가 답입니다.

1-1. 라벨링 원칙과 클래스 설계

커스텀 데이터는 결국 라벨이 전부라고 해도 과언이 아니지요. 저는 세 가지 원칙을 씁니다. 첫째, 경계 상자는 객체를 95% 이상 포함하도록 그리고, 둘째, 겹침이 심하면 작은 객체를 우선으로 독립 박스를 줍니다.

Yolo11 커스텀 데이터 학습하기로_1Yolo11 커스텀 데이터 학습하기로_2Yolo11 커스텀 데이터 학습하기로_3

셋째, 클래스는 12종 이내로 묶고 유사 클래스는 합칩니다. 클래스가 늘수록 혼동 행렬이 산으로 가더라고요. 너무 세분하면 현장에서 이득이 없었습니다.

라벨링 도구는 Label Studio, Roboflow, CVAT 중 어느 것을 써도 좋습니다. 팀 협업이면 프로젝트 규칙을 한 줄로 고정해두세요. 예: “반쯤 가려진 객체라도 보이는 경계만 반영”.

라벨링 가이드 예시

1-2. 폴더 구조와 data.yaml

폴더 구조는 단순할수록 관리가 쉽습니다. 아래는 제가 Yolo11에서 쓰는 기본 골격입니다.

Yolo11 커스텀 데이터 학습하기로_7Yolo11 커스텀 데이터 학습하기로_8Yolo11 커스텀 데이터 학습하기로_9

dataset/
├─ images/
│ ├─ train/*.jpg (또는 .png)
│ ├─ val/*.jpg
│ └─ test/*.jpg (선택)
├─ labels/
│ ├─ train/*.txt # YOLO 포맷: cls x y w h (0~1 정규화)
│ ├─ val/*.txt
│ └─ test/*.txt
└─ data.yaml

Yolo11 커스텀 데이터 학습하기로_10Yolo11 커스텀 데이터 학습하기로_11Yolo11 커스텀 데이터 학습하기로_12

그리고 data.yaml은 이렇게 씁니다.

path: ./dataset
train: images/train
val: images/val
test: images/test # 선택
names: ["class0", "class1", "class2"]

여기서 커스텀 데이터 경로는 절대경로로 써도 되지만, 저는 상대경로를 선호합니다. 환경이 바뀌어도 프로젝트를 통째로 옮기기 쉬워요.

폴더/구성 사례

학습하기: 명령어·하이퍼파라미터·증강

Yolo11 커스텀 데이터 학습하기로_13Yolo11 커스텀 데이터 학습하기로_14Yolo11 커스텀 데이터 학습하기로_15

학습하기 단계에서는 Yolo11 설치·기본 명령어·증강과 학습률 스케줄·이미지 크기 조절을 중심으로 설명합니다. 어렵지 않습니다. 대신 꼼꼼하면 좋아요.

저는 학습 전 반드시 GPU 메모리와 데이터셋 크기를 맞춥니다. 맞춤형 배치 크기와 이미지 크기 선택만으로도 학습 속도와 정확도 밸런스가 확 좋아져요.

2-1. 기본 학습 명령어와 체크리스트

설치 후 가장 먼저 돌려볼 기본 커맨드는 다음과 같습니다. 커스텀 데이터 기준이니 data.yaml과 모델 가중치를 꼭 확인하세요.

Yolo11 커스텀 데이터 학습하기로_4Yolo11 커스텀 데이터 학습하기로_5Yolo11 커스텀 데이터 학습하기로_6

# (예) Ultralytics YOLO 계열 기준 커맨드 예시
yolo detect train model=yolo11n.pt data=dataset/data.yaml imgsz=640 epochs=100 batch=16 workers=8 amp=True device=0

Yolo11 커스텀 데이터 학습하기로_7Yolo11 커스텀 데이터 학습하기로_8Yolo11 커스텀 데이터 학습하기로_9

저는 처음에 yolo11n 또는 yolo11s로 감을 보고, 충분히 개념이 잡히면 m/l로 올립니다. 가벼운 모델에서 구조를 익히면 실수가 줄어요.

체크리스트(요약)

1) 클래스 수/이름이 names와 일치하는지. 2) 학습/검증 분할이 비슷한 분포인지. 3) 작은 객체 비중이 높다면 imgsz 768~960을 실험해보기. 4) 증강은 과하면 손해. 5) 초기 5 epoch 로그에서 과적합 조짐 확인.

명령어 흐름 더 보기

Yolo11 커스텀 데이터 학습하기로_16Yolo11 커스텀 데이터 학습하기로_17Yolo11 커스텀 데이터 학습하기로_18

2-2. 성능 올리는 하이퍼파라미터

실무에서 체감되는 건 솔직히 몇 가지뿐입니다. 학습률, 이미지 크기, 모자이크/HSV/플립, NMS IoU, 박스 손실 비중. 이 다섯 축만 관리해도 성능은 훌쩍 올라갑니다.

# 스윗스팟을 찾기 위한 예시
yolo detect train model=yolo11s.pt data=dataset/data.yaml imgsz=768 epochs=150 batch=16 lr0=0.01 lrf=0.1 momentum=0.937 weight_decay=0.0005
hsv_h=0.015 hsv_s=0.7 hsv_v=0.4 mosaic=1.0 mixup=0.15 degrees=2 translate=0.1 scale=0.4 shear=1.0
box=7.5 cls=0.5 dfl=1.5 conf=0.001 iou=0.7

개인 팁 클래스가 6종 이하이고 배경이 단순하면 imgsz=640에서 epochs 80~120로도 mAP50 90%+을 자주 봤습니다. 반대로 작은 객체가 많다면 768 이상이 안전했어요.

주의 데이터 누락·잘못된 라벨·클래스 ID 불일치는 학습 실패의 70% 이상을 차지합니다. 로그 경고를 습관적으로 읽으세요. “no labels found”, “nan loss” 같은 신호는 바로 수습해야 합니다.

하이퍼파라미터 표

검증·배포: 지표 읽기·오류 찾기·내보내기

Yolo11 커스텀 데이터 학습하기로_19Yolo11 커스텀 데이터 학습하기로_20Yolo11 커스텀 데이터 학습하기로_21

학습하기가 끝났다면 지표를 곱씹어야 합니다. 숫자만 보지 말고, PR 곡선혼동 행렬을 같이 보세요. 어디서 놓치는지 금방 드러납니다.

그리고 배포 환경에 맞는 내보내기를 일찍 생각해두면, 추후 재학습 없이도 스무스하게 넘어갈 수 있습니다. 이게 은근 차이를 만드는 포인트예요.

3-1. mAP/PR 곡선 해석과 에러 분석

일단 mAP50mAP50-95를 함께 봅니다. 전자는 대충 맞췄는지, 후자는 박스 정밀도가 괜찮은지를 알려줘요. 두 값이 10~20%p 이상 벌어지면 박스가 헐겁거나 작은 객체가 무너지는 겁니다.

# 검증 전용 (예시)
yolo detect val model=runs/detect/train/weights/best.pt data=dataset/data.yaml imgsz=768 conf=0.001 iou=0.7 save_txt=True save_conf=True plots=True

저는 plots=True로 생성되는 PR 곡선과 F1 곡선, 혼동 행렬을 먼저 봅니다. 특정 클래스의 재현율이 낮으면 라벨 누락 가능성이 큽니다. 반대로 정밀도가 낮으면 배경과 혼동되는 패턴이 있다는 뜻이죠.

오류를 줄이는 3단계

1) 검증 세트 오탐/미탐 샘플을 50장 모아서 라벨 재점검. 2) 해당 샘플만 증강해서 미니 파인튜닝 10~20 epoch. 3) NMS IoU와 conf를 미세 조정해 현장 기준으로 F1을 맞춥니다. 이렇게 하면 일주일 아낍니다. 진짜예요.

지표/리포트 예시

Yolo11 커스텀 데이터 학습하기로_22Yolo11 커스텀 데이터 학습하기로_23Yolo11 커스텀 데이터 학습하기로_24

3-2. ONNX/TensorRT/모바일 배포

배포는 생각보다 간단합니다. 아래 예시처럼 내보내기를 실행한 뒤, 타깃 런타임에서 로더만 맞추면 됩니다. TensorRT는 FP16/INT8 선택으로 추론 속도를 크게 줄여줍니다.

# 내보내기 (예시)
yolo export model=runs/detect/train/weights/best.pt format=onnx opset=13 dynamic=True
yolo export model=runs/detect/train/weights/best.pt format=torchscript
yolo export model=runs/detect/train/weights/best.pt format=engine half=True # TensorRT FP16

모바일이라면 torchscript 또는 ncnn 계열이 편하고, 엣지 디바이스에서는 TensorRT가 대체로 체감이 좋았습니다. 제 현장 기준으로 FP16에서 1.7~2.3배, INT8 교정까지 하면 2.5~3.5배까지 나왔습니다(데이터셋에 따라 편차 큼).

배포 요령

Yolo11 커스텀 데이터 학습하기 핵심 요약

Yolo11 커스텀 데이터 학습하기로_25Yolo11 커스텀 데이터 학습하기로_26

요약하면 이렇습니다. 커스텀 데이터는 라벨 품질이 7할입니다. 학습하기 전에 라벨 규칙부터 고정하고, 클래스는 과감히 합치세요.

그다음 이미지는 640→768→960으로 확대 실험하며, 학습률과 증강의 적당함을 찾습니다. 지표는 숫자와 곡선을 함께 보는 습관이 성능을 끌어올립니다.

체크리스트: 바로 적용 가능한 12가지

1) 커스텀 데이터 클래스 6~12 종. 2) train:val 비율 8:2. 3) 작은 객체가 많으면 imgsz 768 이상. 4) epochs 100~150에서 조기종료 on.

5) mosaic 1.0, mixup 0.1~0.2 가볍게. 6) hsv_s를 0.5~0.7로. 7) conf 0.001, iou 0.7부터 시작. 8) box 손실 비중 6~8 범위 시험.

9) 초반 5 epoch 로그 확인. 10) 오탐/미탐 샘플 50장 재라벨. 11) 미니 파인튜닝 10~20 epoch. 12) 내보내기와 목표 디바이스를 훈련 중간부터 고려.

적용 사례 보기

Yolo11 커스텀 데이터 학습하기 심화 QnA

Q. 클래스 불균형이 심한데 어떻게 하나요?

A. 해법 ① 부족 클래스 오버샘플링, ② 해당 클래스 중심 증강(랜덤 크롭, copy-paste), ③ 클래스 가중치 튜닝 순서로 접근합니다. 저는 copy-paste로 5%p, 오버샘플링으로 3%p 추가를 받았습니다.

Q. 작은 객체가 안 잡혀요.

A. imgsz를 832~960으로 올리고, mosaic/mixup 강도를 낮춥니다. 작은 객체는 과격한 증강이 치명적일 때가 많거든요. 앵커 프리라도 NMS IoU와 stride 영향은 큽니다.

현장에서 통하는 디버깅 습관

라벨/이미지 파일 수가 일치하는지부터 보세요. 진짜 사소하지만, 제일 많이 틀립니다. index mismatch 한 번이면 반나절이 날아갑니다.

둘째, plots=True 산출물을 폴더째로 팀 채널에 올려두고, 의견을 모읍니다. 혼자 보면 놓치는 패턴이 꼭 있더군요. 셋째, 실물 영상에서 프레임 샘플 100장을 뽑아 가늠합니다. 그게 결국 실전입니다.

Yolo11 커스텀 데이터 학습하기 실제 워크플로

Yolo11 커스텀 데이터 학습하기로에 대해 더 알고싶은 내용은 아래를 확인하세요!

DAY 1 라벨 규칙·클래스 정의·샘플 300장 라벨링·폴더 구조 정리. DAY 2 1차 학습 100 epoch·지표 확인·오류 샘플 수집.

DAY 3 재라벨/증강·하이퍼파라미터 튜닝·추가 60 epoch. DAY 4 경량 배포 테스트(ONNX/FP16)·실장 환경 리허설. 이렇게 4일 루틴이면 초안 성능이 바로 나옵니다.

샘플 커맨드 모음: 복붙용

# 설치 (예시) — 가상환경 권장
pip install ultralytics

# 정보 확인
yolo checks

# 학습 (라이트 모델로 빠르게 실험)
yolo detect train model=yolo11n.pt data=dataset/data.yaml imgsz=640 epochs=80 batch=16

# 검증
yolo detect val model=runs/detect/train/weights/best.pt data=dataset/data.yaml imgsz=768 plots=True

# 추론
yolo detect predict model=runs/detect/train/weights/best.pt source=sample.jpg conf=0.25 iou=0.6 save=True

# 내보내기
yolo export model=runs/detect/train/weights/best.pt format=onnx dynamic=True

실습 노트

마무리: 오늘 시작해서 주말 전에 결과 보기

Yolo11로 커스텀 데이터 학습하기는 겁먹을 일이 아닙니다. 규칙을 정하고, 작은 모델로 빠르게 실험한 뒤, 필요한 지점만 키우면 됩니다. 생각보다 단순하죠?

Yolo11 커스텀 데이터 학습하기로에 대한 보다 자세한 내용은 아래 내용을 확인해보세요!

데이터가 깔끔하면 모델은 솔직합니다. 지금 바로 샘플 300장을 모아 라벨 시작해보세요. 주말 전에 첫 mAP 90%를 볼 수도 있습니다. 하면 됩니다, 진짜로 ^^

다음 단계: 내가 쓰는 체크 템플릿 공개

프로젝트 시작 문서에 아래 8문항만 붙여두세요. ① 클래스/이름/순서 확인, ② 누락/중복 라벨 없음, ③ 작은 객체 비율, ④ 이미지 해상도, ⑤ 증강 강도, ⑥ 초기 5 epoch 로그, ⑦ 오탐/미탐 샘플 박스, ⑧ 배포 타깃.

이 체크리스트 하나로 팀 온보딩 시간이 절반으로 줄었습니다. 과장이 아니라 사실입니다. 써보면 압니다.

© 2025 커스텀 비전 팀 노트 — Yolo11 · 커스텀 데이터 · 학습하기 가이드

Yolo11 커스텀 데이터 라스트 한 줄 정리

라벨 품질 7, 하이퍼파라미터 2, 배포 호환성 1 — 이 비율을 지키면 커스텀 데이터로 Yolo11 학습하기는 자연스럽게 성공합니다. 이제 시작해요, 지금.

볼만한 글

Yolo11 커스텀 데이터 학습하기로_46
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG
more
«   2025/10   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함