검색
← 모듈 로드맵

신경망 속 들여다보기: 기울기 · 통합 기울기 · 탐침 · 메커니즘 해석

강의 · 준전문가 · KAITABASE 정리

원제 · Inside Neural Networks: Saliency, Integrated Gradients, Probing, Mechanistic Interpretability (Distill Feature Visualization · Transformer Circuits 참고)

saliency · 통합 기울기 완비성 손계산, 탐침의 함정, 중첩과 희소 오토인코더 입문

먼저 알아야 할 것

SHAP · 귀속 개념역전파 · 입력에 대한 기울기적분의 뜻(넓이)트랜스포머 MLP 층(선택)

다루는 내용

신경망 내부를 미분과 활성값으로 설명하는 방법을 다룹니다. 기울기 saliency의 포화 문제, 통합 기울기의 정의와 완비성을 손으로 적분해 확인하고, 특징 시각화와 선형 탐침 · 통제 과제를 정리합니다. 마지막으로 다의적 뉴런을 중첩으로 설명하고 희소 오토인코더가 특징을 풀어내는 원리를 소개합니다.

해설

신경망 속 들여다보기: 기울기 · 통합 기울기 · 탐침 · 메커니즘 해석

앞 수업의 SHAP · LIME은 모델을 블랙박스로 두고 바깥에서 설명했습니다. 신경망은 미분할 수 있고 중간 활성값도 꺼내 볼 수 있으니, 안쪽 에서 설명할 수도 있습니다. 이 수업은 기울기 기반 중요도(saliency), 통합 기울기(Integrated Gradients), 특징 시각화, 탐침(probing), 그리고 뉴런 · 특징 · 회로를 직접 해부하는 메커니즘 해석(mechanistic interpretability)의 첫걸음인 중첩(superposition)과 희소 오토인코더를 손계산으로 익힙니다.

항목내용
참고 출처Distill 「Feature Visualization」(2017) · 「Zoom In: An Introduction to Circuits」(2020), Sundararajan 외 「Axiomatic Attribution for Deep Networks」(ICML 2017), Anthropic 「Toy Models of Superposition」(2022) · 「Towards Monosemanticity」(2023)
트랙 · 수준해석 가능성 · 중급(마지막 절은 심화)
이 수업이 다루는 범위기울기 saliency, 기울기 × 입력, 포화 문제, 통합 기울기와 완비성, 기준 입력, 특징 시각화, 선형 탐침과 통제 과제, 특징 · 회로, 다의적 뉴런 · 중첩, 희소 오토인코더

들어가기 전에

