컴퓨터 비전 전문가를 위한 지침서: 데이터 품질을 높이는 방법

컴퓨터 비전 전문가를 위한 지침서: 데이터 품질을 높이는 방법

컴퓨터 비전을 위한 데이터 중심 AI를 추구하는 움직임이 강화되면서 모두의 관심사가 알고리즘 디자인에서 데이터셋 구축으로 옮겨가고 있습니다. 데이터는 많은 현대 뉴럴 네트워크 아키텍처에서 모델 성능을 가장 큰 폭으로 개선할 수 있는 열쇠입니다. 물론 네트워크에 레이어를 추가하고 스킵 연결을 사용하고 특정 하이퍼파라미터를 튜닝하는 방법도 있지만 성능 개선폭은 제한적이죠. 많은 실무자들이 최첨단 아키텍처 학습을 위해 알고리즘을 개발할 시간을 포기하고 대신 라벨링 된 데이터를 생산하고 선별하는 데 수많은 시간을 할애합니다. 그리고 데이터셋 구축은 전체 연산 파이프라인을 통틀어 가장 비싸고 어려운 작업이기도 합니다. 그렇기 때문에 데이터 품질을 높일 수 있는 현명한 방법들을 마련하는 것이 성공적인 결과로 이어지는 지름길이라 할 수 있습니다. 

왜 컴퓨터 비전에서는 데이터 품질 솔루션이 중요한가요?

간단히 요약하자면, 애널리틱스와 ML 활용의 중요성이 부각됨에 따라 데이터 품질 솔루션의 중요성도 함께 부각되었습니다.

  1. 더 많은 팀이 데이터에 의존하기 시작했습니다. 또 여러분의 고객도 애널리틱스와 ML을 도입하려면 데이터 프로덕트와 서비스를 신뢰할 수 있어야 합니다.
  2. 데이터 품질 이슈는 중요한 서비스와 프로덕트에 악영향을 미칠 수 있습니다. 그래서 기업들은 체계적, 전체적, 선제적으로 데이터 품질 이슈를 관리해야 합니다.
  3. 에러가 발생할 수 있는 원인이 늘어났습니다. 데이터 소스와 제공자의 수가 늘어남에 따라 데이터의 양, 다양성, 속도, 진실성에 관한 잠재적 위협도 함께 증가하고 있습니다.
  4. 데이터 아키텍처가 더 복잡해졌습니다. ML과 실시간 애널리틱스가 상용화되면서 데이터 플랫폼도 더 복잡해졌고, 이로 인해 데이터 품질 이슈도 더 위험하고 난해해졌습니다.
  5. 대규모 데이터셋이 컴퓨터 비전 실무진들이 가장 절실하게 필요로 하는 요소 중 하나가 되었습니다. 물론 컴퓨터 비전 사이언티스트와 엔지니어들이 라벨링 된 데이터에 대한 모델의 의존성을 낮출 수 있는 새로운 방법들(예: 액티브 러닝, 자기지도 학습, 적대적 학습 등)을 지속적으로 연구하고 있습니다만, 그럼에도 아직도 많은 프로덕션 컴퓨터 비전 모델들이 지도 학습을 활용하고 있습니다.

적절한 데이터 관리 부족, 지시의 모호함, 원시 데이터의 낮은 신호 대 잡음비로 인한 데이터 오역, 그리고 특정 라벨링 작업의 과도한 인지 난이도 등, 라벨링 된 데이터의 품질에 영향을 미칠 수 있는 에러 소스는 정말 많습니다. 이런 에러들은 조기에 발견하지 못하면 비용부터 최종 모델 성능에 이르기까지 전체적으로 치명적인 결과를 낳을 수 있습니다. 그러므로 라벨링 작업이 진행됨에 따라 데이터 품질을 모니터링할 수 있도록 적절한 메커니즘을 갖춘 프레임워크를 구축하는 것이 중요합니다.

데이터 품질의 6가지 척도

일반적으로 데이터는 의도한 사용 목적에 부합하면 품질이 좋다고 평가합니다. ML 분야에서는 데이터가 묘사하고자 하는 실제 세계를 잘 표현하면, 즉 기저의 내용이나 시나리오를 잘 대표하면 품질이 좋다고 평가합니다. 고품질이라는 건 상황마다 다를 수는 있지만, 데이터 품질을 측정할 때 참고하는 일반적인 기준들은 존재합니다.

