00:00:00

Share Your Feedback 🏝️

SAE | Anthropic - Towards Monosemanticity*

SAE | Anthropic - Towards Monosemanticity*

MinWoo(Daniel) Park | Tech Blog

Read more
Previous: Hallucinations with High Accuracy and Low Cost Next: Anthropic - Toy Model Superposition*

SAE | Anthropic - Towards Monosemanticity*

  • Related Project: Private
  • Category: Paper Review
  • Date: 2024-05-23

Towards Monosemanticity: Decomposing Language Models With Dictionary Learning

  • url: https://transformer-circuits.pub/2023/monosemantic-features/index.html
  • abstract: Mechanistic interpretability seeks to understand neural networks by breaking them into components that are more easily understood than the whole. By understanding the function of each component, and how they interact, we hope to be able to reason about the behavior of the entire network. The first step in that program is to identify the correct components to analyze.

[포스트 원본에 관련 참고자료 多]


Contents

TL;DR


  • 희소 오토인코더 사용
  • 단일 레이어 트랜스포머에서의 설명 가능한 feature 추출
  • 다의미적 뉴런의 정확한 식별 및 네트워크 동작 분석
  • Vision 모델 Inception-v1의 사례 연구를 통한 접근 방식 적용
  • 네트워크 안전성 및 특성 이해의 중요성 강조

이 논문은 트랜스포머 모델의 MLP 레이어 활성화를 해석 가능하게 분해하는 것을 목표로 하며, 주로 SAE(Sparse AutoEncoder)를 사용하여 데이터 포인트에서 중요한 feature들을 추출합니다. 뉴런보다 많은 독립적인 feature들을 신경망이 표현할 수 있다는 superposition 가설을 바탕으로, feature들은 뉴런들의 선형 조합으로 표현됩니다. 이 방법은 특히 feature의 sparsity를 활용하여 데이터의 복잡성을 줄이면서 정보 손실을 최소화하고자 합니다. 결과적으로, 이 연구는 신경망의 복잡한 동작을 보다 명확하게 이해하고, 네트워크 내에서 상호작용하는 복잡한 동작을 구현하는 데 기여할 수 있는 새로운 방법을 제시합니다.

희소 오토인코더를 사용하여 단일 레이어 트랜스포머에서 설명 가능한 feature 추출

태스크 정의

  • 많은 뉴런이 다의미적(polysemantic)이므로 서로 관련이 없어 보이는 입력의 혼합에 반응하기 때문에 네트워크 동작 인퍼런스를 위해서는 분석할 올바른 구성 요소를 먼저 식별해야 하지만, 여러 레이어의 간섭 및 중첩 그리고 수학적 미분으로 구성되는 네트워크 특성상 딥러닝의 기본적인 계산 단위인 뉴런 자체는 휴먼이 이해할 수 있는 자연스러운 단위가 아닌 것으로 알려져있습니다.
  • Toy model 등 선행 연구를 기반으로 자연어 처리에서 transformers의 각 구성 요소의 feature와 상호 작용 방식을 이해함으로써 전체 네트워크의 동작을 인퍼런스하고자 하였습니다.
  • 이는 안전성과 특성을 이해하기 위해 중요하다고 설명하고 있습니다.

분석대상

  • Vision 모델인 Inception-v1 에서는 단일 뉴런이 고양이 얼굴과 자동차 앞면을 대상으로 한 반면[1], 이 논문에서 Anthropic은 (학술 인용, 영어 대화, HTTP 요청 및 텍스트의 혼합)에 대한 응답을 대상을 분석대상으로 특정합니다.

