Snorkel AI는 프로그램 기반 라벨링(programmatic labeling)과 약한 감독(weak supervision)에 중점을 두고 머신러닝 모델을 위한 고품질 훈련 데이터 생성 속도를 높이는 데이터 중심 AI 솔루션을 개발하는 기업이다. 2019년 스탠포드 AI 연구소에서 분사한 이 회사는 사용자 정의 함수를 사용하여 수동 주석 대신 훈련 데이터에 라벨을 지정하는 패러다임을 도입한 Snorkel 프로젝트의 연구를 상용화했다. 이 회사의 플랫폼인 Snorkel Flow는 조직이 훈련 데이터를 반복적으로 개선하여 AI 모델을 구축하고 관리할 수 있게 하여, 전통적인 데이터 라벨링과 관련된 시간과 비용을 줄여준다.
이 회사의 접근 방식은 약한 감독 개념에 뿌리를 두고 있으며, 여기서 잡음이 많고 불완전한 라벨이 프로그램 방식으로 생성된 다음 확률적 모델을 사용하여 결합되어 깨끗한 훈련 라벨을 생성한다. 이 방법은 종종 비용이 많이 들고 느리며 오류가 발생하기 쉬운 기존의 수동 라벨링 프로세스와 대조된다. Snorkel AI는 금융, 의료, 기술과 같은 산업 전반의 기업 고객을 대상으로 하며, 기존 머신러닝 워크플로우와 통합되는 도구를 제공한다.
역사와 설립
Snorkel AI는 2019년 Alex Ratner, Christopher Ré 및 스탠포드 AI 연구소의 다른 구성원들에 의해 설립되었다. 이 회사는 2015년 스탠포드 대학교에서 시작된 Snorkel 연구 프로젝트에서 비롯되었다. 이 프로젝트는 머신러닝 모델을 위한 라벨링된 데이터 세트 생성의 병목 현상을 해결하는 것을 목표로 했다. Christopher Ré가 이끄는 초기 연구는 수동으로 라벨링된 데이터의 필요성을 줄이기 위해 약한 감독을 사용하는 데 초점을 맞추었다. 2019년, 팀은 Lightspeed Venture Partners가 주도하고 GV(구 Google Ventures) 및 기타 투자자가 참여한 시리즈 A 펀딩에서 1,500만 달러를 모금했다. 이 회사는 이후 2021년 3,500만 달러 규모의 시리즈 B 라운드와 2022년 8,500만 달러 규모의 시리즈 C 라운드를 포함한 추가 자금을 모금하여 총 자금은 1억 3,500만 달러를 초과했다.
Snorkel Flow 플랫폼
주력 제품인 Snorkel Flow는 데이터 중심 AI를 위한 종단 간 플랫폼이다. 사용자가 데이터 포인트에 라벨을 할당하는 규칙 또는 휴리스틱인 라벨링 함수를 정의할 수 있는 시각적 인터페이스를 제공한다. 이러한 함수는 Python으로 작성하거나 코드 없는 인터페이스를 사용하여 작성할 수 있으므로, 깊은 프로그래밍 기술이 없는 도메인 전문가도 접근할 수 있다. 그런 다음 플랫폼은 통계 모델을 사용하여 이러한 함수의 출력을 결합하고 정확도와 상관 관계를 추정하여 라벨이 없는 데이터에 대한 확률적 라벨을 생성한다. Snorkel Flow에는 데이터 탐색, 오류 분석 및 모델 관리 기능도 포함되어 있어 팀이 훈련 데이터와 모델 성능을 반복적으로 개선할 수 있다.
데이터 중심 AI 접근 방식
Snorkel AI는 모델 아키텍처보다 데이터 품질의 중요성을 강조하는 데이터 중심 AI 운동의 지지자이다. 이 회사는 많은 AI 실패가 잘못된 라벨, 누락된 엣지 케이스 또는 편향된 분포와 같은 열악한 훈련 데이터에서 비롯된다고 주장한다. 데이터 개선에 초점을 맞춤으로써 Snorkel Flow는 조직이 더 적은 수동 노력으로 더 높은 모델 정확도를 달성하도록 돕는다. 이 접근 방식은 의료 영상, 법률 문서 검토 및 자연어 처리와 같이 라벨링된 데이터가 부족하거나 비용이 많이 드는 도메인에서 특히 관련이 있다.
사용 사례 및 응용 분야
Snorkel Flow는 다양한 기업에서 실제 문제를 해결하기 위해 채택되었다. 예를 들어, 금융 부문에서 기업은 의심스러운 패턴을 포착하는 규칙으로 과거 데이터에 라벨을 지정하여 사기 거래를 탐지하는 데 사용한다. 의료 분야에서는 전자 건강 기록에서 정보를 추출하는 데 사용되었으며, 예를 들어 특정 상태를 가진 환자를 식별하는 데 사용되었다. 기술 산업에서는 검색 관련성과 콘텐츠 조정을 개선하는 데 도움이 된다. 이 플랫폼은 텍스트, 이미지 및 표 형식 데이터를 포함한 구조화 및 비구조화 데이터를 모두 지원한다.
머신러닝 생태계와의 통합
Snorkel Flow는 널리 사용되는 머신러닝 프레임워크 및 도구와 통합되도록 설계되었다. TensorFlow, PyTorch 및 기타 라이브러리와 호환되는 형식으로 라벨링된 데이터 세트를 내보낼 수 있다. 이 플랫폼은 또한 사용자가 미세 조정 또는 평가를 위해 데이터에 라벨을 지정할 수 있도록 하여 대규모 언어 모델을 지원한다. Snorkel AI는 AWS, Azure 및 Google Cloud와 같은 클라우드 제공업체와 파트너십을 맺고 있으며, 이를 통해 인프라에 배포할 수 있다. 또한 회사는 프로그래밍 방식 액세스를 위한 API 및 SDK를 제공하여 기존 데이터 파이프라인에 통합할 수 있다.
연구 및 기여
Snorkel 프로젝트는 AI 연구 분야에 상당한 기여를 했다. 원래 논문인 "Snorkel: Fast Training Data Creation with Weak Supervision"은 2017년에 발표되어 VLDB 컨퍼런스에서 최우수 논문상을 수상했다. 후속 연구는 데이터 프로그래밍, 라벨 모델 및 능동 학습과 같은 주제를 탐구했다. Snorkel AI는 학계와 산업계에서 널리 사용되는 Snorkel 라이브러리와 같은 연구 및 오픈 소스 구성 요소를 계속 출판하고 있다. 이 회사는 또한 워크숍을 후원하고 NeurIPS 및 ICML과 같은 컨퍼런스에 참여한다.
경쟁 구도
Snorkel AI는 데이터 라벨링 및 AI 개발 도구의 경쟁적인 공간에서 운영된다. 경쟁사로는 수동 또는 반자동 라벨링 서비스에 중점을 둔 Scale AI, Labelbox 및 Appen과 같은 회사가 있다. 그러나 Snorkel AI는 대규모 데이터 세트에 대해 더 확장 가능하고 비용 효율적일 수 있는 프로그램 기반 라벨링과 약한 감독을 강조함으로써 차별화한다. 이 회사는 또한 모델 개발 도구 제공 측면에서 Hugging Face 및 OpenAI와 같은 더 넓은 AI 플랫폼과 경쟁하지만, 특히 훈련 데이터에 초점을 맞추고 있다.
향후 방향
2024년 현재 Snorkel AI는 특히 생성형 AI 분야에서 플랫폼 기능을 계속 확장하고 있다. 이 회사는 RLHF(인간 피드백 기반 강화 학습) 및 커리큘럼 학습 기술을 포함하여 대규모 언어 모델을 위한 데이터 라벨링 및 평가 기능을 도입했다. Snorkel AI는 훈련 데이터를 체계적으로 관리하여 조직이 신뢰할 수 있는 모델을 구축할 수 있도록 하는 AI 스택의 표준 계층이 되는 것을 목표로 한다. 이 회사는 또한 데이터 중심 AI 과학을 발전시키기 위해 학술 기관 및 연구소와의 파트너십을 모색하고 있다.
결론
Snorkel AI는 훈련 데이터가 생성되고 관리되는 방식을 변화시키는 플랫폼을 제공하여 데이터 중심 AI 운동의 선두주자로 자리매김했다. 약한 감독과 프로그램 기반 라벨링을 활용하여 이 회사는 AI 개발의 중요한 병목 현상을 해결하여 기업이 정확한 모델을 더 빠르고 더 쉽게 배포할 수 있도록 한다. 연구 및 제품 혁신에 대한 지속적인 투자를 통해 Snorkel AI는 AI 훈련 방법론의 미래를 형성할 좋은 위치에 있다.