Collibra의 The 6 Dimensions of Data Quality에서 인용 (출처: Collibra)

Collibra 팀은 데이터 품질의 6가지 척도를 완성도, 정확도, 일관성, 유효성, 고유함, 무결성으로 정의한 리스트를 발표했습니다. 슈퍼브에이아이는 컴퓨터 비전 데이터에 집중하고 있기 때문에 이 글에서는 이런 척도들이 시각 데이터에 어떻게 적용될 수 있는지 알아보도록 하겠습니다.

1. 완성도

데이터셋이 유의미한 인사이트를 도출하기에 충분한가요? 데이터셋에 부족한 부분은 없나요? 데이터셋이 모든 엣지 케이스를 커버하고 있나요? 시각 데이터는 모든 객체 클래스가 완전히 라벨링 될 때까지는 완성되었다고 볼 수 없습니다. 라벨링이 되어야 모델링 과정을 시작할 수 있으니까요. 이런 중요한 라벨들은 모델이 학습하고 예측할 수 있게 도와줍니다.

2. 정확도

데이터셋이 내가 해결하고자 하는 문제를 정확히 묘사하고 있나요? 속성값들이 존재하나요? 정확도는 정부, 헬스케어, 파이낸스와 같은 규제가 엄격한 산업에 아주 중요합니다. 시각 데이터의 정확도를 측정하려면 도메인 전문가의 검증을 거쳐야 하는데요, 예를 들어 의료 이미지를 보고 종양이 양성인지 음성인지를 판단할 수 있는 외과의가 필요합니다. 

3. 일관성

값들이 데이터셋 전체적으로 일관적인가요? 중복되거나 유사한 값들이 존재하나요? 시각 데이터의 경우 이미지나 비디오 아티팩트의 라벨이 전체적으로 일관되었는지가 아주 중요합니다. 라벨 일관성은 평가하기 어렵기 때문에 엄격한 품질 관리 절차가 필요합니다. 라벨 일관성은 보통 라벨 정확성과 함께 거론되며, 두 가지 모두 높은 점수를 받는 시각 데이터셋은 품질이 높은 것으로 간주됩니다. 

4. 유효성

데이터셋이 비즈니스 규칙에 부합하나요? 속성들이 특정한 도메인이나 요구조건과 합치하나요? 시각 데이터의 경우, 바운딩 박스 라벨은 사각형의 형태로 그려졌을 때만 유효합니다. 유효하지 않은 라벨은 시각 데이터의 완성도에 영향을 미치게 됩니다. 완성도를 높이기 위해 이런 유효하지 않은 라벨들을 무시할 것인지, 또는 해결할 것인지에 대한 규칙과 체크리스트를 정의할 수 있습니다. 

5. 고유함

데이터셋 안에 중복되거나 겹치는 데이터는 없나요? 라벨링 된 객체 중 겹치는 것이 있는지 확인하는 작업은 시각 데이터의 고유함을 유지하는 데 도움이 됩니다. 참고로 고유함이란 하나, 또는 여러 데이터셋의 모든 인스턴스들을 확인해 측정합니다. 또한 고유함은 코드(randomness import 코드)와 상황(long-tailed 샘플링 방식)에도 영향을 받습니다.

6. 무결성

데이터셋 속성 사이의 관계들이 정확하게 유지되고 있나요? 데이터 소스가 늘어나고 다양한 유즈 케이스에 맞게 사용됨에 따라 데이터가 어떻게 변환되고 사용되는지를 추적하는 것이 중요해졌습니다. 시각 데이터에서 무결성이란 모든 라벨링 된 객체 클래스들이 단일 진실 공급원(Single source of truth, SSOT)에 따라 추적, 연결될 수 있다는 것을 의미합니다.


💡
데이터 품질을 보장하고, 고성능 AI 모델 개발하는 방법-
지금 슈퍼브 플랫폼 사용 문의하기

데이터 품질 현황

Datafold의 2021년 설문조사에 따르면 데이터 팀에서는 데이터 품질과 신뢰도를 가장 중요한 KPI로 꼽았으며, 그 다음으로는 데이터 접근성, 협업, 문서화 개선이 중요하다고 응답했습니다. 데이터 품질은 하나의 팀에서 관리할 수 있는 것이 아니라 전사 차원에서 노력해야 하며(보안과 마찬가지), 여러 팀 사이에 긴밀한 협업이 요구되기도 합니다. 안타깝게도 현재 대부분의 팀은 데이터 품질 이슈를 해결하기 위한 적절한 프로세스와 도구가 부족한 상태입니다. 

