*** Sparse Feature Circuits: Discovering and Editing Interpretable Causal Graphs in Language Models (ICLR 2025)

https://www.dropbox.com/scl/fi/fpby0tbud8g61trpxmnq8/iclr25_Decoding_Sparse_Feature_Circuits.pdf?rlkey=phvjko1aqiufqjn8u090x23uy&dl=0

이 논문은 최근 SAE(Sparse Autoencoder) 기반 해석가능성 연구와 Circuit Discovery 연구를 결합한 대표적인 논문이다.

기존 ACDC, Activation Patching, EAP 등의 circuit discovery는 attention head, neuron, MLP block 수준에서 회로를 찾았는데, 이들은 대부분 polysemantic해서 사람이 이해하기 어렵다.

본 논문의 핵심 아이디어는:

“Circuit의 기본 단위를 neuron 대신 SAE feature로 바꾸자.”

즉,

Neuron CircuitSparse Feature Circuit\text{Neuron Circuit}\rightarrow\text{Sparse Feature Circuit}

로 전환한 최초의 본격적인 연구라고 볼 수 있다.  


1. 연구 목표

저자들이 해결하려는 문제는 두 가지다.

문제 1: Circuit은 발견되지만 해석이 어렵다

예:

  • Head 3.7
  • Neuron 5421

같은 것이 중요하다고 나와도 “그래서 이게 무슨 의미인데?”라는 문제가 생긴다.


문제 2: SAE feature는 해석 가능하지만

수십만 개 feature가 존재한다.

예:

Gemma-2B : 200K+ feature

모든 feature를 patching 해보는 것은 불가능하다.


따라서 논문 목표는

“SAE feature 공간에서 scalable하게 circuit을 발견”

하는 것이다.  


2. 전체 방법론

Figure 2가 핵심이다.  

논문 그림2.

전체 파이프라인:

LM
 ↓
SAE decomposition
 ↓
Feature graph 생성
 ↓
Node attribution
 ↓
Edge attribution
 ↓
Sparse Feature Circuit

3. SAE를 모델 내부에 삽입

논문의 중요한 관점 변화

기존:

x는 hidden state


SAE 적용:

x=x^+ϵx=\hat{x}+\epsilon

x^=ifi(x)vi+b\hat{x}=\sum_i f_i(x)v_i+b

여기서

  • viv_i: SAE feature
  • fi(x)f_i(x): feature activation
  • ϵ\epsilon: reconstruction error

이다.  


저자들은 fif_iϵ\epsilon을 모두 “모델 내부 node”로 취급한다.

즉,

feature 1
feature 2
...
feature n
error term

이 circuit graph의 node가 된다.  


4. Node Discovery

Indirect Effect

기본 정의:

IE(m;a)=m(do(a=apatch))mIE(m;a)=m(do(a=a_{patch}))-m


하지만 모든 feature에 대해 patching하면 매우 비싸다.

그래서, Attribution Patching

IE^ATP=am(apatchaclean)\hat{IE}_{ATP}=\nabla_a m\cdot(a_{patch}-a_{clean}) 사용.  


그리고 정확도를 위해

Integrated Gradients 기반

IE^IG=1Nαam(apatchaclean)\hat{IE}_{IG}=\frac1N\sum_\alpha\nabla_a m\cdot(a_{patch}-a_{clean}) 사용.  

실험에서는 대부분 IG 버전을 사용한다.


5. Edge Discovery

이 논문의 중요한 기여 중 하나.

기존: 중요 node 찾기 수준.


본 논문:

feature A
   ↓
feature B

같은 causal edge도 찾는다.

Figure 2 Step 4.  


결과적으로, G=(V,E) 형태의 sparse graph를 생성한다.


6. Circuit 생성

Threshold 적용

Node: |IE(a)|>TN|IE(a)|>T_N

Edge: |IE(e)|>TE|IE(e)|>T_E

만 남긴다.  


결과:

feature
 ↓
feature
 ↓
feature
 ↓
output

형태의 causal graph 획득


7. Subject-Verb Agreement 실험

논문의 가장 중요한 검증 실험.

Task:

The teacher ...
The teachers ...

다음에 is, are 중 선택


4가지 난이도

