2P by GN⁺ | ★ favorite | 댓글 1개
  • MIT 등 연구진은 ChatGPT 같은 AI 챗봇의 기반인 대규모 언어 모델(LLM) 이 저장된 일부 사실을 꺼낼 때 단순한 선형 함수를 쓰는 경우가 많다는 점을 확인함
  • 이 함수는 “사람이 연주하는 악기”나 “사람이 태어난 주”처럼 사실의 유형마다 달라지며, 비슷한 유형의 사실에는 같은 디코딩 함수가 적용됨
  • 47개 관계에 대해 함수를 추정한 뒤 주어를 바꿔 테스트하자, “국가의 수도” 같은 관계에서 60% 이상 올바른 객체 정보를 회수함
  • 모델이 오답을 내더라도 내부에는 정답이 남아 있는 경우가 많았고, 특정 정보가 트랜스포머의 어느 층에 저장됐는지 보는 attribute lens로 이어짐
  • 모든 지식이 선형으로 저장되는 것은 아니어서, 선형 함수로 찾을 수 없는 사실과 더 큰 모델에서의 정밀도 검증이 다음 연구 과제로 남아 있음

LLM 내부에서 발견된 단순한 지식 검색 방식

  • MIT와 여러 기관 연구진은 복잡한 트랜스포머 언어 모델이 저장된 사실을 회수할 때 단순한 선형 함수를 사용하는 경우가 많다는 결과를 얻음
  • 선형 함수는 두 변수 사이의 직선적 관계를 나타내는 단순한 형태임
    • 복잡한 비선형 계산을 수행하는 LLM 내부에서도 일부 지식 검색은 이런 단순한 메커니즘으로 작동함
  • 관련 논문은 “Linearity of Relation Decoding in Transformer Language Models”이며, 연구는 International Conference on Learning Representations에서 발표될 예정임

사실은 주어와 객체의 관계로 다뤄짐

  • 트랜스포머에 저장된 많은 지식은 주어와 객체를 잇는 관계로 표현될 수 있음
    • “Miles Davis plays the trumpet”은 주어 Miles Davis와 객체 trumpet을 잇는 관계임
    • “Miles Davis plays the...”라는 프롬프트에서는 Miles Davis가 태어난 주인 Illinois가 아니라 trumpet을 답해야 함
  • 모델이 어떤 주제에 대해 더 많은 지식을 얻으면, 그 주제에 관한 여러 사실이 여러 층에 걸쳐 저장됨
  • 질의가 들어오면 모델은 응답 생성을 위해 가장 관련 있는 사실을 디코딩해야 함

관계 유형마다 달라지는 선형 디코딩 함수

  • 연구진은 LLM을 조사하는 실험을 통해, 모델이 관계 정보를 단순한 선형 함수로 디코딩하는 경우가 있음을 확인함
  • 회수하려는 사실의 유형에 따라 함수도 달라짐
    • 어떤 사람이 연주하는 악기를 출력할 때 쓰는 함수와, 어떤 사람이 태어난 주를 출력할 때 쓰는 함수는 다름
  • 연구진은 이런 함수를 추정하는 방법을 만들고, “국가의 수도”, “밴드의 리드 싱어” 등 47개 관계에 대해 함수를 계산함
  • 가능한 관계는 무한히 많기 때문에, 실험에는 이런 방식으로 다룰 수 있는 사실 유형을 대표하는 부분집합이 사용됨

60% 이상 회수 성공과 선형 저장의 한계

  • 각 함수는 주어를 바꿔가며 올바른 객체 정보를 회수할 수 있는지 테스트됨
    • “국가의 수도” 함수는 주어가 Norway일 때 Oslo를, England일 때 London을 회수해야 함
  • 함수는 60% 이상의 경우 올바른 정보를 회수함
  • 트랜스포머 내부의 일부 정보는 이런 방식으로 인코딩되고 회수될 수 있음
  • 그러나 모든 정보가 선형으로 인코딩되는 것은 아님
    • 어떤 사실은 모델이 알고 있고 그 사실과 일관된 텍스트를 예측하더라도, 연구진이 선형 함수를 찾지 못함
    • 이런 경우 모델은 해당 정보를 저장하기 위해 더 복잡한 방식을 쓰고 있음