데이터 팀이 데이터 품질을 가장 중요한 KPI로 삼고 있음에도 이를 관리할 도구와 프로세스가 부족하다는 점을 생각하면, 이들이 엄청난 매뉴얼 작업과 루틴한 업무에 시달리고 있음을 쉽게 예측할 수 있습니다. 예를 들어 ETL 코드 변경 테스트, 데이터 의존성 추적과 같은 작업들은 지속적인 관심이 필요하지만 적절한 자동화 없이는 며칠씩 소요될 수도 있습니다.임시로 데이터 품질 테스트를 작성하거나 다른 사람들에게 해당 데이터를 사용해 작업하기 전 확인해달라고 번번히 요청해야 하니까요. 데이터 품질의 SSOT로서 자동화 테스트나 데이터 카탈로그를 사용하는 팀들은 그리 흔하지 않습니다.

출처: Choosing a Data Quality Tool

Sarah Krosnik은 데이터 품질 도구의 선택 방법과 선택지를 소개하며 각각의 도구가 취하는 데이터 품질에 대한 접근법에 따라 4개의 카테고리로 분류했습니다. 

1. 자동 프로파일링 데이터 도구(Bigeye, Datafold, Monte Carlo, Lightup, Metaplane)는 ML이나 통계적인 방법으로 자동으로 데이터를 프로파일링하고 과거의 행적과 비교해 변화가 발생했을 시 알람을 보내는 형식의 호스트형(hosted) 도구입니다. 여러분의 팀이 충분한 예산이 있고, 여러분이 관리하지 않는 다양한 데이터 소스를 보유하고, 커스텀 테스트를 생성하거나 유지보수할 기술 자원이나 시간이 없는 경우라면 이런 도구를 선택하는 것이 좋습니다.

2. 파이프라인 테스팅 도구(Great Expectations, Soda, dbt tests)는 데이터 파이프라인에 직접 연동되어 데이터가 특정한 허용 기준을 달성하지 못할 경우 후속 작업 실행이 중단되도록 세세한 유닛 테스트 설정이 가능한 도구입니다. 오픈소스 툴이며 유료 클라우드 옵션을 제공합니다. 만일 여러분의 팀이 무료 솔루션부터 체험하고 싶고, 테스트에 대한 세밀한 관리와 설정이 가능하기를 원하고, 기존 파이프라인과 쉽게 연동되면서, 파이프라인 결과에 영향을 주기 쉬운 도구를 찾고 있다면 이 도구를 선택하는 것이 좋습니다. 

3. 인프라 모니터링 도구(Datadog, New Relic)는 클라우드 인프라를 모니터링하기 위한 호스트형 도구로, 리소스 활용률과 가용률이 임계점을 넘을 시 알람을 보냅니다. 여러분의 팀이 데이터 플랫폼 인프라를 담당하고 있고, 일반적인 엔지니어링 도구를 통해 인프라에 문제가 생겼을 때 알람을 받기를 원한다면 이 도구를 선택하는 것이 좋습니다.

4. “올인원” 도구(Databand, Unravel)는 인프라 모니터링과 자동 프로파일링 데이터 기능을 합친 도구로, 애널리틱스 전문가나 일반적인 데이터 도구를 위해 제작된 형태입니다(Airflow, Spark). 여러분이 하나의 솔루션으로 자동 프로파일링과 인프라 모니터링을 모두 진행하고 싶고 이런 솔루션과 연동되는 도구들을 이미 사용하고 있다면 올인원 도구를 추천합니다. 

저희가 조사한 바로는 비정형 시각 데이터를 다루는 데이터 품질 도구는 그다지 많지 않았습니다. 위에 언급한 도구는 모두 표 형태의 정형 데이터만 취급합니다. 따라서 전체 데이터 중 정형 데이터보다도 훨씬 많은 양을 차지하고 새로운 컴퓨터 비전 애플리케이션이 탄생할 수 있는 근간이 되는 비정형 시각 데이터를 위한 도구를 개발할 수 있다면 엄청난 기회의 창이 열릴 지도 모릅니다.

컴퓨터 비전 데이터 품질 도구 기획하기

