*** Semantics-Adaptive Activation Intervention for LLMs via Dynamic Steering Vectors (SADI) (ICLR 2025)

아래는 ICLR 2025 논문 “Semantics-Adaptive Activation Intervention for LLMs via Dynamic Steering Vectors (SADI)” 의 전체 구조와 핵심 기여를 종합적으로 정리한 설명입니다.


📌 1. 논문의 문제의식 — “고정된 Steering Vector의 한계”

Activation Engineering(activation steering)은 최근 LLM 행동을 제어하기 위한 중요한 기법입니다.
하지만 기존 방법들은 다음과 같은 한계를 가짐:

① 고정된 steering vector 사용

  • CAA(Rimsky et al., 2023), ITI(Li et al., 2023) 등 대부분
    → positive–negative 예제의 activation 차이를 평균하여 하나의 정적인 방향 벡터를 만듦.
  • 문제: 입력 문장이 달라지면 semantic direction도 달라지는데, steering vector는 변하지 않음.

② 입력 의미와 steering 방향 불일치

  • activation 패턴은 입력 문장마다 크게 달라짐.
  • 고정 steering vector를 더하면, semantic misalignment 발생 → 성능 저하.

→ 이 논문의 출발점: “입력의 의미에 따라 steering vector도 적응해야 한다.”


📌 2. SADI의 핵심 아이디어 (그림 1)

논문 Figure 1은 SADI의 3단계를 시각화함.


Step 1 — Difference Extraction

Contrastive pair(positive vs negative)의 activation 차이를 모든 계층에서 계산:

Di(l)=Apos,i(l)Aneg,i(l)D_i^{(l)} = A_{pos,i}^{(l)} – A_{neg,i}^{(l)}
  • 마지막 토큰의 activation만 사용 (semantic summarization 역할)
  • 각 layer, 각 attention head, 각 neuron, hidden state 모두 다룰 수 있음.

Step 2 — Binary Masking

전체 activation 차이를 평균하여 가장 중요한 요소 top-K 선택:

D(l)=1NiDi(l),M[l,m]=1 if (l,m)Top-KD^{(l)} = \frac{1}{N}\sum_i D_i^{(l)},\quad M[l,m] = 1 \text{ if } (l,m) \in \text{Top-K}

→ 이진 마스크 M 생성.

즉,
“LLM 내부에서 ‘정답과 오답을 구분짓는 핵심 요소’만 골라낸다.”

계층별 패턴 (그림 3 참고)

  • attention head 차이는 middle~late layers에서 강하게 나타남.
  • neuron/hidden 차이는 마지막 layer에 집중됨.

Step 3 — Adaptive Steering

기존 방식은 고정 vector DMD\odot M 를 넣었음.

SADI는 입력 q 의 activation을 활용:

Aq=Aq+δ(AqM)A’_q = A_q + \delta(A_q \odot M)

즉,

스스로 입력 q의 semantic direction을 따라가는 steering vector 생성

  • activation의 방향을 보존하면서 magnitude만 조정.
  • semantic alignment 유지 → misalignment 문제 해결.

📌 3. SADI의 세 가지 변형

① SADI-HIDDEN

  • 모든 layer의 hidden state를 조작.

② SADI-HEAD

  • 각 attention head의 출력을 조작.

③ SADI-NEURON

  • FFN 중간 activation(게이트 전후)에 적용.

➡ 실험적으로 HEAD 조작이 가장 효과적임.


📌 4. 실험 결과 핵심 정리

✔ Multiple-choice (LLAMA2-7B-CHAT 기준, Table 1)

  • SADI-HEAD 평균 70.08% → 기존 baseline 64.85% 대비 +5.23 상승
  • StoryCloze에서는 +14.69 개선 (65.06 → 79.75)

→ 고정 vector 방식(CAA/ITI)보다 항상 우수.

✔ Open-ended generation (Table 3)

TruthfulQA:

  • True×Info metric에서 SADI-HEAD가 +10.08 향상.