Task설명
Simple단순 agreement
Within RCrelative clause 내부
Across RCrelative clause 넘어서
Across PPprepositional phrase 넘어서

8. Faithfulness 평가

Circuit만 남기고 나머지 ablating

Faithfulness=m(C)m()m(M)m()Faithfulness=\frac{m(C)-m(\emptyset)}{m(M)-m(\emptyset)}


값이 1이면 Circuit이 원 모델 행동을 완전히 설명


결과

Pythia-70M

약 100개 feature만으로 대부분의 behavior 설명 가능.  


Neuron circuit

동일 수준 설명하려면 약 1500 neuron 필요.  


Gemma-2-2B:

약 500 feature vs 약 50,000 neuron 필요.  


의미

SAE feature가 neuron보다 약 1~2 order of magnitude 더 compact한 causal representation 제공.


9. Completeness 평가

Complement 회로

M-C만 남겼을 때, 성능이 얼마나 남는지 측정.


좋은 circuit이면, M-C 성능이 거의 0이어야 한다.


결과

몇십~몇백 feature 제거만으로

subject-verb agreement 성능이 거의 사라짐.  

즉, Circuit이 실제 causal mechanism을 잡고 있음.


10. Case Study

Relative Clause Agreement

예:

The girl that the teacher sees ...

회로 분석 결과

Pythia와 Gemma 모두 비슷한 구조 발견.  


모듈 1

Noun Number Detector:

girl, girls 감지

모듈 2

RC Boundary Detector:

that 감지

모듈 3

RC End Detector:

sees 위치 감지

모듈 4

Verb Form Discriminator:

has, have 선택

Gemma에서는 추가로

NP Number Tracker

발견

명사구 끝까지 singular/plural 정보 유지.  


이 결과는 Transformer가 단순 attention이 아니라 실제로

Number Tracking + Boundary Detection + Verb Selection

의 compositional circuit을 사용한다는 증거다.


11. SHIFT

논문의 두 번째 핵심 기여.

목표

Spurious Feature 제거


Bias in Bios 사용.

문제 설정:

Professor → 남성
Nurse → 여성

만 학습.

즉, Gender = Profession 완벽 상관관계.


일반적인 debiasing은 balanced dataset 필요.


SHIFT는

  1. Feature circuit 추출
  2. 사람이 feature 해석
  3. Gender feature 제거
  4. 재학습

한다.  


12. SHIFT 결과

Pythia

MethodProfessionGender
Original61.987.4
SHIFT88.554.0
SHIFT+Retrain93.152.0
Oracle93.049.4

Gemma

MethodProfessionGender
Original67.781.9
SHIFT76.051.5
SHIFT+Retrain95.052.4
Oracle95.050.6

핵심 결과

SHIFT+Retrain ≈ Oracle 달성.

즉, 추가 balanced label 없이도 해석 가능한 feature만 제거하여 bias 제거 가능.


13. Unsupervised Circuit Discovery

가장 흥미로운 부분.

저자들은 수동 task 없이 The Pile 전체에서 behavior를 자동 발견한다.  


Step 1

Context clustering

(xi,yi)(x_i,y_i)를 clustering.


발견된 cluster 예:

Cluster 382

1,2,3 → 4
I,II,III → IV
A,B,C → D

Sequence continuation


Cluster 475

want to
need to
allowed to

Infinitive object prediction


Step 2

각 cluster에 대해

Circuit Discovery 수행.


결과

  • succession feature
  • induction feature
  • infinitive-object feature

등을 자동 발견.  


논문의 가장 중요한 의미

이 논문은 Mechanistic Interpretability 관점에서 다음 전환점을 만든다.

Transformer Circuits (2021)

head, neuron 기반

ACDC / EAP (2023~2024)

causal edge 발견

Sparse Feature Circuits (2025)

SAE feature + causal graph + human interpretability 발견

Edge Discovery 수식

이 논문의 Edge Discovery는 사실상 EAP(Edge Attribution Patching) 를 SAE feature graph에 적용한 것입니다.

논문 본문에서는 수식을 Appendix A.1로 보내버렸는데, 수학적으로 전개하면 다음과 같습니다.  


1. Node Attribution 복습

Node a 의 effect는

IE^(m;a)=am(apatchaclean)\widehat{IE}(m;a)=\nabla_a m\cdot(a_{patch}-a_{clean}) 입니다.  

