Data Curation
데이터 큐레이션은 머신러닝과 평가에 사용할 신뢰할 수 있는 데이터셋을 정리하고, 검증하고, 문서화하고, 관리하는 지속적인 프로세스입니다.
데이터 큐레이션은 특정 목적에 계속 유용하게 활용될 수 있도록 데이터를 선택하고, 구성하고, 점검하고, 문서화하고, 유지 관리하는 지속적인 과정입니다. 머신러닝에서는 모델이 학습하는 예시와 모델 평가에 사용하는 근거를 구성합니다. 큐레이션된 데이터셋은 관련 샘플, 지도 학습 작업을 위한 일관된 라벨, 맥락 정보, 추적 가능한 버전을 결합합니다.
큐레이션, 정제 및 전처리#
큐레이션은 데이터셋 수명 주기 전반에 걸쳐 이루어집니다. 데이터 정제는 오류를 수정하고 사용할 수 없는 레코드를 제거하며, 데이터 전처리는 리사이즈나 정규화 같은 작업을 통해 입력을 변환합니다. 데이터 어노테이션은 데이터 라벨링이라고도 하며, 지도 학습에 사용되는 타깃을 추가합니다. 큐레이션은 이러한 활동을 조율하는 동시에 어떤 샘플을 포함할지, 카테고리를 어떻게 정의할지, 데이터 모음을 시간에 따라 어떻게 변경할지를 결정합니다. 일관된 카테고리 정의와 라벨링 규칙은 모델이 이미지와 타깃 간의 신뢰할 수 있는 관계를 학습하는 데 도움이 됩니다.
이를 통해 데이터 개선으로 시스템을 개선하는 데이터 중심 AI에서 큐레이션이 실용적인 구성 요소가 됩니다.
데이터 큐레이션의 작동 방식#
프로세스는 예측 작업, 타깃 카테고리, 운영 조건, 포함 기준을 명시하는 데이터셋 사양을 정의하는 것부터 시작합니다. 객체 탐지의 경우 바운딩 박스와 일부만 보이는 객체에 대한 규칙도 포함됩니다. 카테고리 빈도와 촬영 조건을 검토하면 과소 대표된 클래스나 환경을 포함한 데이터셋 편향을 파악할 수 있습니다.
품질 검사는 자동 검사와 사람의 검토를 결합합니다. 파일 검사는 읽을 수 없는 이미지를 찾고, 어노테이션 검사는 유효하지 않은 좌표와 일관되지 않은 클래스를 식별합니다. 파일 전체의 해시를 사용하면 동일한 사본을 감지할 수 있으며, 이미지 콘텐츠의 수치 표현인 임베딩을 사용하면 시각적으로 유사한 샘플을 찾을 수 있습니다. 검토를 통해 수정 가능한 오류와 사용할 수 없는 레코드를 구분하고, 작업을 대표하는 유효하고 까다로운 예시는 유지합니다.
파일 해시 감사를 통해 고유한 파일마다 하나의 경로를 유지할 수 있습니다. 이 예제에서는 ultralytics 패키지에 포함된 이미지를 확인합니다. 패키지는 pip install ultralytics로 설치됩니다.
from hashlib import sha256
from ultralytics.utils import ASSETS
paths = sorted(ASSETS.glob("*.jpg"))
unique = {}
# Keep the first image path for each file digest.
for path in paths:
digest = sha256(path.read_bytes()).hexdigest()
unique.setdefault(digest, path)
curated = list(unique.values())
print(f"Before: {len(paths)}, after deduplication: {len(curated)}")개수는 정확한 중복 제거 후 남은 파일 수를 나타냅니다. 개수가 같으면 샘플링된 파일의 해시가 모두 서로 다르다는 뜻입니다.
데이터를 분할하면 학습 데이터, 검증 데이터, 테스트 데이터의 독립성을 유지할 수 있습니다. 인접한 비디오 프레임은 장면 콘텐츠를 공유하므로 서로 다른 분할에 배치하면 데이터 누수가 발생하고 평가 점수가 부풀려집니다. 녹화 세션, 카메라 또는 촬영 장소를 기준으로 그룹화하면 평가 결과가 의도된 일반화 작업을 반영합니다. 고정된 데이터셋 버전은 라벨과 함께 이러한 할당을 보존합니다.
Ultralytics Platform은 클래스 분포 차트와 이미지 클러스터링을 통해 커버리지 부족, 중복, 이상치를 파악하도록 지원하여 큐레이션을 돕습니다. 데이터셋 관리 도구를 사용하면 팀에서 이러한 그룹을 살펴보고 이미지, 라벨, 분할 할당을 업데이트할 수 있습니다.
데이터 큐레이터의 역할#
데이터 큐레이터는 데이터 모음의 의미와 활용성을 유지 관리합니다. 책임에는 데이터 출처 문서화, 어노테이션 가이드라인 조율, 라벨링 의견 불일치 해결, 변경 사항 기록이 포함됩니다. 샘플을 설명하는 정보인 메타데이터에는 수집 시각, 센서, 위치, 어노테이션 상태가 담깁니다. 재사용 가능한 데이터 유지 관리에는 설명과 지원 문서를 보존하는 작업이 포함됩니다.
데이터 계보는 샘플의 출처와 변환 과정을 기록합니다. 데이터셋 버전을 실험 추적에 연결하면 모델 비교를 재현할 수 있습니다. 배포 후에는 액티브 러닝이 검토할 유익한 샘플의 우선순위를 정하고, 모니터링을 통해 데이터 드리프트를 감지하여 새로운 데이터 수집을 시작할 수 있습니다.
컴퓨터 비전 사례#
자동차 인지 분야에서 원본 BDD100K 데이터 모음은 미국의 다양한 지역, 기상 조건, 주간 및 야간 환경을 아우르는 주행 비디오 100,000개로 구성됩니다. 환경 속성은 촬영 조건별 평가를 지원합니다. Platform 에디션에는 탐지용 키프레임 이미지 99,996개가 포함됩니다.
이미지 분류 분야에서 ciFAIR 수정 작업은 CIFAR-10과 CIFAR-100의 원본 테스트 세트에 있던 근접 중복 이미지를 대체했습니다. 학습 이미지 또는 다른 테스트 이미지와 일치하는 이미지가 각 원본 테스트 세트의 3.25%와 10%를 차지했습니다. 학습 데이터를 변경하지 않았을 때 ResNeXt-29 (8x64d)의 분류 오류율은 CIFAR-10에서 3.56%였으나 ciFAIR-10에서는 3.95%로 상승했습니다.














