cleanlab 2.0과 Datalab 워크플로우

cleanlab 2.0과 Datalab 워크플로우

cleanlab 2.0은 단순히 라벨 오류를 찾는 걸 넘어, '데이터 중심 AI의 워크플로우' 전체를 다루는 버전이에요. 데이터에 숨어 있는 이슈를 찾고, 라벨 품질을 평가하고, 겹치는 클래스를 병합하는 흐름을 볼게요.

출처: Cleanlab 2.0: The Workflows of Data-centric AI

cleanlab 2.0 튜토리얼에서는 실제 ML 개발 워크플로우에 cleanlab을 통합하는 법을 배워요. 구체적으로는 데이터에 숨어 있는 라벨 이슈를 자동으로 찾고, 데이터셋의 모든 예시에 대한 라벨 품질을 점수화하고, 라벨 이슈가 있는 상태에서도 견고한 모델을 학습하고, 학습을 모호하게 만드는 겹치는 클래스를 찾아 병합하고, 데이터셋 전반의 라벨 헬스 점수를 생성해 주는 흐름이에요.

가장 간단한 방법은 CleanLearning을 쓰는 거예요.

from cleanlab.classification import CleanLearning

yourFavoriteModel = LogisticRegression(verbose=0, random_state=SEED)
cl = CleanLearning(yourFavoriteModel, seed=SEED)
_ = cl.fit(data, labels)
cl.get_label_issues().head()

fit을 지저분한 실제 데이터에 하면 자동으로 정제된 데이터로 학습하고, get_label_issues()로 어떤 데이터가 이슈인지, 라벨 품질이 얼마나 되는지를 볼 수 있어요.

데이터셋 전체의 건강 상태는 health_summary로 확인할 수 있어요.

from cleanlab.dataset import health_summary
health_summary(labels, confident_joint=cl.confident_joint)

이렇게 하면 클래스별 이슈와 데이터셋 전반의 데이터 품질을 수치로 정리해줘요. cleanlab 2.0의 핵심은 '모델을 더 잘 만드는 일'과 '데이터를 더 잘 만드는 일'을 연결해 준다는 데 있어요.

더 알아보기