XYZNOT

논문 · arXiv 2304.02643

Segment Anything

게시일 cs.CVcs.AIcs.LG arXivPDF

XYZNOT로 읽기 (전문 번역과 AI 해설)

세 줄 요약

  1. 🎯 태스크별 파인튜닝 없이도 미확인 시각적 개념을 분할하고 다양한 다운스트림 분할 태스크에 적응합니다.
  2. 🔧 프롬프트 지원 분할(promptable segmentation) 태스크, 분할 상각 실시간 마스크 디코더를 갖춘 Segment Anything Model (SAM), 그리고 3단계 데이터 엔진을 도입합니다.
  3. 📈 SA-1B(1,100만 장 이미지에 걸친 11억 개 마스크)로 학습된 SAM은 엣지 검출, 객체 제안 생성, 인스턴스 분할로 제로샷 전이되며, 23개 데이터셋 중 16개에서 대화형 베이스라인을 능가합니다.

초록

본 논문에서는 이미지 분할을 위한 새로운 태스크, 모델, 데이터셋을 아우르는 Segment Anything (SA) 프로젝트를 소개합니다. 데이터 수집 루프 내에서 효율적인 모델을 활용하여, 라이선스를 확보하고 개인정보를 보호하는 1,100만 장의 이미지에 대해 10억 개 이상의 마스크를 포함하는 역대 최대 규모의 분할 데이터셋을 구축했습니다. 이 모델은 프롬프트 입력이 가능하도록 설계 및 학습되어, 새로운 이미지 분포와 태스크로 제로샷 전이가 가능합니다. 수많은 태스크에 걸쳐 모델의 역량을 평가한 결과, 기존의 완전 지도 학습 결과와 견줄 만하거나 오히려 능가하는 인상적인 제로샷 성능을 확인했습니다. 컴퓨터 비전 분야의 파운데이션 모델 연구를 촉진하기 위해 Segment Anything Model (SAM)과 이에 대응하는 10억 개 마스크 및 1,100만 장 이미지 기반의 데이터셋(SA-1B)을 https://segment-anything.com 에 공개합니다.

영어 원문 초록

We introduce the Segment Anything (SA) project: a new task, model, and dataset for image segmentation. Using our efficient model in a data collection loop, we built the largest segmentation dataset to date (by far), with over 1 billion masks on 11M licensed and privacy respecting images. The model is designed and trained to be promptable, so it can transfer zero-shot to new image distributions and tasks. We evaluate its capabilities on numerous tasks and find that its zero-shot performance is impressive -- often competitive with or even superior to prior fully supervised results. We are releasing the Segment Anything Model (SAM) and corresponding dataset (SA-1B) of 1B masks and 11M images at https://segment-anything.com to foster research into foundation models for computer vision.

논문 해설

문제점 및 동기

웹 스케일 데이터로 사전 학습된 파운데이션 모델은 NLP 및 비전-언어 정렬(예: CLIP)을 혁신적으로 변화시켰으나, 범용 컴퓨터 비전에는 다양한 분할 태스크에 걸쳐 광범위한 제로샷 일반화가 가능한 파운데이션 시스템이 부족했습니다. 이미지 분할을 위한 기존 데이터셋은 웹 스케일 이미지-텍스트 말뭉치에 비해 규모가 작으며, 전통적인 분할 아키텍처는 주로 고정된 시맨틱 클래스나 특화된 인터랙티브 설정에 종속되어 있습니다.

분할을 위한 비전 파운데이션 모델을 구축하기 위해 저자들은 다음 세 가지 핵심 요소를 동시에 해결합니다:

  1. 태스크(Task): 일반적인 제로샷 전이를 가능하게 하는 목적 함수는 무엇인가?
  2. 모델(Model): 고유한 시각적 모호성을 해결하면서 실시간으로 유연한 프롬프트를 지원하는 아키텍처는 무엇인가?
  3. 데이터(Data): 인터넷 데이터에 조밀한(dense) 마스크 주석이 부족한 상황에서 어떻게 웹 스케일 분할 마스크를 확보할 수 있는가?

핵심 아이디어

  • 프롬프트 지원 분할 태스크(Promptable Segmentation Task): 모델은 전경/배경 포인트, 바운딩 박스, 조밀한 마스크, 자유 형식 텍스트 등 임의의 프롬프트가 주어졌을 때 유효한 분할 마스크를 반환해야 합니다. 프롬프트가 모호한 경우(예: 셔츠 위의 단일 포인트), 모델은 그럴듯한 계층적 다중 마스크(하위 부분, 부분, 전체)를 출력해야 합니다.
  • 비대칭 상각 아키텍처(Asymmetric Amortized Architecture, SAM): 계산량이 많은 이미지 인코더는 이미지당 한 번만 실행되어 임베딩을 생성하고, 가벼운 프롬프트 인코더와 2계층 Transformer 디코더는 웹 브라우저 내의 CPU에서도 약 만에 프롬프트를 평가합니다.
  • 플라이휠 데이터 엔진(Flywheel Data Engine): 3단계 주석 파이프라인:
    1. 보조 수동(Assisted-manual): SAM이 브라우저에서 작업자를 보조하여 마스크당 주석 시간을 34초에서 14초로 단축(430만 개 마스크 수집).
    2. 반자동(Semi-automatic): SAM이 신뢰도 높은 마스크를 감지하여 작업자가 라벨링되지 않은 덜 두드러진 객체에 집중하도록 유도(590만 개 추가 마스크 수집).
    3. 완전 자동(Fully automatic): 균일한 포인트 그리드와 확대된 이미지 크롭을 기반으로 SAM에 프롬프트를 입력하여 SA-1B의 11억 개 마스크를 생성.

