scenic: 대규모 어텐션 기반 컴퓨터 비전 모델 프로토타이핑을 위한 JAX 기반 연구 라이브러리
scenic: 대규모 어텐션 기반 컴퓨터 비전 모델 프로토타이핑을 위한 JAX 기반 연구 라이브러리
해결하는 문제
Scenic은 컴퓨터 비전을 위한 대규모 어텐션 기반 모델을 연구하고 프로토타이핑하기 위한 간소화된 프레임워크를 제공합니다. 공통적인 학습 작업에 대한 공유 라이브러리, 최적화된 루프, 그리고 특히 멀티 디바이스 및 멀티 호스트 환경을 위해 설계된 입력 파이프라인을 제공함으로써 복잡한 비전 모델을 구축하는 데 필요한 노력을 줄여줍니다.
작동 방식
JAX와 Flax를 사용하여 구축된 Scenic은 아키텍처를 두 가지 수준으로 나눕니다:
- 라이브러리 수준 코드:
dataset_lib(확장 가능한 IO 파이프라인),model_lib(추상화된 모델 인터페이스, 어텐션/트랜스포머 레이어, 이분 매칭기),train_lib(최적화된 학습 루프),common_lib(일반 유틸리티)을 포함하여 최소한의, 잘 검증된 공유 라이브러리를 제공합니다. - 프로젝트 수준 코드: 특정 작업을 위한 맞춤형 구현체입니다. 연구자들은 기존 설정을 사용하거나 라이브러리 구성 요소를 포크하여 필요에 따라 아키텍처, 손실 함수, 메트릭을 재정의할 수 있습니다.
대상 사용자
분류, 세그멘테이션, 탐지 및 이미지, 비디오, 오디오를 포함하는 멀티모달 작업을 위한 모델을 개발하는 사람들을 포함하여, 컴퓨터 비전 분야에서 작업하는 AI 연구자 및 개발자를 위해 설계되었습니다.
주요 특징
- 광범위한 모달리티 지원: 이미지, 비디오, 오디오 및 멀티모달 조합에 성공적으로 사용되었습니다.
- 확장 가능한 인프라: 여러 디바이스와 호스트에 걸친 대규모 학습을 위한 내장 지원을 제공합니다.
- 광범위한 베이스라인 라이브러리: ViT, DETR, CLIP, SAM과 같은 SOTA 모델의 구현체를 포함합니다.
- 철학 (Philosophy): 복잡한 추상화보다는 포크와 복사-붙여넣기를 선호함으로써 단순함과 빠른 프로토타이핑을 우선시합니다.
Sources
- undefinedgoogle-research/scenic