
| 구분 | 내용 |
|---|---|
| 제목 | Efficient Adversarial Training in LLMs with Continuous Attacks |
| 저자 | Sophie Xhonneux / Mila, Université de Montréal |
| 학회 | NeurIPS |
| 연도 | 2024 |
| 주제 | continuous adversarial training을 통한 adversarial attack 방어 |
| 소재 | CAT, CAPO |
LLM의 Safety와 Alignment에 대한 연구에서는 일반적으로 적대적 훈련(Adversarial Training; AT) 방식이 주로 활용되었다. AT는 모델이 유해한 답변을 생성하도록 유도하는 적대적 예제(Adversarial Examples)를 생성하고, 이를 통해 모델을 재학습시켜 견고성을 높이는 방법이다. 그러나 기존의 AT 방식은 이산적인(Discrete) 공격 토큰을 생성하고 학습하는 데에 막대한 계산 시간과 자원이 필요하다는 한계가 있다.
본 논문은 기존의 Discrete Adversarial Attack 방식 대신, 임베딩 공간에서의 Continuous Adversarial Attack을 활용하는 새로운 방식의 AT 알고리즘을 제안한다. (CAT, CAPO)
이를 통해 모델은 다양한 공격에 대해 더욱 견고해지고, 동시에 일반적인 작업 성능 저하를 최소화하는 것을 목표로 한다.
CAT와 CAPO가 이산적 공격 방식인 R2D2에 비해 Robustness-Utility 균형적인 성능 향상
강력한 공격(GCG, AUTODAN, PAIR, ICL)에 대해 더 높은 방어력
CAPO 알고리즘은 attack iterations를 1회로 줄이더라도 여러 번의 반복을 사용한 경우와 유사한 견고성 향상을 이뤄냄
AT는 주로 아래와 같은 minimax optimisation 문제이다.
는 adversarial attack을 의미한다. (input 에 미세한 attack token 를 추가)
정리하면, 가장 강력한 attack (loss를 최대화하는 )에 대한 성능을 높이겠다는 의미로 해석할 수 있다.
일반적인 discrete attack에서는 에서 는 고정된 개수의 토큰이다. 따라서, best 를 계산하기 위해서는 크기의 pertubation set이 필요하다. (시간, 비용 과다!)
하지만, 를 continuous한 embedding 차원에서 정의한다면, 위 식을 활용하여 gradient descent를 역이용하여 loss를 키우는 를 계산할 수 있다.
일반적인 AT 방식인 equation (1)도 공격을 방어할 수는 있지만, untargeted 방식 (attack의 목표가 없는 상태) 이다. 하지만, 일반적으로 attack은 harmful prompt를 출력하려는 특정한 목표를 가지고 있는 경우가 많다.
따라서, 본 논문에서는 harmful target 의 likelihood를 낮추고 safe target 의 likelihood를 높이는 아래의 방식을 제안한다.
위와 같은 방식으로 학습을 진행할 경우, 특정 Loss가 과도하게 학습될 수 있다. 그럴 경우 모델이 '답변을 할 수 없다'는 등의 답변만 내놓는 등의 문제가 발생할 수 있다. 따라서, Loss가 클 경우 학습을 제한하는 cut-off() 방식을 제안했다.
(Loss가 보다 크면 0.999 + 0.0001, 작으면 )
기존 DPO(Direct Preference Optimization)는 프롬프트 가 주어졌을 때 선호하는 답변의 가능성을 높이고, 선호하지 않는 답변의 가능성을 낮추는 방식이다. 이 논문은 DPO와 유사한 형태의 손실 함수를 제안하며, 이를 Continuous-Adversarial IPO (CAPO)라 부른다.
DPO에서는 가 를 사용하지만, CAPO는 과적합을 방지하기 위해 IPO의 loss 를 사용한다. 이 loss function은 원래 모델 분포 에 대한 KL divergence를 최소화한다.
이러한 방식은 모델이 모든 프롬프트에 대해 거부 답변만 생성하는 등의 degenerate behaviors(퇴행적 행동)을 방지한다. 결과적으로 CAPO는 모델의 Utility를 유지하기 위한 별도의 유틸리티 데이터셋을 필요로 하지 않게 된다.
LLM의 Robustness 평가를 위한 학습 및 평가 방식의 실패 사례
1. 유용성(Utility) 평가 실패:
MMLU나 ARC와 같은 유용성 벤치마크는 표준 평가 시 '채팅 템플릿(chat template)'을 사용하지 않는다.
이로 인해 모델은 실제 채팅 환경에서 대부분의 요청을 거부해 지나치게 견고하게 보일 수 있으나, 채팅 템플릿이 없는 벤치마크에서는 높은 유용성을 보였다.
특히 ARC는 가능한 답변 토큰들의 가능성만 측정하기 때문에, 실제 채팅 템플릿을 사용하는 모델의 유용성을 정확히 반영하지 못한다는 한계를 지닌다.
2. 훈련 데이터 실패:
Harmbench나 AdvBench와 같은 기존 적대적 훈련 데이터셋은 "Tell me"나 "Give instructions"와 같은 특정 명령형 문장 구조를 사용한다.
이로 인해 모델은 이러한 스타일의 요청에만 거부하도록 학습되어, "Could you please...?"와 같이 공손한 다른 스타일로 질문하면 유해한 요청이라도 수락하는 실패 사례가 발생하였다.
이러한 문제는 유해한 요청뿐만 아니라 "Tell me a story"와 같은 무해한 요청에서도 나타났으며, 이는 MT-BENCH와 같은 채팅 템플릿 기반의 벤치마크에서도 모델이 유용해 보이는 이유를 설명한다.
논문은 이러한 문제를 보이기 위해 공손하게 재구성한 유해한 요청 데이터셋(POLITEHARMBENCH)과 무해한 요청 데이터셋(HARMLESS)을 만들었으며, 더 나은 데이터셋 개발은 향후 연구 과제로 남겨두었다.
CAT의 효과를 입증하기 위한 Ablation Study
연속적 공격의 필수성: 적대적 공격 없이 CAPO 알고리즘으로 미세 조정할 경우 견고성 향상이 없었다. 이는 연속적 적대적 공격이 견고성 향상에 필수적인 요소임을 입증한다.
1-Step 적대적 훈련: 공격 스텝을 1회로 줄인 '1-step AT'는 다단계 방식과 유사한 견고성 향상을 달성하면서도, 훈련 시간과 자원을 크게 절약할 수 있음을 확인하였다.
견고성-유용성 균형: 공격 강도(ϵ)와 IPO 손실(β) 하이퍼파라미터에 따라 견고성과 유용성 사이에 명확한 트레이드오프 관계가 존재함을 확인하였다.
공격 손실 간의 상관관계: 훈련 시의 연속적 공격 손실과 추론 시의 이산적 공격(GCG) 손실 사이에 높은 양의 상관관계(r=0.99)가 있음을 발견하였다. 이는 연속적 공격이 이산적 공격의 견고성을 예측하는 신뢰할 수 있는 지표가 될 수 있음을 시사한다.