시각 데이터셋의 품질도 신경 써야 하나요? 만약 여러분의 목표가 시각적인 세상을 이해할 수 있는 알고리즘을 구축하는 것이라면 고품질 데이터셋을 확보하는 것은 매우 중요합니다. 그래서 아래에 컴퓨터 비전 데이터 품질 관리 도구 디자인을 위한 세 가지 권장사항을 작성해 보았습니다.

1. 편향성을 감지하고 회피할 것

Torralba and Efros, 2011에서는 데이터셋 간 일반화(하나의 데이터셋으로 학습하고 다른 데이터셋으로 테스트)를 통해 다양한 컴퓨터 비전 데이터셋의 품질을 평가했습니다. 이 비교분석에서는 다양한 데이터셋 편향성의 종류를 선택 편향(Selection bias, 데이터셋에서 특정 종류의 이미지를 선호함), 포착 편향(Capture bias, 사진가들이 객체를 비슷한 방식으로 촬영함), 라벨 편향(Label bias, 시맨틱 카테고리가 제대로 정의되어 있지 않고 서로 다른 라벨러들이 동일한 객체에 대해 다른 라벨을 할당함), 부정적 셋 편향(데이터셋이 “나머지”라고 판단한 부분이 불균형할 경우 모델이 지나치게 결과를 확신하고 제대로 객체를 식별하지 못할 수 있음)으로 구분했습니다. 

데이터셋을 구축하면서 발생하는 편향성의 여파를 최소화하려면 컴퓨터 비전 데이터 품질 도구는 반드시 아래의 기능을 수행할 수 있어야 합니다:

1. 선택 편향을 줄일 수 있도록 데이터가 다양한 소스에서 취득되었음을 검증

2. 포착 편향을 줄일 수 있도록 데이터를 다양하게 변형

3. 라벨 편향을 무효화할 수 있도록 인증된 전문가들과 품질 관리 요소가 내재된 엄격한 라벨링 가이드라인을 작성 

4. 부정적 셋 편향을 교정할 수 있도록 다른 데이터셋에서 부(Negative)의 예시를 가져오거나 라벨링되지 않은 대규모 데이터셋에서 그런 예시를 적극적으로 발굴하는 알고리즘을 사용

2. 품질 관련 요소에 집중할 것

He et al., 2019은 딥러닝에 대한 실험적인 연구에서 AI에 기반한 데이터 품질의 네 가지 면에 대해 서술했습니다.

  1. 데이터 평형이란 클래스별 샘플들의 균형이나 샘플의 전체적인 분포에서 데이터가 이탈한 정도를 의미합니다. 예를 들어, 학습용 데이터셋에서 어느 하나의 특정한 객체 클래스를 전부 삭제하여 그 모델의 삭제된 객체 클래스와 삭제되지 않은 객체 클래스를 식별하는 능력이 어떤 영향을 받았는지를 평가할 수 있습니다. 
  2. 데이터셋 크기는 샘플의 개수로 측정합니다. 대규모 데이터셋이 일반적으로 소규모 데이터셋보다 더 다양한 샘플을 보유하고 있습니다. 예를 들어, 학습용 데이터셋에서 특정한 퍼센티지의 데이터를 랜덤으로 삭제하면 데이터셋의 크기를 조절할 수 있습니다.
  3. 라벨 품질은 데이터셋의 라벨이 완전하고 정확한지를 기준으로 판단합니다. 예를 들어, 랜덤으로 라벨을 잘못된 라벨로 수정하고 이렇게 변경된 라벨의 비율을 다르게 조정하면서 모델 강건성이 어떻게 변화하는지 실험해 볼 수 있습니다.
  4. 데이터셋 오염은 인덱스 데이터셋에 인공적으로 추가된 악성 데이터의 정도를 의미합니다. 예를 들어, 대비 조정이나 노이즈 주입 등의 다양한 방법을 사용해 이미지에 강제로 오염을 만들고 이런 오염이 모델 강건성에 어떤 영향을 주는지 평가합니다. 

위에 언급된 면면들과 관련된 문제를 해결하려면 컴퓨터 비전 데이터 품질 도구는 아래와 같은 역량을 보유해야 합니다:

1. 학습용 데이터셋에 소수의 클래스만이 과도하게 포함되지 않도록 클래스 간 샘플 리밸런싱