모델이 무엇을 알고 있는지 보는 attribute lens

  • 추정된 함수는 모델이 특정 주제에 대해 무엇을 참이라고 여기는지 확인하는 데 쓰임
  • 한 실험은 “Bill Bradley was a”라는 프롬프트에서 시작해, “스포츠를 했다”와 “대학에 다녔다”에 해당하는 디코딩 함수를 적용함
    • 모델이 Bill Bradley 상원의원이 농구 선수였고 Princeton에 다녔다는 정보를 알고 있는지 확인하는 방식임
  • 이 방법은 모델이 텍스트 생성 중 다른 정보에 집중하더라도, 내부에는 여러 관련 정보가 인코딩돼 있을 수 있음을 보여줌
  • 이를 바탕으로 attribute lens라는 격자가 만들어짐
    • attribute lens는 특정 관계에 관한 정보가 트랜스포머의 여러 층 중 어디에 저장돼 있는지 시각화함
    • 자동 생성이 가능해 모델 이해를 위한 간소화된 방법으로 쓰일 수 있음

오답 수정 가능성과 남은 연구 과제

  • 모델이 프롬프트에 잘못 답하더라도 내부에는 올바른 정보를 저장하고 있는 경우가 많음
  • 이런 접근은 모델 내부의 잘못된 정보를 찾고 수정하는 데 쓰일 수 있으며, AI 챗봇이 부정확하거나 무의미한 답변을 내는 경향을 줄이는 데 연결될 수 있음
  • 앞으로의 연구는 선형적으로 저장되지 않은 사실에서 어떤 일이 벌어지는지 더 잘 이해하는 데 초점을 둠
  • 더 큰 모델을 대상으로 실험하고, 선형 디코딩 함수의 정밀도도 연구할 계획임
  • Tel Aviv University의 Mor Geva Pipek는 이 연구가 LLM이 추론 중 사실 지식을 회상하는 방식을 이해하는 데 빠진 조각을 드러냈고, 속성 추출을 위한 복잡한 비선형 계산이 단순한 선형 함수로 잘 근사될 수 있음을 보였다고 평가함

댓글과 토론

