YOLO 클래스 수 조정과 설정법
YOLO 기반의 객체 탐지 모델을 실제 프로젝트에 적용하면서 가장 많이 조정하게 되는 부분 중 하나가 바로 클래스 수 설정입니다. 처음에는 기본 제공되는 COCO 데이터셋 기반 구조를 그대로 사용하는 것이 편리하게 느껴졌지만, 실제 환경에서는 필요한 클래스만 남기거나 새로운 클래스를 추가하는 작업이 필수적이었습니다. 이 글에서는 YOLO에서 클래스 수를 변경하는 방법과 그에 따른 설정 파일 수정, 주의사항 등을 중심으로 커스텀 클래스를 적용하는 전체 과정을 정리하겠습니다. YOLO에서 클래스 수가 중요한 이유 YOLO는 이미지 내에서 객체의 위치와 함께 클래스까지 동시에 예측하는 모델입니다. 따라서 모델의 출력층은 클래스 수에 따라 결정됩니다. 예를 들어, COCO 데이터셋을 기준으로 사전 학습된 YOLO 모델은 80개의 클래스를 구분할 수 있도록 구성되어 있습니다. 하지만 사용자의 목적에 따라 1개에서 수십 개까지 클래스 수를 조정하여 사용할 수 있으며, 이 경우 모델 구조, 설정 파일, 데이터 구성 모두에 변경이 필요합니다. 클래스 수가 변경되면 출력층의 차원이 달라지므로, 학습을 다시 시작해야 하며 사전 학습된 가중치를 그대로 사용할 수 없습니다. 다만 백본 가중치는 전이 학습 개념으로 사용할 수 있으므로, 기존 모델을 활용한 효율적인 학습도 가능합니다. 클래스 수가 많은 경우에는 다중 분류로 인한 정확도 저하가 발생할 수 있고, 클래스 간 유사성이 클 경우 오분류도 늘어날 수 있으므로, 클래스 설계 단계에서부터 충분한 고려가 필요합니다. 클래스 수 조정에 따른 설정 변경 YOLO에서 클래스 수를 변경하기 위해서는 몇 가지 필수 설정을 수정해야 합니다. 가장 먼저 확인해야 할 것은 데이터 구성 파일입니다. YOLOv5 기준으로 `data.yaml` 파일에 클래스 수와 클래스 이름이 명시되어야 합니다. 예를 들어 클래스가 3개라면, nc 항목을 3으로 지정하고, names 리스트에 해당 클래스 이름을 차례로 입력합니다. 예시 구성은 다음과...