17P by xguru 2달전 | favorite | 댓글과 토론
  • 머신러닝을 위한 데이터 파이프라인을 쉽게 구축, 배포, 관리 및 모니터링할 수 있는 오픈소스 엔드투엔드 피처 플랫폼
  • 현재 Airbnb 내 모든 주요 ML 애플리케이션과 Stripe의 주요 사용 사례에 사용되고 있음

주요 기능

  • 다양한 소스에서 데이터 수집 가능 : 이벤트 스트림, DB 테이블 스냅샷, 변경 데이터 스트림, 서비스 엔드포인트, 웨어하우스 테이블 등을 천천히 변화하는 차원, 팩트 또는 차원 테이블로 모델링하여 사용 가능
  • 온라인 및 오프라인 컨텍스트에서 결과 생성 : 온라인에서는 확장 가능한 저지연 엔드포인트로, 오프라인에서는 학습 데이터 생성을 위한 hive 테이블로 제공
  • 실시간 또는 배치 정확도 선택 가능 :
    • 결과를 Temporal 또는 Snapshot 정확도로 구성 가능
    • Temporal은 온라인 컨텍스트에서 실시간으로 피처 값을 업데이트하고 오프라인 컨텍스트에서 특정 시점에 맞는 피처를 생성하는 것을 의미
    • Snapshot 정확도는 자정에 하루에 한 번 피처가 업데이트되는 것을 의미
  • 원시 데이터에서 학습 데이터셋 백필 가능 : 모델 학습을 위해 몇 달 동안 피처 로그가 쌓이기를 기다릴 필요 없이 가능
  • 강력한 Python API 제공 : 데이터 소스 유형, 신선도, 컨텍스트 등을 API 수준 추상화로 제공하며, group-by, join, select 등 직관적인 SQL 기본 요소와 강력한 개선 기능을 조합하여 사용 가능
  • 자동화된 피처 모니터링 : 학습 데이터 품질 이해, 학습-서빙 불일치 측정, 피처 드리프트 모니터링 등을 위한 모니터링 파이프라인 자동 생성 가능

개발 배경

  • Chronon은 ML 실무자들이 모델링 자체보다 모델에 동력을 공급하는 데이터 관리에 대부분의 시간을 소비하는 일반적인 고충을 해소하기 위해 개발

기존 접근 방식의 한계

  1. 오프라인-온라인 복제 방식

    • ML 실무자는 데이터 웨어하우스의 데이터로 모델을 학습시킨 다음, 온라인 환경에서 해당 피처를 복제하는 방법을 모색함
    • 장점: 데이터 소스와 대규모 데이터 변환을 위한 강력한 도구 등 데이터 웨어하우스를 최대한 활용할 수 있음
    • 단점: 온라인 추론을 위한 모델 피처를 제공할 명확한 방법이 없어 불일치와 레이블 누수가 발생하여 모델 성능에 심각한 영향을 미침
  2. 로깅 및 대기 방식

    • ML 실무자는 모델 추론이 실행될 온라인 서빙 환경에서 사용 가능한 데이터로 시작하여, 관련 피처를 데이터 웨어하우스에 로깅함
    • 충분한 데이터가 축적되면 로그에서 모델을 학습시키고 동일한 데이터로 서빙함
    • 장점: 일관성이 보장되고 누수 가능성이 낮음
    • 단점: 긴 대기 시간으로 인해 변화하는 사용자 행동에 신속하게 대응하기 어려움

Chronon의 접근 방식

  • Chronon은 ML 실무자가 피처를 한 번만 정의하면 모델 학습을 위한 오프라인 흐름과 모델 추론을 위한 온라인 흐름 모두에 동력을 공급할 수 있게 해줌
  • 또한 피처 체이닝, 관측 가능성, 데이터 품질, 피처 공유 및 관리를 위한 강력한 도구를 제공함
  • 이를 통해 기존 접근 방식의 장점은 살리면서 단점은 보완할 수 있게 됨