(ICML 2025, Accept)
Introduction
비공개 상용 모델의 Fine-tuning 서비스는 사용자가 업로드한 데이터가 모델의 안전 정렬을 손상시킬 수 있는 취약점이 있음
Methodology
- Estimating Safety Degradation and Selecting Parameters: Safe Delta는 각 Delta 파라미터(fine-tuning 전후 파라미터 변화 ΔWsft=Wsft−Worig)가 유발하는 안전성 저하 및 Utility 개선을 추정
- 안전성 저하 추정: Layer 출력을 사용하여 안전성 손실 Lsafe=∥WsdXsafe−WorigXsafe∥22을 정의
여기서 Wsd는 Safe Delta에 의해 업데이트된 파라미터, Xsafe는 안전성 데이터셋의 layer 입력
- Optimal Brain Surgeon (OBS) Pruning을 기반으로 단일 Delta 파라미터 δwm이 추가될 때 발생하는 안전성 손실 증가 δLmsafe를 최소화하도록 유도
δLmsafe=2[H−1]mm(δwm)2 OBS Pruning in Safe Delta
- 여기서 H=∇Worig2Lsafe는 안전성 데이터셋에 대해 평가된 Lsafe의 Hessian 행렬이고, [H−1]mm은 H−1의 m번째 대각 요소임
Hessian은 Fine-tuning 전에 한 번만 계산하여 캐싱할 수 있으므로 계산 효율적
- Utility 개선 추정: Fine-tuning 요청마다 Utility Hessian을 재계산하는 것은 실용적이지 않으므로, Utility 목표를 원래 파라미터와의 파라미터 거리 Lutil=∥Wsd−Worig∥22로 근사하여 Fine-tuned 모델의 출력과 일치하는 layer 출력을 유도
- 단일 Delta 파라미터 δwm이 추가될 때 Utility 개선은 −δLmutil=(δwm)2으로 추정
- Greedy Selection: 각 Delta 파라미터의 Utility 개선과 안전성 저하를 고려하여, Utility-Safety 비율 rm을 계산
rm=δLmsafe−δLmutil=2[H−1]mm
- rm 값이 큰 파라미터일수록 단위 안전성 손실당 Utility 이득이 크므로, 이 비율을 기준으로 delta 파라미터들을 내림차순으로 정렬
- 누적 안전성 저하가 미리 정의된 임계값 ϵ을 초과하지 않는 범위 내에서 상위 랭크 파라미터들을 greedy 선택하여 이진 마스크 M을 생성
- ϵ은 layer별로 s⋅Nm1∑m=1Nm2[H−1]mm1형태로 설정
- Applying a Safety Compensation Vector: 선택된 delta 파라미터들로 인한 잔여 안전성 저하를 완화하기 위해 안전성 보상 벡터 C를 적용
- 단일 delta 파라미터 δwm에 대한 최적의 안전성 보상 벡터 Cm:
Cm=ΔWm∗=−(−[H−1]mmδwm)H−1⋅emCm=[H−1]mmδwm⋅H−1⋅em H−1⋅em은 H−1 행렬의 m번째 열(H:,m−1)을 의미하므로Cm=δwm[H−1]:,m[H−1]mm
- 최종 보상 벡터 C는 선택된 Delta 파라미터들 (M⊙ΔWsft)에 대해 계산된 Cm들을 합산하여 구하고, 선택되지 않은 위치에는 영향을 주지 않도록 (I−M) 마스크를 적용:
C=(I−M)⊙m∈SM∑Cm
- 최종적으로 업데이트된 모델 파라미터 Wsd는 Worig+M⊙ΔWsft+C로 구성
Experimental Result

