Mechanistic Interpretability
메커니즘 해석 가능성은 신경망을 역공학해 출력의 기반이 되는 특성과 회로를 분석합니다. 주요 방법과 XAI와의 차이를 살펴봅니다.
기계론적 해석 가능성은 학습된 신경망을 사람이 이해할 수 있는 메커니즘으로 역설계하는 연구 분야입니다. 모델이 활성화에서 표현하는 특징과, 특징을 출력으로 변환하는 가중치 및 구성 요소의 연결인 회로를 연구합니다. 대부분의 평가에서는 모델을 예측 결과로 판단하는 블랙박스로 취급하지만, 기계론적 해석 가능성에서는 가중치를 디컴파일할 컴파일된 프로그램처럼 다룹니다. 이 분야는 소규모 비전 모델 연구에서 시작해 대규모 언어 모델(LLM)에 관한 AI 안전성 연구의 핵심 분야로 성장했으며, MIT Technology Review는 이를 2026년 10대 혁신 기술 중 하나로 선정했습니다.
특징, 회로, 중첩 표현#
이 분야는 이미지 분류기를 대상으로 작성된 Distill의 회로 들여다보기: 회로 입문 글에서 설명한 몇 가지 기본 가정에 기반합니다.
- 특징: 입력의 의미 있는 속성에 대응하는 계층 활성화 공간의 방향입니다. 합성곱 신경망(CNN)의 초기 계층에는 곡선 및 모서리 탐지기가 있고, 이후 계층에는 바퀴나 개의 주둥이와 같은 객체 부분에 대한 특징이 있습니다.
- 회로: 알고리즘을 구현하는 가중치로 연결된 특징 그룹입니다. Transformer에서 유도 헤드는 앞서 등장한 현재 토큰의 위치를 찾아 그 뒤에 나온 내용을 복사하는 어텐션 헤드 쌍입니다. 이는 인컨텍스트 학습의 기반이 되는 메커니즘입니다. GPT-2 소형 모델을 대상으로 한 연구에서는 "Mary"와 "John"이 가게에 간 뒤 John이 음료를 건네는 문장을 완성하는 회로를 기능 그룹 7개에 속한 어텐션 헤드 26개로 매핑했습니다.
- 중첩 표현: 모델은 특징을 서로 겹쳐 표현하여 뉴런 수보다 많은 특징을 나타냅니다. 따라서 뉴런 하나가 서로 관련 없는 여러 개념에 반응하는 경우가 많습니다. 이러한 다의성이 개별 뉴런을 분석 단위로 삼기 어렵게 만들었으며, 이 때문에 연구 분야는 딕셔너리 학습으로 전환했습니다.
주요 방법#
연구자들은 후보 특징을 찾는 관찰과 그 특징이 실제로 중요한지 검증하는 개입을 결합합니다.
- 선형 프로빙: 특정 계층에서 개념을 선형적으로 디코딩할 수 있는지 확인하기 위해 활성화에 단순한 분류기를 학습합니다. 프로브는 정보의 존재를 보여주며, 모델이 해당 정보를 사용하는지 확인하려면 개입이 필요합니다.
- 제거 실험과 활성화 패칭: 활성화를 0으로 만들거나 다른 입력에서 가져온 값으로 바꾼 뒤 출력이 어떻게 달라지는지 측정합니다. 이러한 인과 테스트를 통해 특정 동작을 실제로 계산하는 구성 요소와 그 동작에 단순히 상관관계가 있는 구성 요소를 구분합니다.
- 희소 오토인코더(SAE): 계층의 활성화를 훨씬 더 큰 희소 활성 특징 집합으로 분해하여 중첩 표현을 해소하는 네트워크입니다. Anthropic은 단일 의미 표현의 확장 연구를 통해 Claude 3 Sonnet에서 수백만 개의 특징을 추출했습니다. 여기에는 금문교에 해당하는 특징도 포함됩니다. 이 특징의 값을 높게 고정하자 모델은 자신을 다리라고 묘사했습니다.
- 어트리뷰션 그래프: Anthropic이 2025년에 수행한 Claude 3.5 Haiku의 회로 추적 연구는 모델의 MLP 계층을 해석 가능한 근사 모델로 대체하고 특징 간 경로를 추적했습니다. 이 연구는 모델이 "댈러스가 있는 주의 주도"에서 중간 단계인 "텍사스"를 거쳐 "오스틴"을 도출하고, 운율이 맞는 단어로 끝나는 시 구절을 쓰기 전에 그 단어를 선택하는 과정을 보여주었습니다.
- 조향: 추론 중에 특징 방향을 더하거나 빼서 동작을 바꾸는 기법으로, 조향 벡터와 표현 공학의 기반입니다.
일반적인 분석에서는 이러한 방법을 번갈아 사용합니다.
비전 모델의 채널 제거 실험#
제거 실험은 가장 간단하게 수행할 수 있는 인과 테스트입니다. 아래 코드는 torchvision에서 사전 학습된 ResNet-18을 불러오고, PyTorch 순전파 후크를 사용해 중간 계층의 특징 맵 채널 256개를 차례대로 0으로 만든 다음, 모델의 최상위 클래스 로짓이 얼마나 감소하는지 기록합니다.
import urllib.request
import torch
from PIL import Image
from torchvision.models import ResNet18_Weights, resnet18
weights = ResNet18_Weights.DEFAULT
model = resnet18(weights=weights).eval()
image = Image.open(urllib.request.urlopen("https://ultralytics.com/images/bus.jpg"))
x = weights.transforms()(image).unsqueeze(0)
with torch.no_grad():
logits = model(x)
top = logits.argmax().item()
drops = torch.zeros(256)
for c in range(256): # zero one layer3 channel at a time and record how far the top-class logit falls
handle = model.layer3.register_forward_hook(lambda m, i, out: out.index_fill(1, torch.tensor([c]), 0))
drops[c] = logits[0, top] - model(x)[0, top]
handle.remove()
values, channels = drops.topk(3)
print(f"{weights.meta['categories'][top]}: logit {logits[0, top]:.2f}, median drop {drops.median():.3f}")
print(f"largest drops: channels {channels.tolist()} -> {values.round(decimals=2).tolist()}")모델은 로짓 13.42로 "미니버스"를 예측합니다. 일반적인 채널을 제거해도 로짓은 거의 변하지 않지만(중앙값 감소량 -0.002), 채널 62만 제거하면 로짓이 1.80 감소하고 채널 70과 155를 제거하면 각각 약 1.15 감소합니다. 따라서 소수의 채널이 증거의 상당 부분을 전달합니다. 이 채널을 시작점으로 삼아 각 채널이 무엇을 감지하는지 시각화하고, 어떤 이전 특징이 해당 채널에 입력되는지 추적할 수 있습니다.
기계론적 해석 가능성과 설명 가능한 AI 비교#
설명 가능한 AI(XAI)는 모델의 의사 결정을 이해할 수 있도록 하는 광범위한 분야이며, 그중 상당수는 기여도 분석입니다. 살리언시 맵과 클래스 활성화 맵은 예측에 영향을 준 입력 픽셀을 강조 표시합니다. Ultralytics YOLO26의 predict 모드에서 visualize=True를 설정하면 예측마다 히트맵이 함께 저장되어 어떤 픽셀이 예측 클래스 점수를 높였는지 보여줍니다. 기여도 분석은 모델이 어디에 주목했는지 답하지만, 기계론적 해석 가능성은 어떤 내부 특징과 회로가 해당 픽셀을 점수로 변환했는지 묻습니다. 개념 병목 모델은 예측이 사람이 이름을 붙인 개념을 거치도록 강제하여 아키텍처에 해석 가능성을 통합하는 세 번째 접근 방식입니다.
응용 분야와 한계#
기계론적 도구는 출시 전에 원치 않는 동작을 보이는지 LLM을 점검하는 데 사용됩니다. 예를 들어 기만이나 아첨과 연관된 활성화 방향을 모니터링합니다. 또한 지름길 학습에 의존하는 비전 모델을 디버깅하는 데도 쓰입니다. 예를 들어 피부 병변 분류기가 피부과 의사가 의심 병변 옆에 놓는 자가 악성을 나타내는 신호라고 학습할 수 있습니다. 잘못된 근거로 테스트 세트에서 높은 점수를 얻을 수 있는 의료 영상 분석에서는 이러한 점검이 중요합니다. TransformerLens와 같은 공개 도구를 사용하면 Transformer 모델에서 후크, 캐싱, 패칭을 일상적으로 수행할 수 있습니다.
이 분야의 주요 한계는 분석 범위입니다. SAE는 활성화를 완벽하게 재구성하지 못하므로 모든 계산의 일부는 설명되지 않은 채 남습니다. 어트리뷰션 그래프에 사용되는 대체 모델도 특정 프롬프트에서 최첨단 모델 동작의 일부만 포착합니다. 각 회로를 검증하려면 여전히 상당한 사람의 노력이 필요하므로 대규모 모델을 완전히 설명하기는 어렵습니다.