Hacker News 의견들
  • 대단한 작업이지만, 지금 AI 흐름의 큰 문제도 드러낸다고 봄. 실제로는 단순 합산 함수에 가까운 퍼셉트론과 크게 다르지 않은 뉴런이나 규칙 집합에서 벗어나려 하지 않고 있음
    단일 뉴런 단계의 순전파 위상이 학습과 GPU 실행에 가장 쉽다는 이유만으로, 과제 수행에 실제로 최선이라고 볼 수 있는지는 의문임
    큰 라이브러리가 지원하지 않아서 쓰이지 않는 독특한 학습 방법과 인코딩 방식도 많고, 신경망의 근본 규칙 집합에 진짜 변화가 나오기 전까지는 결국 “단계가 추가된 퍼셉트론”과 계속 싸우게 될 것 같음

    • 가능한 모든 접근으로 모델을 만들려는 논문이 산더미처럼 있었는데 그걸 무시하는 셈임. 결국 선택에 의한 진화였고, 마지막에는 트랜스포머가 이김
    • “단순 합산 함수인 퍼셉트론”이라고 했는데, 그럼 무엇을 제안할 수 있을지 궁금함
      NP-완전성의 한 측면은 그 복잡도 부류의 어떤 알고리즘도 결국 ‘합산 함수’ 같은 것으로 환원될 수 있다는 뜻으로 이해하고 있음
    • 우리가 지역 최댓값에 갇혔다고 말하는 게 이해되지 않음. 지난 2년 사이에 말 그대로 AI 과학적 돌파구가 있었기 때문임
    • 주제를 충분히 알지는 못하지만, 다른 모델들이 같은 뉴런 수나 점근적 실행 시간 기준으로는 더 좋은 지표를 보일 수 있어도, 가장 중요한 지표는 결국 들어간 돈 대비 정확도·정밀도라고 봄
      GPT가 같은 성능에 도달하려고 뉴런 수가 10배 필요하더라도, 그 뉴런을 위한 연산과 메모리를 사는 비용이 더 싸다면 GPT가 목적 달성에는 더 나은 수단임
    • 쓰라린 교훈임. http://www.incompleteideas.net/IncIdeas/BitterLesson.html
      더 단순하고 학습 가능한 구조를 찾는다면 뭔가를 잡은 걸 수도 있음. 복잡하게 꾸미려는 시도들은 이미 해봤고 사라졌음
  • “사실이 선형 함수로 저장된다”는 말이, LLM 안에 어떤 식으로든 인코딩된 N차원 사실 공간이 있고 사실들이 점·초구·Voronoi 다양체 같은 형태로 박혀 있다는 뜻인지 궁금함
    그렇다면 사실을 떠올리는 건 추상적으로 보면 신경망이 사용할 키를 계산하거나 기억한 뒤, 그 공간에서 키-값 조회를 하는 것인가?
    그렇다면 에지 전파 그래프 모델 안에 키-값 저장소를 어떻게 넣는지, 지금도 사람이 직접 그렇게 만드는 잘 알려진 기법이 있는지도 궁금함
    덧붙여, “기억 궁전” 기법도 인간 뇌가 더 쉬운 검색을 위해 사실을 선형 함수에 넣는 예시라고 볼 수 있지 않을까?

    • 트랜스포머의 기본 연산인 softmax(Q.K^T).V는 본질적으로 키-값 저장소 조회에 가까움
      쿼리를 키와 내적한 뒤 softmax로 대부분 하나의 승리 키, 즉 쿼리에 가장 가까운 키를 고르고, 그에 대응하는 값을 사용함
      다만 조금 부드러워서 여러 키를 맞힐 수 있고, 적절한 QKV 매핑을 찾도록 경사 하강류 방법으로 최적화할 수 있다는 점이 다름
    • 층 정규화는 토큰, 즉 입력 조각을 나타내는 거대한 벡터를 단위 구 위의 위치로 제한하는 것 같고, 어텐션 메커니즘은 제약되지 않은 벡터들을 다른 모든 벡터와의 각도 합에 따라 회전시키는 방식으로 작동한다고 봄
      논문은 대충 훑었지만, 더 큰 네트워크 안에 숨어 있거나 회수 가능한 비교적 단순한 함수들이 있고, 그것들이 개념 간 특정 관계 범주를 다룬다는 점이 핵심으로 보임
      그런 함수를 분리할 수 있다면 이론적으로 더 직접 최적화할 수 있으니, 이런 모델의 학습 방식 발전으로 이어질 수도 있음
      결국 “현대” AI에 대한 좋은 비판 중 하나는 우리가 선형대수 수프를 섞고 있을 뿐이라는 생각인데, 어느 정도 모듈성이나 환원주의를 허용하면 단순한 블랙박스가 아니라 구성요소 중심 접근에 가까워질 수 있음
    • “기억 궁전”이 왜 선형 함수인지 잘 모르겠음
    • 기억 궁전은 진화적 의미에서 우리 뇌의 목적이 세상을 탐색하고 그 안에서 효과적으로 행동하게 돕는 데 있기 때문에 작동하는 해킹임
      그러려면 뇌는 위치를 잘 기억하고, 그 안팎의 경로를 계획하며, 그것을 말이나 움직임으로 바꾸는 데 매우 뛰어나야 함
  • 정말 흥미로움. 곧바로 프로그래밍 지식을 어떤 함수로 인코딩하는지, 그것도 단순한 선형 함수라면 표준 라이브러리나 다른 라이브러리를 값비싼 학습이나 성능을 망치는 미세조정 없이 LLM의 뇌에 직접 업로드할 수 있을지 떠오름
    아직은 공상과학 같은 능력이지만 점점 가까워지는 것 같음

    • LLM에 술어형 정보를 직접 업로드할 수 있을지도 모른다는 좋은 포인트임. 특히 표 형식 데이터를 인코딩해야 할 때 유용할 수 있음
      어딘가에서는 이걸 읽고 Excel이나 데이터베이스를 LLM으로 내보내는 방법을 생각하고 있을 것 같음
      블랙박스 내부를 성공적으로 들여다보는 연구가 나온다는 점은 고무적임
      이 분야의 또 다른 큰 결과로는, 게임을 하도록 학습한 LLM 안에서 게임 보드의 표현을 찾아낸 논문이 있었음. 이쪽에서 다른 좋은 결과가 또 있는지 궁금함
      저자들이 지적하듯 LLM은 술어형 정보를 인코딩하는 것 이상을 하고 있고, 그것은 그중 일부일 뿐임
  • 더 많은 연산을 쏟아부은 최신 모델에서도 이 관계가 여전히 유지되는지 궁금함
    직관적으로는 언어에 내재한 구조 덕분에 Word2Vec이 가능해졌다고 봄. 그다음 Word2Vec과 위치 인코딩으로 인코딩한 인간 텍스트 테라바이트를 학습하면, 학습 중에도 다음 인코딩을 초인적 수준의 인지로 예측할 수 있게 되는 것 같음
    입력·출력 방식으로서의 단어 주머니와, 위치 인코딩이 작동하도록 만든 제한된 문맥 창은 내부 인지 구조와 큰 임피던스 불일치를 만든다고 느낌
    그래서 GPT-4 등에 훨씬 더 많은 연산이 투입된 만큼, 새로운 형태의 표현이 진화했을 가능성이 충분하고, 인간이 모든 가중치를 탐침하며 아직 발견해야 할 수도 있음
    MemGPT는 무제한 장기 기억 때문에 결국 AGI가 될 수도 있다고 생각하지만, 더 가능성 높은 모습은 Memento의 주인공에 가까울 것 같음
    [1] https://en.wikipedia.org/wiki/Memento_(film)

    • 잘못 읽은 거라면 미안하지만, ChatGPT처럼 GPT-3+를 쓰는 LLM이 단어 주머니 모델이라고 말하는 듯함. 이들은 순차 모델임
  • 유명한 “King - Man + Woman = Queen” 임베딩 예시가 떠오름. 임베딩 안에 의미적 속성이 있다는 사실이 단순한 선형 함수도 잘 작동하는 이유를 설명해 줌

  • word2vec의 관계 벡터와 비슷하다고 느낌. “X의” 같은 벡터를 더하면 종종 올바른 답이 나옴
    원리는 여전히 같고, 트랜스포머는 엔티티를 임베딩 공간으로 매핑하는 일을 “그저” 더 잘하게 된 것일 수도 있음

    • 나도 그렇게 생각함. 이런 모델 안의 결정 경계가 FP32 벡터를 실제로 활용할 만큼, 뇌의 주름처럼 충분히 휘어져 있다고 믿기 어려움
      즉 x = 0은 “날다”, x = 0.01은 “운전하다”, x = 0.02는 “보라색”이라는 식이라기보다, x < 1.5는 “차가움”, x > 1.5는 “뜨거움”에 더 가깝다고 봄
      그래서 양자화, 심지어 1비트 양자화도 자주 작동하는 이유 중 하나임
      또한 텍스트나 이미지를 BERT나 CLIP류 모델에 넣은 뒤, 선형 결정 경계를 자주 쓰는 고전적 머신러닝 모델을 적용해도 좋은 결과가 나오는 이유이기도 함
  • LLM은 좋은 압축 메커니즘처럼 보임
    PC에 llama 사본을 로컬로 두고 사실상 인터넷 전체에 접근할 수 있다는 점이 놀라움

    • “사실상 인터넷 전체”에는 전혀 못 미침. 1%에도 가깝지 않음
      최신 덤프 기준 Common Crawl은 43억 페이지지만, Google은 2016년에 웹에 130조 페이지가 있다고 추정했음
      130조와 43억의 차이는 거의 130조임. Google의 검색 가능한 텍스트 색인으로 좁혀도 “수천억 페이지”이고 대략 100PB인데, Common Crawl의 400TB와 비교됨
    • 맞지만 손실 압축임. 잃어버린 부분은 추론 시점에 환각으로 채워짐
    • PAC 학습은 압축임
      PAC 학습 가능성, 유한 VC 차원, 그리고 다음 형태의 압축은 완전히 동치임
      https://arxiv.org/abs/1610.03592
      기본적으로 개별 뉴런이나 퍼셉트론은 공간을 두 하위 공간으로 나눌 뿐임
  • 4비트 가중치의 “매개변수” 700억 개짜리 CSV 파일·데이터베이스·모델이 어떻게 모든 주제에 거의 박식한 대화형 LLM/GPT가 되는지 이해가 안 됨
    조사해 보니 4비트는 그냥 압축 방식이고, 모델은 결국 f32를 보게 되는 건가?
    양자화는 신경망의 가중치인 32비트 부동소수점 수를 저장과 메모리 효율을 위해 4비트 값 같은 훨씬 작은 비트 표현으로 매핑하는 과정이라고 함
    역양자화는 모델이 사용될 때, 즉 추론이나 경우에 따라 학습 중에 일어나며, 4비트 양자화 가중치가 실제 계산에 쓰이는 부동소수점 수로 다시 변환됨
    그럼 “매개변수”와 “모델이 아는 고유 토큰 수, 즉 어휘 크기” 사이의 관계는 무엇인지 궁금함
    겉보기에는 LLaMA가 GPT-3와 비교해 어휘 크기 32,000개와 매개변수 650억 개뿐이라고 함
    LLaMA 같은 모델의 650억 매개변수는 훈련 데이터의 토큰 간 학습된 관계를 바탕으로 입력에 어떻게 응답할지를 결정하는 매우 복잡한 매핑 시스템으로 작동한다고 함

    • 간단한 답은, 그렇게 되지 않는다는 것임
      조금 더 복잡하게 말하면 압축한 Wikipedia 텍스트 덤프도 70GB가 안 되고, 이것은 인터넷의 손실 압축임
    • 여기서 양자화는 벡터나 행렬·텐서 안 각 값의 정밀도를 뜻함
      해당 모델의 토큰 임베딩 길이가 1024라면, 1비트 양자화라 해도 각 토큰은 2^1024개의 가능한 값을 가짐
      문맥 길이가 32,000토큰이라면 가능한 입력은 32,000^2^1024개임
  • LLM이 학습 모드에서 이전에는 불가능했던 방대한 정보로부터 수많은 IF-THEN 규칙을 자동으로 만들어낸다고 대략 말할 수 있을까?

  • 이 논문은 멋지고, 이런 아이디어를 검증하려고 실험을 돌린 점도 좋음. 다만 아이디어 자체가 얼마나 새로운지는 잘 모르겠음
    LLM이 단어 사이의 단순한 통계적 경향을 자연스럽게 학습한다면 이런 결과는 예상 가능한 것 아닌가?
    오히려 모든 LLM 행동이 이렇게 단순하게 설명될 수는 없다는 점을 명확히 보여준 게 훨씬 더 멋지다고 봄