방법론

모델 아키텍처

SAM은 세 가지 구성 요소로 이루어집니다:

  1. 이미지 인코더(Image Encoder): 윈도우 어텐션과 4개의 글로벌 어텐션 블록으로 개조된 MAE 사전 학습 Vision Transformer(기본값 ViT-H/16)를 사용하여, 입력을 처리하고 256개 채널을 갖는 임베딩을 생성합니다.
  2. 프롬프트 인코더(Prompt Encoder):
    • 희소 프롬프트(Sparse prompts): 포인트와 바운딩 박스는 학습된 타입 임베딩과 더해진 위치 인코딩을 통해 256차원 벡터로 매핑됩니다. 자유 형식 텍스트는 CLIP의 텍스트 인코더로 인코딩됩니다.
    • 조밀한 프롬프트(Dense prompts): 입력 마스크( 낮은 해상도)는 스트라이드 2 합성곱을 통해 다운스케일된 후 이미지 임베딩에 요소별(element-wise)로 더해집니다.
  3. 마스크 디코더(Mask Decoder): 2계층 수정된 Transformer 디코더입니다. 교차하는 프롬프트 셀프 어텐션과 양방향 크로스 어텐션(토큰-이미지 및 이미지-토큰)을 통해 프롬프트 토큰과 이미지 임베딩을 업데이트합니다. 이미지 피처는 전치 합성곱을 통해 업스케일링되고, MLP는 출력 토큰을 투영하여 업스케일된 피처에 포인트 단위로 적용되는 동적 선형 분류기를 생성합니다.

모호성을 인식하는 출력 및 손실 함수

단일 프롬프트는 종종 여러 중첩된 구조를 나타낼 수 있습니다. SAM은 해당 추정 IoU 점수와 함께 3개의 마스크를 동시에 예측함으로써 모호성을 해결합니다. 학습 중 역전파는 후보군 중 가장 낮은 손실에만 적용됩니다: 보조 헤드는 예측된 IoU와 실제 Ground Truth IoU 사이의 평균 제곱 오차를 최소화합니다: 여러 프롬프트가 주어지면, SAM은 전용 4번째 출력 토큰을 사용하여 모호하지 않은 단일 마스크를 출력합니다.


결과

  • 제로샷 포인트 기반 마스크 전이(Zero-Shot Point-to-Mask Transfer): 23개의 다양한 분할 데이터셋(1인칭 시점, 수중, 항공 및 현미경 이미지 포함) 전반에서, SAM은 단일 중심점 프롬프트를 사용할 때 23개 중 16개 데이터셋에서 RITM을 능가했습니다(최대 IoU 차이). SAM의 3개 예측 중 오라클 선택기(oracle selector)를 통해 모호성을 해결했을 때, SAM은 23개 모든 데이터셋에서 RITM보다 뛰어난 성능을 보였습니다. 사람이 평가한 품질 점수에서도 SAM은 일관되게 훨씬 높은 점수(10점 만점에 7~9점 사이)를 받았습니다.
  • 제로샷 엣지 검출(Zero-Shot Edge Detection, BSDS500): Sobel 필터링과 엣지 NMS를 갖춘 그리드를 사용해 제로샷으로 평가한 결과, SAM은 0.768의 ODS와 0.928의 R50을 달성하여 HED(ODS 0.788, R50 0.923)와 같은 지도 학습 모델과 대등한 성능을 기록했습니다.
  • 제로샷 객체 제안(Zero-Shot Object Proposals, LVIS v1): SAM은 클래스 지도 없이 59.3 AR@1000을 달성하여 중간 크기 객체(81.6 대 80.8), 큰 객체(86.9 대 87.0), 희귀 카테고리(65.8 대 58.3)에서 완전 지도 학습된 ViTDet-H 베이스라인을 능가했습니다.
  • 제로샷 인스턴스 분할(Zero-Shot Instance Segmentation): ViTDet 바운딩 박스를 프롬프트로 사용했을 때, SAM은 COCO에서 46.5 AP, LVIS에서 44.7 AP를 달성했습니다. 인간 평가에서 작업자들은 SAM의 마스크가 완전 지도 학습된 ViTDet 출력보다 일관되게 더 깔끔하고 품질이 높다고 평가했습니다.

