AI

모개숲 딥러닝 스터디 - 4. Nightshade

META_BS 2024. 3. 29. 00:22

1. Background

Diffusion model:

• 학습 데이터를 노이즈화 -> 다시 원 데이터로 신경망 복원 (디노이징) 과정을 거쳐

  노이즈에서 이미지 생성 과정을 학습시킴

• 학습 과정에서 텍스트 프롬프트 등을 개입시켜 (conditioning) 원하는 이미지를 생성할 수 있음

 

Auto-Encoder (오토 인코더) :

인코더(Encoder) : 데이터를 잠재 공간(latent space)으로 인코딩

• 디코더(Decoder) : 잠재 벡터를 데이터(이미지)로 디코딩

• Latent space를 사용하면 계산량 감축 가능 -> 개인 PC에서도 이용 가능해짐

 

CLIP(Contrastive Language-Image Pre-training)

• CLIP : 텍스트와 이미지를 인코딩 한 후 비교 학습(contrastive learning)으로 서로를 matching하는 학습을 진행

• 학습된 CLIP 모델로 텍스트 임베딩을 생성, diffusion model의 학습 과정 사이사이에 attention layer로 텍스트 임베딩을 학습

• 학습 과정에서 텍스트 프롬프트를 개입시켜 이미지를 라벨링하고 추후 이미지 생성시 텍스트 프롬프트로 내용을 제어할 수 있게 해줌

 

 

 

• AI 모델을 공격하려는 시도

• 숨겨진 noise를 삽입하는 등의 방식으로 classifier을 공격하는 방법과 이로부터 방어하는 방법 많이 연구됨

   -> poisoned data에 비해서 깨끗한 데이터의 양이 너무 많아서 성공하기 힘들다는 문제 존재

• Diffusion 모델에 백도어를 삽입하고 학습 및 생성 알고리즘 자체를 망가트리려는 제안 존재하나 성공적이지 못함

 

2. Concept Sparsity

• DNN Classifier을 속이기 위해서는 5~20%의 data가, diffusion model을 속이기 위해선 50%가 오염되어야 한다.

• 한 데이터셋에 있는 이미지 수는 수백만~수십억 개, 그러나 그 중 한 개념과 연관된 이미지 수는 훨씬 적다.

• 즉 교란시킬 한 개념을 타겟으로 잡고 poisoning attack을 한다면 적은 양의 오염으로도 모델의 텍스트-이미지 매칭을 교란 시킬 수 있다.

 

 

3. Nightshade - an Optimized Prompt-Specific Poisoning Attack

Nightshade : 적은 오염 샘플, 오염 detection 회피, 알고리즘 건드리지 않음

• 기존 공격 모델들보다 훨씬 효율적

 

• 성공적인 공격을 위해 학습 시 오염되지 않은 데이터의 영향을 최소화해야 함

  ➔ Target prompt의 noise를 최소화

  ➔ 잘 정의되고 최적화되었으나 target 프롬프트와 관련성 낮은,

      오염된 image를 생성해 이를 target prompt와 긴밀하게 이음

 

• 학습 과정에서 detection 피하기 위해 perturbation 도입

  ➔ Target promp와 연관된, 그러나 feature space 상에서는 오염된 image와 가까운 image를 생성해서 detector를 속임

Step 1 : 오염시킬 concept C와 연관된 텍스트 프롬프트 t를 여러 개 찾아 랜덤으로 하나 선정(cosine similarity 계산 이용)

Step 2 : 생성모델이 (오염된 모델이 잘못 생성할 Anchor concept) A와 연관된 이미지를 만들게 함

Step 3 : LPIPS 유사도 측정으로 최적의 feature space를 확인, 프롬프트 t와 연관된 perturbation 이미지 생성

             ➔ Detection 회피 이후 concept C와 이미지 A를 연결하고 dataset에 추가하여 poisoning attack 완성

 

Result

• Poisoned model이 생성한 correct image도 incoherent, useless

• Target concept과 연관된 개념과 유사한 프롬프트, 복잡한 문장형 프롬프트 역시 효과적으로 오염되는 현상을 확인 가능

• 여러 target에 대한 attack가 간섭없이 중첩 가능하며 오염된 concept가 늘어날수록 모델 자체가 망가짐

• Case 1 : High loss data의 filtering ➔오염되지 않은 데이터도 diverse하고 noisy하므로 효과 적음

 

• Case 2 : Frequency Analysis ➔ Concept의 출현 빈도는 다양한 요소에 좌우될 뿐더러 random sampling으로 자료 수집하기에 무의미함

 

• Case 3 : Image-text alignment scoring ➔ Poisoning 알고리즘과 alignment scoring 알고리즘의 구성 및 학습 방식이 달라서 detect 불가 ➔ 다만 poisoning 알고리즘과 유사한 새 detect 알고리즘이 등장할 가능성 존재

 

• Case 4 : Automated image captioning ➔ BLIP 등의 image caption model 역시 오염된 프롬프트를 생성함

 

4. Usage

학습자료 crawling으로 인한 창작물 저작권 문제 존재

Nightshade를 이용한 저작권 보호 조치 가능

• 적은 poisoned image로 모델 교란 가능

• Unlearning technology는 현 시점에선 미숙함

• Detection 쉽지 않음

• Detection 기술이 개발되더라도 학습 거부를 위한 증표가 될 수 있음