2. 특정한 작업을 수행할 모델의 학습에 필요한 최적의 샘플 수에 대한 상한선/하한선 제시

3. 라벨 에러를 발견하고 에러를 교정하기 위한 충분한 품질 관리를 제공

4. 학습용 셋의 샘플에 노이즈를 주입해 일반화 에러를 줄이고 테스트 셋에 대한 모델 정확도 개선할 수 있도록 지원

3. 시각적 분석을 제공할 것

Alsallakh et al., 2022은 컴퓨터 비전 데이터셋의 기본적인 속성을 분석하기 위한 시각화 기법을 소개했습니다. 첫 번째는 픽셀 단위 성분 분석(주성분 분석, 독립성분 분석), 두 번째는 공간 분석(서로 다른 객체 클래스에 대한 바운딩 박스 또는 세그멘테이션 마스크의 공간적인 분포), 세 번째는 평균 이미지 분석(이미지 묶음의 평균을 냄), 네 번째는 메타데이터 분석(가로세로비 및 해상도, 이미지 선명도, 지리적인 분포), 그리고 마지막으로 학습된 모델을 활용한 분석(주어진 입력값에 대한 속성 중요도(Feature saliency), 입력 최적화, 컨셉 기반 해석)입니다. 

컴퓨터 비전 데이터 품질 도구가 컴퓨터 비전 데이터셋에 대한 이해를 심화시킬 수 있으려면 위에 언급된 시각적 분석 기법을 제공해야 합니다.

1. 픽셀 단위 성분 분석은 데이터셋 내의 다양한 변주를 주도하는 이미지 속성이 무엇인지 이해하고 (이에 따라) 각 속성이 모델에 얼마나 중요한지를 예측하는 데 도움이 됩니다. 

2.공간 분석은 데이터셋의 잠재적인 단점을 파악하고 보편적인 데이터 증강 기법들로 공간 분포상의 편향을 줄일 수 있을지 평가하기에 적절한 분석 기법입니다. 

3. 평균 이미지 분석은 본질과 시맨틱이 동일한 이미지의 하위 그룹들을 비교할 때, 흥미로운 아웃라이어를 잘 대변하는 이미지 하위 그룹을 선택할 때, 모델이 본격적으로 시맨틱 속성을 학습하는 대신 “지름길”처럼 사용할 수 있는 시각적인 신호를 파악할 때 유용한 방법입니다.

4. 메타데이터 분석은 데이터셋의 다양성을 평가하고 목표 클래스와 속성이 각각 어떻게 표현되었는지 파악해 대표성을 지니는 데이터셋을 선별하고 라벨링할 수 있게 도와주는 분석 방법입니다. 나아가 시간 정보를 바탕으로 데이터셋을 탐색할 수 있어 각 데이터셋이 목표 작업에 적합한지 판단할 때 유용합니다.

5. 학습된 모델을 활용한 분석은 (1) 서로 다른 학습 패러다임과 아키텍처에 학습 데이터의 내재된 문제가 어떤 영향을 미치는지 파악할 때, (2) 라벨이 모호하거나 다른 단점이 있는지 확인할 때, (3) 임베딩 시각화를 통해 서로 다른 클래스 그룹의 속성을 발견하고자 할 때 유용합니다.

마치며

모델을 학습할 때 데이터 품질이 얼마나 중요한지 이해하고, 라벨링 프로세스를 명확히 하고, 모델을 평가할 때 사용되는 정답 데이터의 장단점을 이해하는 것은 결과적으로 컴퓨터 비전 시스템의 추적 가능성, 검증 가능성, 투명성을 높여 줍니다. 이번 포스트에서는 시중의 데이터 품질 도구들과 강건한 컴퓨터 비전 데이터 품질 관리 도구를 구상하기 위한 아이디어를 살펴보았습니다.

슈퍼브에이아이는 컴퓨터 비전 팀이 규모에 상관 없이 원활히 데이터 준비 과정을 자동화하고, 빠르고 조직적이고 반복적으로 데이터셋을 구축하고 이터레이션할 수 있도록 AI 도입 및 개발 플랫폼을 제공하고 있습니다. 슈퍼브 플랫폼의 오토 에딧 , 오토라벨 및 미스라벨 디텍션이나 임베딩 스토어와 같은 AI 기능들은 수집된 데이터를 바탕으로 해당 데이터에 특화된 데이터 품질 규칙을 정해 줍니다.