TriviaQA:

  • EM 44.0 (baseline 41.6보다 상승)

ToxiGen:

  • toxicity 49.71 → 34.50로 감소 (독성 크게 줄임)

📌 5. Ablation: 왜 Dynamic Steering이 중요한가?

Table 4 비교:

방법StoryCloze
SADI-HEAD79.75
Random mask71.87 (–7.88)
Fixed steering vector69.42 (–10.33)

결론:

  • top-K 요소 식별(binary mask)이 매우 중요
  • 고정 steering vector는 semantic misalignment 때문에 크게 성능 저하됨
  • SADI가 “입력 기반 동적 조정”을 도입한 이유가 명확히 증명됨

📌 6. Generalization — 다양한 LLM, 모델 크기, multilingual

모델 변경(BLOOMZ/Mistral/Falcon)

  • 모든 모델에서 SADI가 baseline보다 개선.

모델 크기 변경 (Table 6)

  • BLOOMZ-560M에서도 SADI > SFT
    → 작은 모델일수록 steering의 이득이 더 큼.

Few-shot

  • few-shot 조건에서도 향상되지만 zero-shot 대비 개선 폭은 감소
    → prompt 자체가 일종의 steering 역할을 수행하기 때문.

Multilingual (XCOPA)

  • 8개 언어 모두에서 SADI가 성능 향상
  • 인도네시아어(ID)에서 가장 큰 개선.

📌 7. 분석: Contrastive Pair 수량의 영향

Figure 4:

  • SADI는 약 150개 contrastive pair만으로도 최적 성능
  • SFT는 데이터 증가에 따라 지속적으로 성능 증가 필요

→ SADI는 훈련 비용 없이, 매우 적은 데이터로 alignment 개선 가능.


📌 8. SADI의 의의 & Activation Engineering 분야에서의 위치

✔ Activation Interventions의 새로운 패러다임

  • 기존: 고정 steering vector → 애초에 입력 의미와 불일치 가능
  • SADI: 입력 의미의 방향성을 보존하는 semantic-aligned dynamic steering

✔ Training-free yet effective

  • 파라미터 업데이트 없음
  • inference-time 수정만으로 alignment & 성능 개선 가능

✔ LLM alignment, truthfulness, toxicity reduction 등 다양한 분야에 적용 가능


📌 9. 요약

SADI는 contrastive activation difference 기반 요소 선택(top-K mask) +
입력별 semantic direction 기반 steering을 결합한 최초의 동적 간섭 기법.

그 결과,

  • 기존 activation steering의 핵심 한계(고정 vector)를 해결
  • zero-shot multiple-choice/logical reasoning에서 큰 폭의 성능 향상
  • truthfulness / toxicity 등 generation 품질에도 뛰어난 효과
  • 훈련 비용 없음, 적은 데이터로 구현 가능
  • 다양한 LLM 및 언어로 일반화

아래는 ICLR 2025 논문 “Semantics-Adaptive Activation Intervention for LLMs via Dynamic Steering Vectors (SADI)” 의 방법론(Methodology) 전체를 구조적으로, 수식·알고리즘·그림과 함께 정리한 상세 설명입니다.


⭐ SADI 방법론(Methodology) 전체 구조

SADI는 Figure 1과 Algorithm 1에 기반하여 다음 3단계 파이프라인으로 구성됨:

  1. Difference Extraction (활성 차이 추출)
  2. Binary Masking (핵심 요소 식별용 마스크 생성)
  3. Adaptive Steering (입력 의미에 따라 동적으로 activation 조정)

또한 이 방법은 LLM의 다음 구성요소 어디에든 적용 가능함:

  • Hidden State (SADI-HIDDEN)
  • Attention Head Output (SADI-HEAD)
  • FFN Neurons (SADI-NEURON)

이제 각 단계를 수식과 직관을 모두 포함해 상세히 설명합니다.


1️⃣ Difference Extraction