한계점 및 미해결 과제

  • 미세한 디테일 및 극단적 줌: SAM은 명시적으로 크롭을 확대하는 높은 연산량의 대화형 방식에 비해 극도로 미세한 구조를 놓치거나 작은 분리된 컴포넌트를 생성할 수 있습니다.
  • 전체 파이프라인 지연 시간: 프롬프트 디코딩은 실시간(약 )이지만, 무거운 ViT-H 이미지 인코더를 실행하는 것은 실시간으로 작동하지 않습니다.
  • 시맨틱 이해: SAM은 클래스에 구애받지 않는(class-agnostic) 마스크를 생성하므로, 결합 가능한 외부 분류기 없이는 기본적으로 시맨틱 또는 파놉틱 카테고리 라벨을 제공하지 못합니다.
  • 텍스트-마스크 프롬프팅: 제로샷 CLIP 정렬 텍스트 프롬프팅 파이프라인은 기하학적 프롬프트에 비해 아직 기초적인 수준이며 민감합니다.

핵심 용어

promptable segmentation task
포인트, 바운딩 박스, 마스크 또는 텍스트와 같은 임의의 입력 프롬프트가 주어졌을 때 유효한 분할 마스크를 출력하는 목표를 정의하는 태스크.
SAM
Segment Anything Model의 약자로, 고성능 대형 ViT 이미지 인코더, 프롬프트 인코더, 분할 상각 실시간 경량 마스크 디코더로 구성된 비전 모델.
SA-1B
개인정보가 보호된 1,100만 장의 고해상도 이미지에 걸쳐 11억 개 이상의 자동으로 생성된 마스크를 포함하는 Segment Anything 1-Billion 데이터셋.
data engine
마스크 주석을 웹 스케일로 확장하기 위해 사용된 3단계 인간-모델 협업 루프 프레임워크(보조 수동, 반자동, 완전 자동).
ambiguity-aware modeling
디코더가 단일 프롬프트에 대해 3개의 계층적 마스크와 예측된 IoU를 출력하고, 손실이 가장 낮은 예측에서만 학습 그래디언트를 계산하도록 한 설계 방식.
amortized real-time inference
이미지당 연산량이 큰 이미지 임베딩을 한 번만 계산하여, 이후 프롬프트 조건부 마스크 디코딩이 CPU에서 약 50ms 내에 실행되도록 하는 추론 방식.
zero-shot transfer
가중치를 파인튜닝하지 않고 프롬프트 엔지니어링을 사용하여 사전 학습된 프롬프트 지원 모델을 다운스트림 태스크 및 미확인 이미지 분포에서 평가하는 것.
stable mask filtering
로짓 확률 맵을 및 로 임계값 처리했을 때 바이너리 형태 변화가 무시할 수 있을 정도로 적은 마스크를 선별하는 품질 필터.

자주 묻는 질문

단일 포인트가 여러 객체를 의미할 수 있는 모호성을 SAM은 어떻게 처리하나요?

SAM은 예측된 IoU 신뢰도 점수와 함께 세 개의 마스크(일반적으로 하위 부분, 부분, 전체를 나타냄)를 동시에 출력합니다. 학습 중에는 오차가 가장 낮은 예측의 손실만을 역전파합니다.

SA-1B의 11억 개 마스크는 수작업으로 라벨링되었나요?

아닙니다. SA-1B에 공개된 마스크의 99.1%는 1,100만 장의 이미지에 걸쳐 균일한 포인트 그리드로 SAM에 프롬프트를 입력하고 신뢰도 및 안정성에 대한 엄격한 필터링을 거쳐 완전 자동으로 생성되었습니다.

SAM은 텍스트 설명을 기반으로 이미지를 분할할 수 있나요?

네, 개념 증명 수준의 탐색적 기능으로 가능합니다. SAM은 학습 중에 마스크의 CLIP 이미지 임베딩을 프롬프트 토큰으로 입력받도록 훈련되었으므로, 추론 시 CLIP 텍스트 인코더의 텍스트 임베딩을 프롬프트로 활용할 수 있습니다.

사람들이 SAM의 마스크를 더 높게 평가함에도 COCO에서 SAM의 마스크 AP가 ViTDet보다 낮은 이유는 무엇인가요?

지도 학습 모델은 COCO ground truth에 존재하는 데이터셋 특유의 폴리곤 편향, 경계 스무딩 아티팩트, 아모달(amodal) 규칙을 학습하는 반면, 제로샷 SAM은 인간의 인지에는 부합하지만 편향된 주석 기준으로는 IoU 페널티를 받는 선명하고 모달(modal)한 시각적 경계를 출력하기 때문입니다.

이 페이지의 해설은 AI가 논문을 바탕으로 작성했으며 오류가 있을 수 있습니다. 자세한 내용은 원문을 확인하세요.

XYZNOT로 읽기 (전문 번역과 AI 해설)