보통 수업/학교/연구에서는 정해진 데이터셋/평가 방식에서 더 좋은 모델을 찾는 일을 한다.
하지만, 서비스 개발 시에는 데이터셋이 준비되어 있지 않고, 오로지 요구사항만 존재한다.
Project Setup
Data preparation
Model Training
Deploying
이 과정의 목표는 요구 사항을 충족시키는 모델을 지속적으로 확보하는 것이며, 두 가지 방법이 있다.
어떻게 하면 좋을지에 대해서 알려져 있지 않다.
데이터 라벨링 작업이 생각보다 많이 많이 어렵다.
데이터 불균형을 바로 잡기가 어렵다.
데이터를 골고루, 일정하게 라벨링된 데이터가 많아야 한다.
즉, 특이한 경우를 의도적으로 많이 모아줘야 하고, 라벨링 노이즈를 제거하기 위해 라벨링 가이드가 특이한 경우들을 잘 라벨링 할 수 있도록 잘 나타나 있어야 한다.
이 작업을 효율화 하기 위한 방법
해당 태스크에 대한 경험치가 잘 쌓여야 한다.
하지만 완벽하게 모든 경우의 수를 알고 데이터를 모으고 라벨링 가이드를 만드는 것은 불가능한 것을 인지하고 이를 반복적으로 자동화된 작업으로 만들어가야 한다.
결국 데이터 라벨링은 반복적인 작업을 통해 최대한 깨끗한 데이터 셋을 만들어야 한다.
이 때, 한번의 cycle을 Data Engine/Flywheel 이라 한다.
Software 1.0 vs Software 2.0
전체 AI 모델의 성능을 확보하기 위해서는 반복적인 작업을 효율적으로 하는 툴인 IDE를 잘 만들어야 한다.
software 1.0은 아래와 같이 나와 있지 않지만 software 2.0 IDE는 아직 나타나 있지 않다.
하지만, Software 2.0 IDE가 갖춰야 할 기능들에 대해서는 생각해볼 수 있다.
데이터 시각화
데이터 라벨링
라벨링 UI
태스크 특화 기능
라벨링 일관성 확인
라벨링 작업 효율 확인
자동 라벨링
데이터셋 정제