Contrastive pair(positive vs negative output)을 기반으로 정답과 오답을 구분짓는 activation 방향을 추출하는 단계.


📌 1. Input 구성

Contrastive dataset

T=(xi,yipos,yineg)i=1NT={(x_i, y_i^{pos}, y_i^{neg})}_{i=1}^N

각 항목은

  • 입력 질문 xix_i
  • 정답 텍스트 yiposy_i^{pos}
  • 오답 텍스트 yinegy_i^{neg}

을 포함.


📌 2. Activation 수집 방식

LLM의 모든 layer ll에서,
입력 + 출력 텍스트를 넣어 마지막 토큰의 activation을 추출.

A(l)pos,i=P(l)(xiyipos)A^{(l)}{pos,i} = P^{(l)}(x_i \Vert y_i^{pos})
A(l)neg,i=P(l)(xiyineg)A^{(l)}{neg,i} = P^{(l)}(x_i \Vert y_i^{neg})

왜 마지막 토큰인가?
→ 모델의 출력 의미를 가장 잘 반영하는 summary-like embedding 역할.


📌 3. Activation Difference 계산

정답·오답 activation 차이를 계산:

Di(l)=A(l)pos,iA(l)neg,i(1)D_i^{(l)} = A^{(l)}{pos,i} – A^{(l)}{neg,i} \tag{1}

이 벡터는 정답을 출력할 때 증가하는 activation 방향을 직접적으로 나타냄.

즉, “이 방향으로 activation을 조정하면 모델이 더 올바른 의미를 따르게 된다” 를 의미.


2️⃣ Binary Masking

Difference를 평균한 뒤, 가장 중요한 top-K activation 요소만 선택하여 이진 마스크를 만든다.


📌 1. Mean difference 계산

모든 contrastive pair에 대해 평균:

D(l)=1Ni=1NDi(l)D^{(l)} = \frac{1}{N} \sum_{i=1}^N D_i^{(l)}

모든 layer를 연결(concatenate)하면 전체 difference vector:

D=Concat(D(0),,D(L1))(2)D = \text{Concat}(D^{(0)}, \dots, D^{(L-1)}) \tag{2}

📌 2. Top-K 요소 선택

가장 magnitude가 큰 요소 top-K를 선택하여 마스크 생성:

