논문명: Protecting Privacy in Multimodal Large Language Models with MLLMU-Bench
저자: Zheyuan Liu, Guangyao Dou, Mengzhao Jia, Zhaoxuan Tan, Qingkai Zeng, Yongle Yuan, Meng Jiang
게재지: NAACL 2025 (Long Papers)
URL: https://arxiv.org/abs/2410.22108
MLLMU-Bench
서론
Large Language Model과 Multimodal Large Language Model은 대규모 데이터로 학습되면서 다양한 지식을 획득하지만, 학습 데이터에 포함된 개인정보나 저작권이 있는 내용을 함께 기억할 가능성도 있습니다. 문제가 되는 데이터를 제외하고 모델을 처음부터 다시 학습하는 것이 가장 직접적인 방법이지만, 대규모 모델에서는 비용이 너무 크기 때문에 특정 데이터의 영향만 제거하는 Machine Unlearning이 대안으로 연구되고 있습니다.
기존 LLM 분야에서는 TOFU나 WMDP와 같은 unlearning benchmark가 제안되었습니다. 하지만 MLLM에서는 같은 knowledge가 text뿐만 아니라 image와 함께 학습될 수 있다는 차이가 있습니다. 예를 들어 특정 인물의 textual information을 제거했더라도, 모델이 그 사람의 얼굴을 보고 여전히 관련 정보를 답할 수 있다면 완전한 unlearning이라고 보기 어렵습니다.
따라서 MLLM에서는 하나의 modality만 확인하는 것이 아니라 visual-textual knowledge가 여러 modality에서 실제로 제거되었는지를 함께 평가할 필요가 있습니다. 이를 위해 MLLMU-Bench(Multimodal Large Language Model Unlearning Benchmark)가 제안되었습니다.
본론
Dataset Construction
MLLMU-Bench는 총 653개의 profile, 1,153개의 image, 20,754개의 question으로 구성됩니다. 500개는 GPT-4o를 이용해 생성한 fictitious profile이고, 나머지 153개는 실제 celebrity profile입니다. 가상 인물의 얼굴에는 ThisPersonDoesNotExist의 synthetic image를 사용하여 benchmark 구성 과정에서 실제 개인의 privacy 문제가 발생하지 않도록 했습니다.
각 profile에는 이름, 출생지, 직업, 거주지 등의 정보가 포함되며, profile마다 14개의 question-answer pair를 구성합니다. 이 중 7개는 image와 text를 함께 사용하는 multimodal question이고, 나머지 7개는 text-only question입니다.
같은 profile knowledge를 서로 다른 modality에서 질의하기 때문에, 특정 정보가 한쪽 modality에서만 제거되었는지도 확인할 수 있습니다.
Evaluation Datasets
MLLMU-Bench는 Forget Set, Test Set, Retain Set, Real Celebrity Set의 네 가지 dataset을 이용해 unlearning을 평가합니다.
Forget Set은 실제 unlearning 대상입니다. 500개의 fictitious profile 중 5%, 10%, 15%를 각각 Forget Set으로 지정하며, 해당 profile에 대한 성능이 낮아질수록 target information을 잘 제거한 것으로 봅니다.
하지만 기존 질문과 이미지에서만 성능이 낮아졌다고 해서 knowledge 자체가 제거되었다고 단정하기는 어렵습니다. 이를 확인하기 위해 Test Set에서는 같은 인물을 대상으로 질문을 paraphrasing하고, Arc2Face로 image의 pose와 angle을 변형합니다. 즉 Forget Set은 Unlearning Efficacy, Test Set은 Unlearning Generalizability를 평가합니다.
반대로 Retain Set에서는 unlearning 대상이 아닌 fictitious profile의 knowledge가 유지되는지 확인하고, Real Celebrity Set에서는 neighboring knowledge에 대한 영향을 평가합니다.
| Evaluation | Dataset | 목적 |
|---|---|---|
| Unlearning Efficacy | Forget Set | Target knowledge가 제거되었는가 |
| Generalizability | Test Set | 변형된 질문과 image에서도 제거가 유지되는가 |
| Model Utility | Retain / Real Celebrity | 관련 없는 knowledge가 유지되는가 |
Evaluation Tasks
각 dataset은 Classification, Generation, Cloze의 세 가지 task로 평가합니다.
Classification은 birthplace나 occupation과 같은 profile attribute를 multiple-choice 형식으로 질문하고 Classification Accuracy를 측정합니다.
Generation에서는 free-form text를 생성하며, ground truth와의 textual overlap을 측정하는 ROUGE-L과 GPT-4o가 생성 답변의 사실성을 1~10점으로 평가하는 Factuality Score를 사용합니다.
Cloze task에서는 이름과 일부 context만 제공한 뒤 특정 정보를 빈칸으로 채우도록 합니다. 이때 generated answer가 ground truth와 정확하게 일치하는지를 Cloze Accuracy로 측정합니다. 제한된 context만으로 profile information을 복원해야 하기 때문에 모델 내부에 남아 있는 memorized knowledge를 확인하는 평가로 볼 수 있습니다.
Forget Set과 Test Set에서는 각 metric이 낮을수록 forgetting이 강한 것이고, Retain Set과 Real Celebrity Set에서는 반대로 높을수록 model utility가 잘 유지된 것입니다.
Unlearning Baselines
저자들은 먼저 LLaVA-1.5-7B와 Idefics2-8B를 500개의 fictitious profile로 fine-tuning한 뒤, 5%, 10%, 15% Forget setting에서 기존 LLM unlearning 방법들을 적용합니다.
| Method | 기본 아이디어 |
|---|---|
| Gradient Ascent | Forget Set의 loss를 증가 |
| Gradient Difference | Forget loss를 증가시키면서 Retain loss를 감소 |
| KL Minimization | Retain Set에서 original model의 output을 유지 |
| NPO | Forget Set을 dispreferred data로 취급 |
| Prompting | 개인정보를 생성하지 않도록 system prompt를 추가 |
가장 단순한 Gradient Ascent(GA)는 Forget Set의 loss를 반대로 최적화합니다.
\[\mathcal{L}_{GA} = -\mathcal{L}(D_f,w)\]즉 기존 학습에서 정답의 likelihood를 높였다면, unlearning에서는 해당 정답의 likelihood가 낮아지도록 parameter를 업데이트합니다.
Gradient Difference(GD)는 Forget Set뿐 아니라 Retain Set의 loss도 함께 고려합니다.
\[\mathcal{L}_{GD} = -\mathcal{L}(D_f,w) + \mathcal{L}(D_r,w)\]Forget Set에서는 target knowledge를 제거하면서 Retain Set의 성능은 유지하는 것이 목적입니다.
KL Minimization은 Retain Set에서 현재 모델이 unlearning 이전 모델과 비슷한 output distribution을 유지하도록 KL divergence를 사용합니다. NPO는 Forget Set을 dispreferred data로 두고 preference optimization 형태로 target answer에 대한 preference를 낮춥니다.
Experiments & Results
Baseline Comparison
LLaVA-1.5-7B의 5% Forget setting에서 Classification Accuracy는 다음과 같습니다.
| Method | Forget Set ↓ | Test Set ↓ | Retain Set ↑ | Real Celebrity ↑ |
|---|---|---|---|---|
| Vanilla | 51.70 | 47.86 | 46.11 | 51.80 |
| GA | 44.40 | 38.40 | 39.09 | 45.56 |
| Gradient Difference | 43.60 | 43.41 | 41.07 | 46.52 |
| KL Minimization | 46.80 | 45.20 | 38.83 | 45.64 |
| Prompting | 46.80 | 44.87 | 42.99 | 51.60 |
| NPO | 45.61 | 44.44 | 42.61 | 49.51 |
GA와 Gradient Difference는 Forget Set의 성능을 크게 낮추며 비교적 강한 forgetting을 보였습니다. 하지만 Retain Set과 Real Celebrity의 성능도 함께 감소했습니다. 반대로 NPO와 Prompting은 기존 knowledge를 비교적 잘 유지했지만 forgetting은 상대적으로 약했습니다.
따라서 단순히 Forget Set의 accuracy를 많이 낮췄다고 해서 더 좋은 unlearning이라고 판단하기는 어렵습니다.
Multimodal vs. Unimodal Unlearning
MLLMU-Bench는 같은 unlearning algorithm을 image+text를 사용하는 multimodal setting과 text만 사용하는 unimodal setting에서 각각 비교합니다.
하나의 modality가 모든 task에서 일관되게 우수하지는 않았습니다. Classification에서는 multimodal unlearning이 Image+Text evaluation에서 더 강한 forgetting을 보였지만, Pure Text evaluation에서는 unimodal unlearning이 더 강했습니다. Generation과 Cloze에서도 unimodal 방식이 전반적으로 강한 forgetting을 보였습니다.
다만 unimodal unlearning의 강한 forgetting은 Retain Set과 Real Celebrity Set의 성능 감소와 함께 나타나는 경우도 있었습니다. 결국 input modality는 단순히 데이터 형식만 바꾸는 요소가 아니라, 어떤 knowledge가 제거되고 어떤 task가 영향을 받는지와도 관련되어 있습니다.
Forgetting vs. Model Utility
논문에서 반복적으로 확인되는 결과는 forgetting과 model utility 사이의 trade-off입니다.
GA는 가장 강한 forgetting을 보이는 방법 중 하나지만 Retain accuracy도 크게 감소합니다. 반대로 NPO와 Prompting은 utility를 비교적 잘 유지하지만 target knowledge의 제거 정도는 약합니다.
저자들은 utility를 Retain Set뿐 아니라 Real Celebrity의 neighboring knowledge, MMMU의 reasoning ability, LLaVA-Bench의 helpfulness까지 함께 확인합니다. 현재 baseline들은 target knowledge만 강하게 제거하면서 나머지 능력을 그대로 유지하는 이상적인 영역에 도달하지 못했습니다.
Reproduction
논문의 방법을 직접 확인하기 위해 공식 MLLMU-Bench repository의 fine-tuned LLaVA_Vanilla checkpoint를 시작점으로 일부 실험을 재현했습니다. 계산 비용을 고려하여 5% Forget setting에서 GA와 Gradient Difference를 중심으로 확인했습니다.
GA는 official code에서도 Forget Set의 answer-token NLL에 음수 부호를 적용해 gradient ascent를 수행하며, 논문의 목적과 직접적으로 대응했습니다.
반면 Gradient Difference는 paper objective와 official implementation의 최적화 방식에 차이가 있었습니다.
논문에서는 다음의 combined objective를 제시합니다.
\[\mathcal{L}_{GD} = -\mathcal{L}(D_f,w) + \mathcal{L}(D_r,w)\]하지만 official code에서는 Forget Set 전체를 먼저 gradient ascent로 처리한 뒤, 별도의 loop에서 Retain Set 전체를 gradient descent로 처리합니다.
하지만 official code에서는 Forget Set과 Retain Set을 하나의 loss로 계산하지 않고, 두 phase를 순차적으로 수행합니다.
# Forget phase
loss_forget = -outputs.loss
accelerator.backward(loss_forget)
optimizer.step()
# Retain phase
loss_retain = outputs.loss
accelerator.backward(loss_retain)
optimizer.step()
즉 paper objective는 Forget loss와 Retain loss를 하나의 optimization objective로 표현하지만, official implementation은 Forget Set 전체를 먼저 업데이트한 뒤 Retain Set 전체를 다시 학습하는 구조입니다.
Paper
Forget loss ↑ + Retain loss ↓
↓
Combined objective
Official code
Forget Set → Gradient Ascent
↓
Retain Set → Gradient Descent
재현 당시 5% setting에서는 Forget phase가 96 iteration, Retain phase는 1,831 iteration이었습니다. 따라서 실행 자체는 완료되었지만, 결과를 paper objective와 동일한 optimization 조건의 재현으로 보기는 어려웠습니다.
결론
MLLMU-Bench는 text 기반의 unlearning 평가를 multimodal setting으로 확장하여, image와 text에 걸쳐 존재하는 private knowledge가 실제로 제거되었는지를 평가하고자 합니다. 특히 Forget Set뿐 아니라 변형된 질문과 image로 구성된 Test Set, 그리고 Retain Set과 Real Celebrity Set을 함께 사용하여 efficacy, generalizability, utility도 측정합니다.
더 나아가, 실험을 통해 unlearning modality에 따라 task별 결과가 다르게 나타난다는 것을 알아냈습니다. Multimodal unlearning이 항상 multimodal knowledge를 더 잘 제거하는 것도 아니었고, unimodal 방식의 강한 forgetting 역시 utility degradation과 함께 나타날 수 있었습니다. 또한 가장 강하게 Forget Set의 성능을 낮춘 방법이 항상 가장 좋은 unlearning method는 아니었습니다. Target knowledge만 제거하고 unrelated knowledge와 general capability를 유지해야 하기 때문입니다.
개인적으로는 기존 LLM unlearning 방법을 그대로 MLLM에 적용하는 것만으로는 modality 사이에 연결된 knowledge를 선택적으로 제거하기 어렵다는 점에서 MLLM의 언러닝 벤치마크를 설계해나갔다는 시작이 이 논문의 가장 주요한 성과라고 생각합니다. 논문에서도 multimodal과 unimodal setting의 차이는 확인했지만, 그 차이가 모델 내부의 어떤 representation이나 parameter에서 발생하는지까지 설명하지는 않습니다. 따라서 이후에는 단순히 unlearning input의 modality를 바꾸는 것보다, visual knowledge와 textual knowledge가 모델 내부에서 어떻게 연결되어 있는지를 고려하는 modality-aware unlearning이 필요할 것으로 보입니다.