즉, “node 값 변화 × metric gradient” 입니다.


2. Edge는 무엇인가?

Sparse Feature Circuit graph는

feature i
     ↓
feature j

구조를 갖습니다.

여기서 edge는 e=(ij)e=(i\rightarrow j) 입니다.


Transformer 계산을 쓰면

aj=fj(ai,)a_j=f_j(a_i,\cdots) 이고

edge effect는 “i가 j에 전달한 정보가 metric m에 얼마나 기여했는가”입니다.


3. Chain Rule 관점

Node i가 j를 통해 m에 영향을 주는 양은 majajai\frac{\partial m}{\partial a_j}\frac{\partial a_j}{\partial a_i} 입니다.

즉,

feature i
 → feature j
 → output

경로의 기여도입니다.


4. Edge Attribution 수식

논문 Appendix A.1의 핵심은

edge activation을 eije_{ij} 라고 정의하는 것입니다.


Node i의 출력이 aia_i 이고 j로 전달되는 contribution이 eije_{ij} 이면

edge indirect effect는

IE(eij)=m(eijpatch)m(eijclean)IE(e_{ij})=m(e_{ij}^{patch})-m(e_{ij}^{clean}) 입니다.


직접 patching은 비싸므로

1차 Taylor 근사:

IE^(eij)=eijm(eijpatcheijclean)\widehat{IE}(e_{ij})=\nabla_{e_{ij}} m\cdot(e_{ij}^{patch}-e_{ij}^{clean}) 를 사용합니다.

이것이 Edge Attribution Patching(EAP)와 동일합니다.  


5. SAE Circuit에서는 edge를 어떻게 정의하나?

여기가 중요합니다.

기존 EAP:

Head → Head

MLP → Head

Sparse Feature Circuit:

SAE Feature → SAE Feature 입니다.

SAE decoder를 생각하면

feature i가 residual에 더하는 벡터는

fivif_i v_i 입니다.


다음 layer feature j의 activation은

aj=vjTha_j=v_j^T h 형태로 얻어집니다.


따라서, i가 j에 미치는 edge 값은 대략

eij=fi(vjTJvi)e_{ij}=f_i\left(v_j^T J v_i\right) 로 해석할 수 있습니다.

여기서 J는 attention/MLP를 포함한 layer Jacobian입니다.


즉, vjTJviv_j^T J v_i 가 feature i → feature j 연결 강도입니다.


6. 구현 관점

실제로는 Jacobian 전체를 계산하지 않습니다.


논문은

Forward:

aicleana_i^{clean}, aipatcha_i^{patch} 저장


Backward:

ajm\nabla_{a_j}m 계산


그리고 (aipatchaiclean)(a_i^{patch}-a_i^{clean})를 곱합니다.


결국 edge score는

Sij=majajai(aipatchaiclean)\boxed{S_{ij}=\frac{\partial m}{\partial a_j}\,\frac{\partial a_j}{\partial a_i}\,(a_i^{patch}-a_i^{clean})}가 됩니다.


이 식은 사실상

Sij=mai(aipatchaiclean)\boxed{S_{ij}=\frac{\partial m}{\partial a_i}(a_i^{patch}-a_i^{clean})}를 edge별로 분해한 것입니다.


7. EAP 논문과의 관계

BlackboxNLP 2024 EAP 논문에서는

ΔeL=(ecorreclean)TLe\Delta_e L=(e_{corr}-e_{clean})^T\frac{\partial L}{\partial e} 를 사용했습니다.  


Sparse Feature Circuits는 이것을

Attention edge
↓
Feature edge

로 확장한 것이라고 보면 됩니다.


8. EAP-IG 버전

Node Attribution은 IG를 사용했듯이

Edge Attribution도

IE^IG(e)=01em(α)(epatcheclean)dα\widehat{IE}_{IG}(e)=\int_0^1\nabla_e m(\alpha)\cdot(e_{patch}-e_{clean})d\alpha

로 계산할 수 있습니다.


그래서 실제 논문의 pipeline은

Node score = IG

Edge score = IG 기반 edge attribution

입니다.  



게시됨

카테고리

, ,

작성자

댓글

답글 남기기

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