M[l,m]={1if (l,m)EK0otherwise(3)M[l,m] = \begin{cases} 1 & \text{if } (l,m) \in E_K \\ 0 & \text{otherwise} \end{cases} \tag{3}

여기서

  • ll = layer index
  • mm = head, neuron, hidden dimension 등 아키텍처상의 element
  • EKE_K = top-K index set

즉, “정답·오답을 가장 잘 구분하는 내부 요소만 골라내어 조정 대상으로 삼는다.”


📌 (중요) 왜 mask가 필요한가?

논문 ablation(Table 4)에 따르면:

  • 무작위 선택(random identify) → 성능 급감
  • 고정 steering vector → misalignment로 성능 저하
  • SADI mask → 핵심 요소만 정밀 조정 → 성능 극대화

즉, mask는 SADI가 기존 activation steering과 결정적으로 다른 부분임.


3️⃣ Adaptive Steering

이 단계가 SADI의 가장 혁신적 기여.

기존 CAA, ITI 등은:

“contrastive difference D를 그대로 steering vector로 사용”
→ 입력 의미와 steering 방향이 다르면 성능 악화

SADI는 그 한계를 극복하기 위해:

“입력 q의 semantic direction을 따라 activation을 조정하는 동적 steering vector 생성”


📌 1. 입력 q의 activation 수집

사용자 입력 q를 forward하여
각 layer의 마지막 토큰 activation:

Aq=Concat(Aq(0),,Aq(L1))(4)A_q = \text{Concat}(A_q^{(0)}, \dots, A_q^{(L-1)}) \tag{4}

📌 2. Semantic-aligned steering

마스크를 씌운 입력 activation을 scaling하여 update:

Aq=Aq+δ(AqM)(5)A_q’ = A_q + \delta (A_q \odot M) \tag{5}

여기서

  • \odot: element-wise 곱
  • δ: intervention strength

핵심은
steering 방향이 D가 아니라 AqA_q 자체라는 점.

🔍 직관적 의미

  • activation 방향은 각 입력마다 semantic direction을 나타냄
  • 따라서 activation을 그대로 강화하면
    → 입력 문맥에 맞는 direction으로 steering vector가 자동 생성됨

기존 방법과 비교

MethodSteering Vector
CAADD (고정)
ITI특정 head difference 기반 고정 방향
SADIAqMA_q \odot M (입력마다 변화)

따라서 SADI는:

  • semantic misalignment 문제 해결
  • task generalization 강화
  • 많은 benchmark에서 큰 성능 향상

🔎 Algorithm 1 요약

논문 Algorithm 1의 핵심 흐름:

  1. contrastive pair들의 activation difference 평균 → (ΔA)
  2. top-K binary mask MM 생성
  3. inference 시 입력 각 문장에 대해
    • activation 추출
    • mask 적용
    • δ scaling
    • 수정된 activation으로 forward pass 완료

이 모든 과정은 training 없이 inference 단계에서만 수행됨.


⭐ SADI-HIDDEN / HEAD / NEURON 차이점

✔ SADI-HIDDEN

  • hidden state dimension 전체에 적용
  • multiple-choice에는 효과 좋음
  • generation에는 다소 불안정

✔ SADI-HEAD (가장 성능 우수)

  • attention head output에만 intervention
  • reasoning·truthfulness·toxicity 등 가장 강력한 향상
  • layer-wise functional specialization과 잘 맞음

✔ SADI-NEURON

  • FFN 게이트 활성(neuron activation)에 적용
  • 모델 종류에 따라 효과 다양

📌 SADI 방법론 전체의 핵심 요약

SADI는 다음 3가지 혁신으로 기존 activation steering을 크게 향상:

① Contrastive pair 기반 중요 activation 요소만 선택 (Binary Mask)

→ 꼭 필요한 내부 요소만 조작 → 부작용 감소, 효율 증가

② 입력 의미에 따라 steering vector가 동적으로 생성 (Adaptive Steering)

→ semantic alignment 유지 → 기존 고정 vector 방식의 근본적 한계 해결

③ Training-free 방식

→ 적은 데이터(100~150개 pair)로 큰 성능 향상
→ alignment, truthfulness, toxicity 등 다양한 task에 적용 가능


아래는 SADI-HEAD가 무엇을 조작하는지, 왜 SADI 3가지 변형(SADI-HIDDEN / SADI-NEURON / SADI-HEAD) 중 가장 강력한 성능을 보이는지를 논문 기반 + LLM 메커니즘 관점에서 상세히 설명한 내용입니다.
(모든 내용은 첨부 PDF 근거를 포함합니다.)


⭐ 1. SADI-HEAD란 무엇인가?

SADI 방법은 내부 개입(intervention)의 적용 대상을 3가지로 나눔:

  • SADI-HIDDEN → layer hidden state 조작
  • SADI-NEURON → FFN neuron activation 조작
  • SADI-HEAD → Attention Head Output 조작 (가장 성능이 높게 나타나는 방식)

그중 SADI-HEAD는 각 layer의 attention head 출력을 대상으로 difference를 측정하고, Top-K head에 대해서만 steering을 적용하는 방식.


⭐ 2. SADI-HEAD의 동작 과정 (세부 흐름)

(1) Contrastive pair로 head-level activation difference 추출

각 head hh 의 출력벡터를 H(l,h)(x)H^{(l,h)}(x) 라 하면,

D(l,h)i=H(l,h)pos,iHneg,i(l,h)D^{(l,h)}i = H^{(l,h)}{pos,i} – H^{(l,h)}_{neg,i}

즉, 정답을 내놓을 때와 오답을 내놓을 때 각 attention head가 어떻게 다르게 반응하는지를 정확히 계산한다.


(2) Mean difference 기반 Top-K 중요 head 선택

D(l,h)=1NiDi(l,h)D^{(l,h)} = \frac{1}{N} \sum_i D^{(l,h)}_i

그리고 가장 magnitude가 큰 head K개를 선택해 binary mask M 생성.

논문 Fig.3(a)에서 head들의 difference heatmap이 나오는데,
중간~후반 레이어의 일부 head들이 contrastive 짝에 대해 매우 큰 difference를 가지는 것이 관찰됨.

즉, LLM은 특정 head들이 “정답과 오답을 구분하는 핵심 회로(circuit)” 역할을 하고 있음을 의미한다.


(3) Inference 시 입력 q의 head activation을 직접 강화

SADI의 핵심은 fixed steering이 아니라 activation 자체를 강화하는 것:

Aq=Aq+δ(AqM)A’_q = A_q + \delta (A_q \odot M)

여기서 AqA_q는 attention head output이다.

→ 즉, 선택된 head들의 activation을 입력의 의미 방향에 맞춰 스스로 강화하는 효과.


⭐ 3. 실험적으로 SADI-HEAD가 가장 강력한 이유

논문 Table 1, 2, 3에서 SADI-HIDDEN, SADI-NEURON보다 SADI-HEAD가 거의 모든 task에서 최고의 성능을 보여줌.
특히 StoryCloze, MMLU, TruthfulQA 등 reasoning이 필요한 과제에서 두드러짐.


⭐ 4. 왜 Attention Head 조작이 가장 효과적인가? (핵심 이유 6가지)

아래는 논문적 근거 + LLM 메커니즘 연구(Attention head specialization, mechanism interpretability) 관점에서 통합 분석한 내용.


✅ (1) Attention Heads는 LLM 내부의 “기능적 회로(Functionally Specialized Circuits)”이다

많은 연구(Nanda, Olah 등)는 다음을 보여줌:

  • head는 grammar, world knowledge, chain-of-thought, entity tracking 등 특정 기능을 담당하는 모듈이다.
  • 즉 head 단위로 정보가 구조화되어 있기 때문에
    → 특정 task 관련 head만 조절하면 원하는 행동을 효율적으로 바꿀 수 있음.

SADI-HEAD는 바로 이런 기능적으로 중요한 head들만 골라서 개입한다.


✅ (2) Contrastive pair difference에서 가장 뚜렷한 변화가 head에서 나타난다

Figure 3(a)에서 명확하게 보임:
중간~후반 layers의 head difference가 매우 크고 선명하다.

즉,

“정답 vs 오답을 구분하는 정보는 주로 attention head에서 나타난다.”

따라서 head-level 개입이 가장 효과적일 수밖에 없다.


✅ (3) Hidden state 조작은 너무 광범위하여 부작용이 발생

Hidden state는 많은 정보가 뒤섞여 존재하는 공간.
여기에서 top-K 차원을 강화하면

  • semantics 외의 다른 정보도 증폭될 수 있으며
  • generation task에서는 오히려 noisy하게 작용해 성능 저하 가능

실제로 논문 Table 3에서
SADI-HIDDEN은 TruthfulQA generation에서 성능이 크게 저하됨.


✅ (4) FFN neuron 조작은 head보다 덜 구조적으로 명확

FFN은 주로 feature transformation, gating 역할.

하지만 reasoning과 semantics routing은 attention head를 통해 전달되므로
FFN neuron을 조절해도 head만큼 직접적으로 행동을 제어하지 못함.

그래서 SADI-NEURON은 성능 개선은 있지만 항상 최적은 아님.


✅ (5) Attention head는 정보를 “선택”하고 “해석”하는 모듈이기 때문에 steering 효과가 직접적이다

head는 다음 기능을 수행:

  • 어떤 토큰에 주의를 줄지 결정 (selection)
  • 선택된 정보로 의미를 조립(composition)
  • downstream layers로 semantic signal을 전달

따라서 head activation을 강화하는 것은

Semantic routing 자체를 강화하는 것

즉, reasoning이나 question answering의 핵심 알고리즘을 직접 조작하는 것과 같다.


✅ (6) SADI의 동적 steering이 head에 특히 잘 맞는다

동적 steering은

“입력 q의 head activation을 자체적으로 확장하는 기법”

인데, head activation은 input semantics와 alignment가 가장 잘 맞음.

즉,

  • Q, K, V attention의 구조상
  • head output은 이미 “입력 의미의 방향”을 잘 파악한 feature

그래서:

Hidden이나 Neuron보다 head의 activation 자체를 강화하는 것이 semantic-aligned steering의 목적에 가장 부합한다.


⭐ 5. 실험적으로 SADI-HEAD가 가장 성공적인 이유: 논문 근거 요약

아래는 논문에서 직접 확인되는 근거.


✔ (근거 1) Multiple-choice 전 task에서 최고 성능 (Table 1)

SADI-HIDDEN, NEURON보다 항상 우수.


✔ (근거 2) 도메인별 MMLU에서도 모든 분야에서 최고 성능 (Table 2)

특히 STEM에서 +5.09 향상.


✔ (근거 3) TruthfulQA generation에서 압도적 성능 (Table 3)

True×Info metric에서 +10.08 증가.


✔ (근거 4) fixed steering 대비 가장 큰 이득 (Table 4)

head-level에서 semantic misalignment 문제가 가장 강하게 해결됨.


✔ (근거 5) middle~late layers head difference가 가장 뚜렷 (Fig.3(a))

→ head가 contrastive signal을 가장 뚜렷하게 담고 있음.


⭐ 6. 결론: 왜 SADI-HEAD인가?

SADI-HEAD는 LLM 내부 구조 상 “의미 조절을 가장 잘 반영하는 단위”를 직접 강화하고, SADI의 동적 steering과 가장 자연스럽게 결합되기 때문이다.

한 문장으로 정리하면:

🔥 Attention head는 LLM의 semantic routing과 reasoning을 결정하는 핵심 회로이므로, head-level dynamic steering이 가장 큰 효과를 낸다.


아주 중요한 질문입니다. SADI의 Mask (M) 의 인덱스가 정확히 무엇을 뜻하는가?
→ 이것은 SADI-HIDDEN / SADI-HEAD / SADI-NEURON 세 구성에 따라 완전히 달라집니다.

논문에서는 Mask를 일반적으로 다음과 같이 정의함:

ML×dmM \in \mathbb{R}^{L \times d_m}


여기서

  • LL = 전체 레이어 수
  • dmd_m= “해당 개입 방식에서 조절하려는 요소의 총 개수”

즉,

Mask의 인덱스는 (layer index, element index)의 2차원 좌표이며, element index는 개입 단위에 따라 ‘hidden dimension / attention head / neuron’ 중 하나다.

아래에서 구성별로 구체적으로 설명합니다.


⭐ 1. SADI-HIDDEN에서 Mask 인덱스의 의미

Mask 크기

ML×dmodelM \in \mathbb{R}^{L \times d_{model}}

인덱스 의미

  • 첫 번째 인덱스 ll: 레이어 번호 (0~L−1)
  • 두 번째 인덱스 mm: hidden state의 특정 차원(index in hidden dimension)

즉,

SADI-HIDDEN의 mask는 각 layer의 hidden state vector의 특정 feature 차원을 지정한다.

예: LLaMA2-7B

  • dmodel=4096d_{model} = 4096
    → Mask에서 (layer=12, dim=2500)이 1이라면
    12번째 layer의 hidden state에서 2500번째 차원을 조작한다는 의미.

⭐ 2. SADI-HEAD에서 Mask 인덱스의 의미 (가장 중요한 경우)

Attention Head를 조작하는 구조는 다음과 같음:

  • 한 layer에는 H개의 head가 존재
  • 각 head는 head output dimension (예: 64)을 가짐
  • head output은 보통 다음 구조로 존재:
head_out(l,h)dhead\text{head\_out}^{(l,h)} \in \mathbb{R}^{d_{head}}

논문에서 SADI-HEAD는 head 단위 전체 output을 하나의 element 로 취급합니다.

따라서 Mask 인덱스는:

Mask 크기

ML×HM \in \mathbb{R}^{L \times H}

인덱스 의미

  • 첫 번째 인덱스 ll: layer
  • 두 번째 인덱스 hh: head index (0~H−1)

즉,

Mask의 각 1은 “이 layer의 이 head 전체를 조작하라”는 의미이며, head output vector 전체에 동일하게 δ scaling이 적용된다.

예: LLaMA2-7B

  • per-layer head count = 32
    → Mask shape = (32 layers × 32 heads)

Mask에서

  • (layer=10, head=7)이 1이면
    → 10번째 레이어의 7번 attention head 전체 출력에 SADI scaling이 적용됨.

이것이 SADI-HEAD가 가장 효과적인 이유 중 하나이기도 함
→ head 단위 개입은 구조적·기능적 개입이기 때문.


⭐ 3. SADI-NEURON에서 Mask 인덱스의 의미

FFN(Feed-Forward Network) 구조는 보통

FFN(x)=W2σ(W1x)\text{FFN}(x) = W_2 \sigma(W_1 x)

여기서 중간 activation σ(W₁x)는 neuron activation이며 차원은 dffnd_{ffn}.

SADI-NEURON Mask 크기

ML×dffnM \in \mathbb{R}^{L \times d_{ffn}}

인덱스 의미

  • 첫 번째 인덱스 ll: layer
  • 두 번째 인덱스 nn: FFN intermediate activation의 neuron index

즉,

특정 layer의 특정 FFN neuron activation을 조작한다는 의미.

예: LLaMA2 7B

  • FFN 게이트(neuron) 차원 = 11008
    → Mask shape = (32 layers × 11008 neurons)

⭐ 4. Mask 인덱스의 정리 (한눈에 보기)

SADI 방식Mask 2D 인덱스 의미조작 단위Mask 크기 예
SADI-HIDDEN(layer l, hidden dim m)hidden state vector의 특정 차원(L × d_model)
SADI-HEAD(layer l, head index h)attention head 전체(L × num_heads)
SADI-NEURON(layer l, neuron index n)FFN 내부 neuron(L × d_ffn)

요약:

Mask는 항상 (layer, element) 구조이고, element는 선택한 intervention 단위(hidden dim / head / neuron)이다.


⭐ 5. Mask가 element 전체를 조작하느냐?

SADI-HEAD는 “head 전체를 하나의 element로 취급”

→ head output vector 전체에 동일한 δ scaling이 적용됨.

즉, head 내 개별 차원을 따로 선택하지 않는다.

SADI-HIDDEN & SADI-NEURON은 “차원 단위”로 선택

→ hidden vector의 특정 차원
→ FFN 게이트의 특정 neuron


⭐ 6. 왜 Mask를 element 단위로 구성하는가?

논문 3.3에서는 다음과 같은 이유를 명확히 제시함:

  • 전체 activation difference 중 가장 중요한 요소만 선택
  • 불필요한 개입을 최소화하여 모델의 정상 행동을 보존
  • element 단위는 LLM 내부 구조의 기능 단위와 대응됨
    → head: 정보 라우팅
    → hidden dimension: feature direction
    → neuron: gating feature transform

즉, element-level 선택이 가장 구조적으로 안정적이고 효과적이다.


⭐ 결론

Mask의 인덱스 단위는 SADI가 어떤 내부 요소를 조작하느냐에 따라 달라지며, 기본 단위는 (layer, element)이다.

  • SADI-HIDDEN → hidden dimension
  • SADI-HEAD → attention head index (head 전체 단위)
  • SADI-NEURON → FFN neuron


게시됨

카테고리

,

작성자

태그:

댓글

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다