Section 1

  • SAE(Saparse AutoEncoder)를 이용한 명료한 feature 추출
  • 트랜스포머 MLP 활성화 해석을 위한 feature 분해
  • feature의 유니버설리티 및 기능적 특정성 검증

  • 문제 설정 및 연구 동기

    본 논문은 신경망의 기계적 해석 가능성을 탐구하는 데에 중점을 두고 있다. 특히, 다양한 입력에 대응하여 활성화되는 신경망 내의 다기능 뉴런(polysemantic neurons)의 문제를 다룬다. 이 연구는 트랜스포머 모델의 MLP 레이어 활성화를 feature로 분해하고자 하는 목표를 가지고 있다. feature의 sparse한 집합을 찾는 것이 주된 해결책으로 제시되며, 이를 위해 SAE 기법을 사용한다.

  • 배경 이론 및 선행 연구

    먼저, super-postion(superposition) 가설을 소개한다. 이는 뉴런보다 더 많은 독립적인 feature을 신경망이 표현할 수 있다는 이론이다. feature들은 뉴런들의 선형 조합으로 표현되며, 이 feature들의 집합은 신경망 활성화의 초과완전한 선형 기저(overcomplete linear basis)를 형성한다고 한다. 이런 배경 하에, 트랜스포머 모델의 MLP 레이어를 해석 가능한 방식으로 분해하는 것이 이 논문의 주된 연구 목적이다.

  • 방법: SAE를 이용한 feature 학습

    본 논문에서는 8 billion data points를 이용해 학습된 모델로부터 SAE를 통해 feature을 추출한다. 사용된 오토인코더는 입력에 편향을 적용하고, ReLU 활성화 함수를 가진 선형 계층을 포함한다. 추출된 feature은 MLP 활성화를 다시 구성하는데 사용되며, 각 feature은 데이터 포인트에 따라 활성화 또는 비활성화된다.

    \[x_j \approx b + \sum_{i} f_i(x_j) d_i\]

    위 식에서 $x_j$는 데이터 포인트 $j$의 활성화 벡터, $f_i(x_j)$는 feature $i$의 활성화, $d_i$는 활성화 공간에서의 feature $i$의 방향, $b$는 편향을 나타낸다.

    • Super-postion과 feature의 sparse 표현

      Super-postion 가설은 신경망이 뉴런의 수보다 많은 독립적인 feature을 표현할 수 있다고 언급합니다. 각 feature은 뉴런들의 선형 조합으로 표현되며, 이는 다음과 같은 수식으로 모델링됩니다.

      \[\mathbf{x}_j \approx \mathbf{b} + \sum_{i} f_i(\mathbf{x}_j) \mathbf{d}_i\]

      위 식에서 \(\mathbf{x}_j\)는 데이터 포인트 \(j\)의 활성화 벡터, \(f_i(\mathbf{x}_j)\)는 feature \(i\)의 활성화 정도, \(\mathbf{d}_i\)는 feature \(i\)의 방향을 나타내는 단위 벡터, \(\mathbf{b}\)는 편향입니다. 이 모델은 데이터의 복잡성을 간소화하면서도 정보의 손실을 최소화하는 방식으로 feature을 추출하고자 합니다.

    • SAE의 역할

      SAE는 입력 데이터를 저차원 feature 공간으로 압축(인코딩)하고, 이를 다시 원래의 고차원 공간으로 복원(디코딩)하는 과정을 통해 데이터의 feature을 학습합니다. SAE의 목적은 데이터의 중요한 feature을 적은 수의 활성화된 feature들로 표현하는 것입니다. 이를 수학적으로 표현하면 다음과 같습니다.

      \[\mathbf{f}_i(\mathbf{x}) = \text{ReLU}(\mathbf{W}_e (\mathbf{x} - \mathbf{b}_d) + \mathbf{b}_e)_i\]

      위 식에서 \(\mathbf{W}_e\)는 인코더의 가중치 행렬, \(\mathbf{b}_d\)와 \(\mathbf{b}_e\)는 각각 디코더 전과 인코더의 편향을 나타냅니다. sparse 표현은 데이터 포인트에서 중요한 feature만을 활성화시켜 나머지는 무시함으로써 데이터의 본질적인 구조를 보다 명확하게 드러냅니다.

    • 수학적 최적화와 손실 함수

      SAE의 학습은 다음의 손실 함수를 최소화하는 과정을 포함합니다.

      \[L(\mathbf{x}, \mathbf{x'}) = \\|\mathbf{x} - \mathbf{x'}\\|_2^2 + \lambda \\|\mathbf{f}(\mathbf{x})\\|_1\]

      위 식에서 \(\mathbf{x'}\)는 디코딩된 데이터, \(\lambda\)는 sparsity 정도를 조절하는 파라미터입니다. \(L_2\) 노름은 재구성 오류를 측정하며, \(L_1\) 노름은 feature의 sparsity를 촉진합니다.

  • 실험 결과 및 해석

    SAE는 512개의 뉴런을 가지는 MLP 레이어로부터 4,096개의 feature을 학습하고, 이 feature들은 MLP 레이어의 동작을 해석하는데 기여하며, 이를 통해 모델의 동작을 더 잘 이해할 수 있게 되었다고 합니다. 특히, 학습된 feature들은 각각의 활성화가 특정 입력에 대응하여 발생하는 단일의미론적(Monosemantic) 특성을 가지는 것으로 나타났다.

  • 소결 및 연구방향

    이 연구는 SAE를 사용하여 신경망의 복잡한 동작을 이해할 수 있는 새로운 방법을 제시한다. 추출된 feature들은 네트워크 내에서 상호작용하는 복잡한 동작을 구현하는 유한 상태 기계(finite state automata)와 같은 시스템을 형성하는데 기여할 수 있다. 또한, 이 방법은 다른 크기와 구조를 가진 신경망에도 적용 가능하며, 이는 신경망 해석의 범용적인 접근 방식으로 활용될 수 있다. 향후 연구에서는 이런 feature들이 신경망의 다양한 구조와 어떻게 통합될 수 있는지에 대해 더 깊이 탐구할 필요가 있다.


Section 2

  • 다중 언어 스크립트 feature 및 DNA 시퀀스 인식: 딕셔너리 학습을 통한 feature 발견
  • feature과 뉴런의 구별: 데이터셋 내 feature의 일반성 및 범용성 분석
  • 학습 모델의 feature 해석 가능성: 휴먼 및 자동화된 평가를 통한 해석 가능성 검증

  • 문제 정의

    딕셔너리 학습은 특정 feature이나 패턴을 모델의 숨겨진 층에서 어떻게 학습되고 표현되는지를 분석하는 방법입니다. 본 연구에서는 특정 언어 스크립트(아랍어, 히브리어 등)와 DNA 시퀀스 등의 데이터 feature이 어떻게 각기 다른 모델에서 유사하게 나타나고, 이런 feature들이 모델에 의해 어떻게 해석될 수 있는지를 탐구합니다.

  • 이론적 배경 및 선행 연구

    이전 연구들에서는 대부분의 뉴런 기반의 feature들이 많은 정보를 내포하고 있지만, 이를 명확하게 분석하기 어려웠습니다. 이에 대한 해결책으로 딕셔너리 학습이 제안되었고, 이 방법은 뉴런들보다 더 명확한 feature적 해석을 가능하게 하며, 특히 언어처리 모델에서 중요한 시사점을 제공합니다.

  • 방법

    본 연구에서는 딕셔너리 학습을 통해 특정 feature들이 어떻게 학습되고, 모델 내에서 어떻게 표현되는지를 수학적으로 분석합니다. 주요 관심사는 feature의 활성화 정도와 이런 활성화가 얼마나 특정적인지, 그리고 다른 feature들과 어떻게 상관 관계를 갖는지에 대한 정량적 측정입니다.

    다음의 수학적 방정식을 사용하여 feature과 뉴런의 활성화 관계를 분석합니다.

    • feature 활성화의 특이성(Specificity) 분석

      \[\text{Activation Specificity} = \frac{\sum_{i=1}^{N} (a_i - \overline{a})^2}{N-1}\]

      위 식에서 \(a_i\)는 $i$번째 데이터 포인트의 활성화 정도이고, \(\overline{a}\)는 평균 활성화 정도입니다. 이 공식을 통해 특정 feature이 얼마나 특정적으로 활성화 되는지를 수량화할 수 있습니다.

    • feature 간 상관 관계 분석

      또한, Pearson 상관 계수를 이용하여 다음과 같은 관계를 정량화합니다.

      feature 간의 상관 관계를 분석하기 위해 Pearson 상관 계수를 사용합니다. 이는 두 feature의 활성화가 얼마나 유사한 패턴을 보이는지를 수치적으로 나타냅니다. 상관 계수의 수식은 다음과 같습니다.

      \[\text{Correlation} = \frac{\sum (x_i - \overline{x})(y_i - \overline{y})}{\sqrt{\sum (x_i - \overline{x})^2 \sum (y_i - \overline{y})^2}}\]

      위 식에서 \(x_i\)와 \(y_i\)는 각각 두 feature의 활성화 정도를 나타냅니다. 이 계수는 -1에서 1 사이의 값을 가지며, 1에 가까울수록 두 feature의 활성화가 유사함을, -1에 가까울수록 반대의 패턴을 보임을 의미합니다.

      이런 수학적 분석을 통해 모델 내에서 학습된 feature들이 어떻게 서로 상호작용하는지, 그리고 어떤 feature이 다른 feature보다 더 중요하거나 유용한지를 파악할 수 있습니다. 이 정보는 모델의 해석 가능성을 높이고, 더 정교한 모델 설계나 개선에 기여할 수 있습니다.

  • 데이터셋 및 벤치마크

    본 연구에서는 약 40백만 개의 데이터셋 예제를 사용하였고, 이를 통해 각 feature의 활성화 분포와 상관 관계를 분석하였습니다. 벤치마크로는 활성화 유사성 및 로짓 가중치 상관 계수가 사용되었습니다.

  • 연구 결과

    다양한 feature들이 유사한 활성화 패턴을 보이며, 특히 DNA 시퀀스와 같은 명확한 언어적 특성들이 모델 간에 일관되게 나타났습니다. 이런 결과는 딕셔너리 학습이 다양한 언어 처리 모델에서 범용적으로 활용될 수 있음을 시사합니다.

    이 연구는 LLM에서의 feature 기반의 모델 해석을 통해 다양한 데이터셋과 복잡한 모델 구조에서의 작동을 탐구하려는 이론적인 시도 등을 포함하고 있습니다. Toy Model을 시작으로 Anthropic은 꾸준히 모델의 각 파트별로 분석하고, 조정하는 등의 작업을 선행하였습니다. 현재 Sornet-3.5이 후발주자임에도 괄목할만한 성능을 보여주는 이유 중 하나인 것 같아서 블로그를 보고 공부해보고 있습니다.

Previous: Hallucinations with High Accuracy and Low Cost Next: Anthropic - Toy Model Superposition*

post contain ""

    No matching posts found containing ""