본문 바로가기

인공지능/논문 리뷰

[논문 리뷰] VadCLIP: Adapting Vision-Language Models for Weakly SupervisedVideo Anomaly Detection

728x90

VadCLIP: Adapting Vision-Language Models for Weakly Supervised Video Anomaly Detection


https://ojs.aaai.org/index.php/AAAI/article/view/28423

 

VadCLIP: Adapting Vision-Language Models for Weakly Supervised Video Anomaly Detection | Proceedings of the AAAI Conferen

 

ojs.aaai.org

Wu, P., Zhou, X., Pang, G., Zhou, L., Yan, Q., Wang, P., & Zhang, Y. (2024, March). Vadclip: Adapting vision-language models for weakly supervised video anomaly detection. In Proceedings of the AAAI Conference on Artificial Intelligence (Vol. 38, No. 6, pp. 6074-6082).


1. Introduction

  • Wealy Supervised Video Anomaly Detection(WSVAD)는 영상의 프레임 수준의 이상을 감지해야 하지만, 훈련 시에는 비디오 단위의 레이블만 제공되는 상황을 다루며, 감시 영상, 콘텐츠 필터링 등 다양한 응용 가능성이 있음.
  • 기존 방법들은 보통 C3D, I3D, ViT 등에서 프레임 단위 특징을 추출하고 이를 이진 분류기(MIL)에 넣는 방식.
  • 하지만 이러한 기존 분류기 기반 방법들은 비전-언어 간 연관성을 활용하지 못함.
  • 최근 연구는 CLIP의 학습된 지식을 활용하려고 시도했지만, 이러한 방법들은 CLIP의 이미지 인코더에서 추출된 시각적 특징을 직접 사용하는 것으로 범위를 제한하고, 시각과 언어 간의 의미적 관계를 활용하는 것을 간과
  • CLIP 모델을 동결(frozen) 상태로 사용하며, 별도의 사전학습이나 미세조정 없이 활용
  • 이중 분기 구조(dual-branch)로 구성, CLIP의 비전-언어 연관성을 최대한 활용하여 정밀하고 일반화된 이상 탐지가 가능하도록 설계
    • C-branch: 비주얼 특징 기반 이진 분류
    • A-branch: CLIP의 언어-비주얼 정렬 능력을 활용한 세밀한 이상 탐지

2. Method

  • 입력: 비디오 단위 레이블만 존재 (정상: 0, 이상 포함: 1)
  • 목표: 프레임 단위로 이상 여부를 예측 (frame-level anomaly confidence)
  • 기존 방식: C3D, I3D 등의 pre-trained 모델로 특징 추출 후 MIL 기반 이진 분류기 적용
  • VadCLIP은 여기서 더 나아가 텍스트 정보까지 활용한 정렬 기반 탐지도 수행

 

2.1 LGT-Adapter

  • Local Module
    • Transformer Encoder 구조
    • 프레임 특징을 일정 길이의 window로 나누고, 로컬 범위 내 self-attention만 수행해 효율성 확보
    • CNN과 유사한 지역 수용영역(local receptive field) 특성
    • $X\: _{clip}$
  • Global Module 
    • GCN(Graph Convolutional Network) 기반
    • 두 가지 인접 행렬 사용
      • $H\; _{sim}$: 프레임 간 특징 유사도 (cosine similarity)
      • $H\; _{dis}$: 프레임 간 시간 거리 기반 proximity
    • $X\: _{g} = gelu([Softmax(H\:_{sim});Softmax(H\:_{dis})]X\:_lW)$
    • GCN은 글로벌 시야 확보, CLIP의 특징 왜곡을 막기 위해 가벼운 파라미터 구조 채택

2.2 C-Branch - Classification Branch

  • CLIP의 이미지 인코더 → LGT-Adapter → FFN → 이진 분류
  • Sigmoid를 통해 프레임별 이상 확률 A ∈ ℝⁿ×¹ 생성
  • $A = Sigmoid(FC(FFN(X)+X))$

2.3 Learnable Prompt

  • 기존의 단어 레이블(ex: "fighting")만으로는 표현력이 부족함
  • CoOp, Zhou et al. 2022를 참고하여, 학습 가능한 컨텍스트 토큰 {c₁, ..., cₗ}을 클래스 토큰 앞뒤에 추가
    -> 근데 이거 사실 효과 별로 없음...
  • CLIP 텍스트 인코더 입력을 확장하여 더 정교한 클래스 표현 임베딩 생성

 

2.4 Anomaly-Focus Visual Prompt

  • C-Branch에서 나온 이상 확률 A를 attention으로 활용
  • 프레임 특징 X와 A를 통해, 이상 프레임들 중심의 비주얼 요약 벡터 V 생성
  • 이 V를 기존 텍스트 임베딩에 더해, 보다 정황성 높은(class-specific) 임베딩 T 생성
  • $V = Norm(A^{T}X)$
  • $T = FFN(ADD(V,t_{out})) + t_{out}$

2.5 A-Branch (Video-Text Alignment Branch)

  • CLIP 텍스트 인코더를 통해 텍스트 클래스 레이블 임베딩 생성
  • 프레임 특징과 텍스트 특징 간 정렬 유사도 맵 M ∈ ℝⁿ×m 생성
  • 프레임별로 각 클래스에 대한 유사도 계산 → fine-grained 이상 탐지 가능

2.6 Objcetive Function

 

  • 이진 분류 손실 ($\mathcal{L}_{bce}$)
    • C-Branch에서 Top-K 프레임 기반으로 Binary Cross Entropy 적용
  • 정렬 손실 ($\mathcal{L}_{nce}$)
    • A-Branch의 유사도 맵 M 기반
    • 각 클래스에 대해 Top-K 유사도 평균 → Softmax → Cross Entropy
  • 대조 손실 ($\mathcal{L}_{cts}$)
    • 정상 클래스 임베딩과 이상 클래스 임베딩 간 cosine similarity를 벌어지게 함

 

$$\mathcal{L} = \mathcal{L}_{bce}+\mathcal{L}_{nce}+\lambda \mathcal{L}_{cts}$$

3. Experiments

 

 

728x90