한눈에 보기

  • 입력에 대한 기울기로 "어느 픽셀 · 토큰이 예측에 민감한지"를 보는 법과 그 약점(포화)을 압니다.
  • 통합 기울기를 직접 적분해 보고, 기여의 합이 F(x)−F(x′)F(x)-F(x') 와 같아지는 완비성 을 확인합니다.
  • 특징 시각화와 탐침이 각각 무엇을 묻는지, 탐침 정확도를 과신하면 안 되는 이유를 압니다.
  • 뉴런 하나가 여러 개념에 반응하는 이유를 "차원보다 많은 특징을 겹쳐 담는 중첩"으로 설명합니다.
  • 희소 오토인코더가 중첩된 활성을 해석 가능한 특징으로 풀어내는 원리를 압니다.

1. 기울기 saliency: 어디를 조금 바꾸면 예측이 크게 변하나

직관(해설용 비유). 요리의 맛(예측)이 재료(입력) 중 무엇에 민감한지 알고 싶으면, 재료를 하나씩 아주 조금 더 넣어 보고 맛이 얼마나 변하는지 보면 됩니다. 그 "민감도"가 기울기입니다.

단계. Simonyan · Vedaldi · Zisserman(2013)의 클래스 saliency map은 다음과 같습니다.

  1. 이미지를 넣고 정답 클래스 점수 Sc(x)S_c(x) 를 계산합니다.
  2. 역전파로 입력 픽셀에 대한 기울기 ∂Sc/∂x\partial S_c/\partial x 를 구합니다.
  3. 픽셀마다 기울기의 절댓값(색 채널 중 최댓값)을 그림으로 그립니다.
Mij=max⁡c′ ∣∂Sc∂xijc′∣M_{ij} = \max_{c'}\ \left|\frac{\partial S_c}{\partial x_{ij c'}}\right|
기호뜻
Sc(x)S_c(x)클래스 cc 의 점수(소프트맥스 이전 값)
xijc′x_{ijc'}위치 (i,j)(i,j), 색 채널 c′c' 의 픽셀 값
MijM_{ij}위치 (i,j)(i,j) 의 saliency

선형 모델에서 "계수 × 특징 값"으로 기여를 읽던 습관을 신경망으로 옮긴 것이 기울기 × 입력 입니다. 기울기가 계수 역할을 합니다.

왜 부족한가: 포화(saturation). IG 논문이 든 예를 따라가 봅니다. f(x)=1−ReLU(1−x)f(x) = 1-\mathrm{ReLU}(1-x) 라는 한 변수 신경망에서 기준 x′=0x'=0, 입력 x=2x=2 이면 출력은 f(0)=0f(0)=0 에서 f(2)=1f(2)=1 로 바뀝니다. 그런데 x≥1x\ge1 에서 함수가 평평해져 x=2x=2 에서의 기울기는 0입니다. 기울기만 보면 "이 입력은 아무 기여도 없다"고 말하게 됩니다. 신경망은 시그모이드 · ReLU 때문에 이런 평평한 구간이 흔합니다.

2. 통합 기울기(Integrated Gradients)

직관. 한 점의 기울기만 보지 말고, 기준 입력(아무 정보도 없는 상태)에서 실제 입력까지 직선으로 걸어가며 지나는 모든 점의 기울기를 모읍니다. 산을 오른 높이는 꼭대기의 경사가 아니라 오르는 길 내내의 경사를 더한 값인 것과 같습니다.

단계.

  1. 기준 입력 x′x' 를 고릅니다. 논문은 이미지에 검은 이미지, 텍스트에 0 임베딩 벡터를 권합니다.
  2. x′x' 에서 xx 까지 직선 위의 점 x′+α(x−x′)x' + \alpha(x-x'), α∈[0,1]\alpha\in[0,1] 에서 기울기를 구합니다.
  3. 기울기를 α\alpha 에 대해 적분하고 (xi−xi′)(x_i - x'_i) 를 곱합니다.
IGi(x)=(xi−xi′)×∫01∂F(x′+α(x−x′))∂xi dα\mathrm{IG}_i(x) = (x_i - x'_i)\times\int_0^1 \frac{\partial F\big(x' + \alpha(x-x')\big)}{\partial x_i}\,d\alpha
기호뜻
FF신경망(출력 하나)
xx, x′x'실제 입력과 기준 입력
α\alpha기준에서 입력까지 얼마나 왔는지(0~1)
IGi\mathrm{IG}_i특징 ii 의 귀속값

완비성(completeness). 미적분의 기본 정리(경로 적분판) 덕분에

∑iIGi(x)=F(x)−F(x′)\sum_i \mathrm{IG}_i(x) = F(x) - F(x')

가 성립합니다. 앞 수업 SHAP의 효율성과 같은 "장부가 맞는" 성질입니다. 논문은 귀속 방법이 지켜야 할 두 공리로 민감성(Sensitivity)(입력과 기준이 한 특징만 다르고 예측이 다르면 그 특징의 귀속은 0이 아니어야 함)과 구현 불변성(Implementation Invariance)(입출력이 똑같은 두 신경망은 내부 구현이 달라도 같은 귀속을 받아야 함)을 제시하고, 통합 기울기가 둘 다 만족함을 보입니다.

숫자로 해 보기 1(해설용, 포화 예). f(x)=1−ReLU(1−x)f(x)=1-\mathrm{ReLU}(1-x), x′=0x'=0, x=2x=2. 경로 위 점은 2α2\alpha 이고, 2α<12\alpha<1 즉 α<0.5\alpha<0.5 에서만 기울기가 1입니다.

IG=(2−0)×∫00.51 dα=2×0.5=1=f(2)−f(0)\mathrm{IG} = (2-0)\times\int_0^{0.5} 1\,d\alpha = 2\times0.5 = 1 = f(2)-f(0)

기울기는 0이라 했지만 통합 기울기는 변화량 1을 정확히 이 입력에 돌려줍니다.

숫자로 해 보기 2(해설용, 파이썬으로 검산). F(x1,x2)=x1x2F(x_1,x_2) = x_1x_2, x=(2,3)x=(2,3), x′=(0,0)x'=(0,0).

  • 경로 위에서 ∂F/∂x1=x2=3α\partial F/\partial x_1 = x_2 = 3\alpha → ∫013α dα=1.5\int_0^1 3\alpha\,d\alpha = 1.5 → IG1=2×1.5=3\mathrm{IG}_1 = 2\times1.5 = 3
  • 같은 방법으로 IG2=3×∫012α dα=3\mathrm{IG}_2 = 3\times\int_0^1 2\alpha\,d\alpha = 3
  • 합 6=F(2,3)−F(0,0)6 = F(2,3) - F(0,0). 완비성이 맞습니다.

비교로 기울기 × 입력은 x1⋅x2=6x_1\cdot x_2 = 6, x2⋅x1=6x_2\cdot x_1 = 6 으로 합이 12가 되어 실제 변화 6과 맞지 않습니다.

실제 계산. 적분은 mm 개 점의 합(리만 합)으로 근사합니다: IGi≈(xi−xi′)∑k=1m∂F(x′+km(x−x′))∂xi⋅1m\mathrm{IG}_i \approx (x_i-x'_i)\sum_{k=1}^{m}\frac{\partial F(x'+\frac{k}{m}(x-x'))}{\partial x_i}\cdot\frac1m. 위 예에서 m=4m=4 면 합이 7.5, m=100m=100 이면 6.06으로 6에 다가갑니다. 논문은 20~300번 정도의 기울기 계산으로 충분하다고 적습니다. 완비성으로 근사가 충분한지 점검할 수 있습니다(합이 F(x)−F(x′)F(x)-F(x') 에 가까운지).

왜 기준 입력이 중요한가. 귀속은 늘 "기준과 비교해서"입니다. 논문은 기준의 예측이 0에 가깝도록 고르라고 권합니다. 검은 이미지 기준이면 "검은색과 다른 픽셀"만 귀속을 받으므로, 원래 검은 물체는 중요하게 나오지 않을 수 있습니다.

3. 특징 시각화: 뉴런이 무엇을 좋아하나

직관. "이 뉴런을 가장 세게 켜는 그림"을 직접 만들어 봅니다. 입력 대신 이미지를 학습 하는 셈입니다.

단계(Olah · Mordvintsev · Schubert, Distill 2017).

  1. 잡음 이미지에서 시작합니다.
  2. 고른 뉴런 · 채널 · 층 · 클래스 로짓의 활성이 커지도록, 이미지에 대한 기울기로 이미지를 조금씩 고칩니다(경사 상승).
  3. 그냥 하면 적대적 예제 같은 고주파 잡음이 생기므로 규제를 넣습니다. 글은 주파수 벌점(흐리기 · 총변동), 변환 강건성(무작위로 조금 이동 · 회전 · 크기 조절), 학습된 사전 분포, 그리고 무상관화한 푸리에 공간에서 최적화하는 전처리(preconditioning)를 소개합니다.
x⋆=arg⁡max⁡x hℓ,k(x)−λ R(x)x^\star = \arg\max_x\ h_{\ell,k}(x) - \lambda\,R(x)
기호뜻
hℓ,k(x)h_{\ell,k}(x)층 ℓ\ell 의 뉴런(채널) kk 의 활성
R(x)R(x)고주파 잡음을 막는 규제
λ\lambda규제 세기

이 글은 ImageNet으로 학습한 GoogLeNet을 썼습니다. 데이터셋 예시(실제 이미지 중 그 뉴런을 가장 세게 켜는 것)는 상관된 다른 요소가 섞여 있지만, 최적화는 무엇이 뉴런을 일으키는지 를 분리해 보여 준다는 것이 글의 주장입니다. 또 다양성 항을 넣어 여러 장을 만들면 한 뉴런이 여러 다른 모습(예: 여러 종류의 공)에 반응한다는 것이 드러납니다.

4. 탐침(probing): 이 층은 무엇을 '알고' 있나

직관. 학생이 어떤 개념을 이해했는지 보려면 짧은 퀴즈를 냅니다. 탐침은 중간 층의 활성을 고정해 두고, 그 위에 작은 분류기(대개 선형) 를 따로 학습해 "이 층의 표현으로 품사 · 감정 · 위치 같은 정보를 읽어 낼 수 있나"를 봅니다. Alain · Bengio(2016)가 선형 분류기 탐침을 제안했습니다.

단계.

  1. 학습이 끝난 모델의 층 ℓ\ell 에서 활성 hℓ(x)h_\ell(x) 를 모읍니다.
  2. 라벨(예: 품사)과 짝지어 선형 분류기 y^=softmax(Whℓ(x))\hat y = \mathrm{softmax}(W h_\ell(x)) 를 학습합니다. 원래 모델은 고치지 않습니다.
  3. 층마다 탐침 정확도를 비교합니다.

주의: 탐침이 외워 버리는 경우. Hewitt · Liang(EMNLP 2019)은 단어마다 무작위 라벨을 붙인 통제 과제(control task) 를 함께 풀게 하자고 제안했습니다. 무작위 라벨은 표현에 들어 있을 리 없으니, 그것까지 잘 맞히는 탐침은 표현이 아니라 자기 용량으로 외운 것입니다. 실제 과제 정확도에서 통제 과제 정확도를 뺀 선택성(selectivity) 이 높아야 "표현에 정보가 있다"고 말할 수 있습니다.

숫자로 해 보기(해설용). 품사 탐침 정확도 97%, 통제 과제 정확도 92%면 선택성은 5%p입니다. 더 작은 탐침으로 바꿔 품사 95%, 통제 60%가 되면 선택성 35%p로, 정확도는 조금 낮아도 표현에 대해 더 믿을 만한 증거입니다.

그리고 탐침이 읽어 낼 수 있다고 해서 모델이 실제로 그 정보를 쓴다 는 뜻은 아닙니다. 쓰는지 보려면 그 방향을 지우거나 바꿔 출력이 변하는지 개입 실험을 해야 합니다.

5. 메커니즘 해석: 특징 · 회로 · 중첩

특징과 회로. Distill의 「Zoom In」(Olah 외, 2020)은 세 가지 '추측적 주장'을 내놓았습니다. ① 신경망 안에는 의미 있는 특징(예: 곡선 검출기)이 있고, ② 특징들은 가중치로 이어진 회로 를 이루며, ③ 비슷한 특징 · 회로가 여러 모델에 보편적으로 나타난다는 것입니다. 같은 글은 여러 개념에 함께 반응하는 다의적 뉴런(polysemantic neuron) 도 보고합니다.

중첩(superposition). 왜 뉴런이 다의적일까요? Anthropic의 「Toy Models of Superposition」(Elhage 외, 2022)은 작은 모델로 답을 보입니다. nn 개 특징을 그보다 적은 mm 차원에 눌러 담았다가 복원하는 모델입니다.

h=Wx,x′=ReLU(W⊤Wx+b),L=∑x∑iIi (xi−xi′)2h = Wx,\qquad x' = \mathrm{ReLU}(W^\top W x + b),\qquad L = \sum_x\sum_i I_i\,(x_i - x'_i)^2
기호뜻
x∈Rnx\in\mathbb R^n특징 벡터. 각 특징은 확률 SiS_i 로 0(희소성)
W∈Rm×nW\in\mathbb R^{m\times n}nn 개 특징을 mm 차원으로 보내는 행렬(m<nm<n)
W⊤WW^\top W특징끼리의 겹침. 대각선 밖이 0이 아니면 간섭
IiI_i특징 ii 의 중요도

논문의 결과는 이렇습니다. 특징이 자주 켜지는(밀집) 경우 모델은 가장 중요한 mm 개만 담습니다. 특징이 희소 해지면 차원보다 많은 특징을 서로 직교하지 않는 방향에 겹쳐 담기 시작하고(중첩), 처음에는 두 특징을 정반대 방향에 두는 '대척점 쌍(antipodal pair)'으로, 더 희소해지면 오각형 · 사면체 같은 기하 구조로 배치합니다. 이 전환이 상전이처럼 갑자기 일어난다고 보고합니다.

숫자로 해 보기(해설용, 파이썬으로 검산). 특징 3개를 2차원에 120°씩 벌려 담습니다(WW 의 열이 단위 벡터, 편향 b=0b=0). 그러면 W⊤WW^\top W 의 대각선은 1, 나머지는 cos⁡120°=−0.5\cos120° = -0.5 입니다.

  • 특징 1만 켜짐 x=(1,0,0)x=(1,0,0): W⊤Wx=(1,−0.5,−0.5)W^\top Wx = (1, -0.5, -0.5) → ReLU → (1,0,0)(1,0,0). 음수 간섭을 ReLU가 지워 완벽히 복원 합니다.
  • 특징 1 · 2가 함께 켜짐 x=(1,1,0)x=(1,1,0): (0.5,0.5,−1)(0.5, 0.5, -1) → ReLU → (0.5,0.5,0)(0.5, 0.5, 0). 둘 다 절반으로 줄어 간섭 오차 가 생깁니다.

특징이 드물게, 한 번에 하나씩만 켜진다면 차원보다 많은 특징을 담아도 손해가 거의 없습니다. 실제 개념(“DNA 서열”, “법률 문장” 등)은 대부분 드물게 나타나므로 모델이 중첩을 택하고, 그 결과 뉴런 하나가 여러 개념을 나눠 맡게 됩니다.

희소 오토인코더(SAE)로 풀어내기. 「Towards Monosemanticity」(Bricken 외, 2023)는 512개 뉴런짜리 MLP 층을 가진 1층 트랜스포머의 MLP 활성 80억 개로 희소 오토인코더를 학습했습니다. 활성을 더 많은 특징(1배 512개 ~ 256배 131,072개)으로 펼치되, 한 번에 소수만 켜지도록 L1 벌점을 줍니다.

f=ReLU(We(x−bd)+be),x^=Wdf+bd,L=∥x−x^∥22+λ∥f∥1f = \mathrm{ReLU}\big(W_e(x - b_d) + b_e\big),\qquad \hat x = W_d f + b_d,\qquad L = \|x-\hat x\|_2^2 + \lambda\|f\|_1

이 식은 논문의 구조를 단순화해 옮긴 것입니다. 복원 오차(MSE)와 L1 벌점을 함께 줄이면 각 특징이 한 가지 개념에만 반응하는 단일 의미(monosemantic) 쪽으로 가는 경향이 생깁니다. 논문은 4,096개 특징을 학습한 실행(A/1)을 자세히 분석했고, Anthropic 발표문은 DNA 서열 · 법률 문장 · HTTP 요청 · 히브리어 문장 · 영양 성분 표시 같은 특징을 예로 듭니다. 또 사전 크기를 키우면 한 특징(예: base64)이 더 세분된 여러 특징으로 쪼개지는 '특징 분할'도 보고합니다.

mermaid
flowchart LR
  A[학습된 신경망] --> B{무엇을 알고 싶나}
  B -->|이 입력의 어디가 중요| C[기울기 saliency]
  C --> D[통합 기울기<br/>기준→입력 경로 적분]
  B -->|뉴런이 좋아하는 것| E[특징 시각화<br/>입력 최적화]
  B -->|층에 담긴 정보| F[선형 탐침<br/>+ 통제 과제]
  B -->|계산의 부품| G[희소 오토인코더로<br/>특징 분해]
  G --> H[특징 간 회로 추적<br/>· 개입 실험]
  D --> I[가설 → 검증]
  E --> I
  F --> I
  H --> I

6. 이 방법들의 한계

  • 그럴듯함 ≠ 충실함. 보기 좋은 saliency 그림이 실제 모델 계산을 충실히 반영한다는 보장은 없습니다. 귀속 결과는 가설로 받아들이고, 해당 부분을 지우거나 바꿔 예측이 변하는지로 확인합니다.
  • 기준 입력 · 경로 선택 에 따라 결과가 달라집니다.
  • 장난감 모델의 일반화. 중첩 논문도 오각형 같은 기하 구조가 장난감 모델 특유의 현상일 수 있다고 스스로 경고합니다.
  • 규모. 큰 모델 전체 회로를 사람이 다 읽는 것은 아직 어렵고, 활발히 연구되는 분야입니다.

연습 문제

  1. F(x1,x2)=2x1+x22F(x_1,x_2) = 2x_1 + x_2^2, x=(1,2)x=(1,2), x′=(0,0)x'=(0,0) 의 통합 기울기를 구하고 완비성을 확인하세요.
    • 풀이: ∂F/∂x1=2\partial F/\partial x_1 = 2 → IG1=1×2=2\mathrm{IG}_1 = 1\times2 = 2. ∂F/∂x2=2x2=4α\partial F/\partial x_2 = 2x_2 = 4\alpha → ∫014α dα=2\int_0^1 4\alpha\,d\alpha = 2 → IG2=2×2=4\mathrm{IG}_2 = 2\times2 = 4. 합 6=F(1,2)−F(0,0)=2+46 = F(1,2) - F(0,0) = 2+4 입니다.
  2. 본문 3특징 · 2차원 예에서 x=(0.8,0,0)x=(0.8, 0, 0) 이면 복원값은?
    • 풀이: W⊤Wx=(0.8,−0.4,−0.4)W^\top W x = (0.8, -0.4, -0.4) → ReLU → (0.8,0,0)(0.8, 0, 0). 한 특징만 켜지면 정확히 복원됩니다.
  3. 탐침 A는 실제 과제 90% · 통제 과제 85%, 탐침 B는 85% · 50%입니다. 표현에 정보가 있다는 더 강한 증거는?
    • 풀이: 선택성이 A는 5%p, B는 35%p라 B입니다.
  4. 1배 확장 SAE의 특징 수가 512개라면 256배 확장은?
    • 풀이: 512×256=131,072512\times256 = 131{,}072 개입니다.

스스로 점검

  1. 기울기만으로 귀속을 하면 어떤 문제가 생기나요?
    • 답: 출력이 포화된 평평한 구간에서는 입력이 출력 변화에 큰 몫을 했어도 기울기가 0이라 기여가 없다고 나옵니다(민감성 위반).
  2. 통합 기울기의 완비성은 무엇이고, 실무에서 어떻게 쓰나요?
    • 답: 모든 특징의 귀속 합이 F(x)−F(x′)F(x)-F(x') 와 같다는 성질입니다. 리만 합의 단계 수가 충분한지 점검하는 데 씁니다.
  3. 뉴런 하나가 여러 개념에 반응하는 이유를 중첩으로 설명해 보세요.
    • 답: 개념(특징)이 차원(뉴런) 수보다 많고 대부분 드물게 켜지면, 모델은 특징들을 서로 겹치는 방향에 담아 더 많이 저장합니다. 그래서 뉴런 축 하나에 여러 특징이 걸쳐 보입니다.

용어 정리

용어쉬운 뜻
saliency map입력 각 위치에 대한 기울기 크기를 그린 그림
포화입력이 변해도 출력이 거의 안 변하는 평평한 구간
통합 기울기(IG)기준 입력에서 실제 입력까지 경로의 기울기를 적분한 귀속
완비성귀속의 합 = 출력 차이
기준 입력(baseline)"정보 없음"을 나타내는 비교 기준 입력
특징 시각화뉴런을 가장 세게 켜는 입력을 최적화로 만드는 방법
탐침(probe)중간 표현에서 정보를 읽어 내는 작은 분류기
통제 과제 · 선택성무작위 라벨 과제와, 실제 과제와의 정확도 차이
다의적 뉴런서로 관계없는 여러 개념에 반응하는 뉴런
중첩(superposition)차원보다 많은 특징을 겹친 방향에 담는 현상
희소 오토인코더(SAE)활성을 소수만 켜지는 많은 특징으로 펼쳐 복원하는 모델

더 깊이 보려면

다음에 볼 것

라이선스

본문은 KAITABASE 자체 해설입니다. Distill 글의 본문 · 도표는 CC BY 4.0입니다. 함수 · 탐침 정확도 숫자는 이 수업을 위해 만든 해설용 예이며, 통합 기울기와 중첩 예의 계산은 파이썬으로 검산했습니다. 희소 오토인코더 식은 원문 구조를 단순화한 것입니다.

출처

AI 원리부터 이해하기 · 해석 가능성 모듈

해석 가능성 모듈 학습

이 글은 해석 가능성 모듈의 학습 자료입니다. 전체 2개 자료 중 2번째입니다.

AI 기초 과정은 현재 진도 저장을 지원하지 않습니다.

출처·원문

원문 보기

요약만

본문 자체 작성 · 참고 자료 Distill Feature Visualization(CC BY 4.0) · Transformer Circuits Thread