본문으로 건너뛰기

Deepseek용 공개 Jacobian Lens 시각화기 구현과 라이브 데모

Jacobian Lens를 deepseek-coder-1.3b와 GPT-2에 적용해 실시간으로 내부 개념(J-space)을 시각화한 오픈소스 도구와 데모, 렌즈 가중치 및 실행 리포트를 공유한다.

이 요약은 AI가 원문을 분석해 생성했습니다. 정확한 내용은 원문 기준으로 확인하세요.

TL;DR

Anthropic이 제안한 Jacobian Lens 기법을 기반으로 작성자는 deepseek-coder-1.3b와 GPT-2에 적용 가능한 공개 시각화 도구를 구현하고 데모와 가중치를 공개했다. 이 도구는 각 레이어의 로짓 기울기를 사용해 J-space 상의 후보 단어 순위를 계산하며, 코드 예시와 자연어 질문에서 출력 오류가 일어나기 전에 올바른 후보가 심층 레이어에 존재하는 것을 관찰할 수 있게 한다. 작성자는 M4 MacBook Air(16GB)에서 렌즈를 맞춰 위키텍스트 프롬프트 40개에 대해 프롬프트당 약 9분이 소요되었다고 보고했으며, 모델이 오픈 웨이트여야만 적용 가능하다는 한계를 명시했다. 따라서 이 도구는 오픈 모델의 내부 표현을 실험적으로 추적하고 추론 실패 지점을 규명하는 데 즉시 활용 가능한 실무적 수단을 제공한다.

실용적 조언

  • 렌즈를 재현하려면 작성자가 제공한 GitHub 리포지토리를 클론한 뒤 데모 실행 지침에 따라 환경을 구성해야 하며, Hugging Face에 업로드된 렌즈 가중치를 모델과 결합해 적용하면 동일한 시각화를 얻을 수 있다. 소형 모델에서도 빠르게 실험해볼 수 있으나 학습 및 추론 시간(보고된 바는 약 9분/프롬프트)을 고려해 배치 실험 계획을 세우는 것이 효율적이다. 모델이 오픈 웨이트이어야만 자코비안 계산과 렌즈 학습이 가능하므로 해당 조건을 먼저 확인해야 한다.
  • 렌즈 결과를 해석할 때는 레이어별 후보 순위의 변화 시점을 주목하고 최종 출력과의 불일치 패턴을 찾아야 하며, 후보가 상위에 머무르다가 사라지는 정확한 레이어 지점을 로그로 남기면 디버깅에 도움이 된다. 또한 작은 모델에서 관찰된 패턴을 대형 모델로 확장 적용하기 전에 동일한 실험 프로토콜과 데이터셋으로 비교 검증을 수행해야 신뢰도가 확보된다. 실험 재현성 확보를 위해 입력 프롬프트와 시드, 검증용 데이터셋을 함께 기록하는 것을 권장한다.

섹션별 상세

01
작성자는 Anthropic이 제안한 Jacobian Lens 방법을 독립적으로 구현해 Web 기반 라이브 시각화기를 만들었으며, 이는 Deepseek 모델과 GPT-2에 적용 가능함을 보였다. 구현체는 레이어별로 출력 로짓에 대한 자코비안 기반의 후보 단어 순위를 계산해 각 토큰 위치에서 모델이 '말하려고 하는' 개념들을 추적한다. 개발자는 코드와 데모 링크, Hugging Face에 렌즈 가중치를 업로드했고 리포지토리 클론 후 두 명령으로 실행 가능한 형태로 제공했다. 이 결과는 내부 표현을 관찰하려는 연구·엔지니어링 작업에서 도구로 바로 재현할 수 있다는 실용적 증거를 제공한다.
02
작성자는 도구를 이용해 모델의 중간 계산이 출력으로 이어지기 전 어떤 개념들이 활성화되는지를 사례로 제시했으며, 예로 정렬 코드 입력에서 모델이 리스트가 정렬되어 있다고 '생각'한 상태를 관찰했다. 입력으로 코드 조각을 주면 각 레이어의 J-space 후보들이 상위에 뜨고 출력으로 쓰여지기 이전에 'sorted' 개념이 강하게 활성화되는 과정이 시각적으로 드러났다. 이 사례는 모델이 내부적으로 올바른 개념을 보유한 채도 출력에서 잘못 결론을 내릴 수 있음을 보여주며, 내부 후보의 등락을 통해 언제 추론이 망가지는지 추적할 수 있다는 근거를 제공했다. 따라서 디버깅이나 모델 행동 이해에 있어 중간 표현 관찰이 실용적 가치를 가지는 점이 확인되었다.
03
작성자는 또 다른 사례로 '거미가 짓는 동물의 다리는 몇 개인가'라는 질문에서 모델이 정답인 'eight'을 심층 레이어에서 상위 후보로 올렸다가 최종 출력에서는 'two'로 뒤집히는 현상을 관찰했다고 보고했다. 이 관측은 자코비안 기반 후보 순위가 출력 오류 이전에 올바른 정보가 존재하는지를 판별하는 수단이 될 수 있음을 시사하며, 레이어 인덱스(L21–L22) 수준의 시간적 위치를 근거로 제시했다. 이러한 사례는 내부 표현이 항상 출력과 일치하지 않으며 출력 결정 과정에서 후보 간 경쟁으로 인해 올바른 후보가 손실될 수 있음을 실험적으로 보여준다. 따라서 내부 후보 스코어링은 모델의 출력 결함 원인을 규명하는 데 직접적인 단서를 제공한다.
04
재현성과 실행 비용 관점에서 작성자는 M4 MacBook Air(16GB)에서 렌즈를 학습했으며 위키텍스트 프롬프트 40개에 대해 프롬프트당 약 9분이 소요되었다고 구체적 수치를 공개했다. 렌즈 학습은 공개된 가중치로 배포되어 있으며, 모델이 오픈 웨이트여야만 적용 가능하다는 제한이 명확히 제시되었다. 작성자는 모델 크기가 1.3B로 소형이라서 최첨단 모델의 심층적 사고와는 차이가 있지만, 내부 사고의 형성과 붕괴를 실시간으로 관찰할 수 있다는 점에서 가치가 있다고 결론지었다. 따라서 이 도구는 오픈웨이트 소형·중형 모델의 내부 이해와 디버깅에 당장 적용 가능한 실무적 도구로 기능한다.

용어 해설

자코비안 렌즈(Jacobian Lens)
Jacobian Lens는 트랜스포머 내부의 각 토큰 위치가 출력 방향으로 얼마나 기여할지를 자코비안 행렬로 추정하여 모델이 '표현하려고 하는' 후보 텍스트를 역으로 복원하는 기법이다. 입력 토큰에 대한 숨겨진 상태의 기울기(출력 토큰 로짓에 대한 도함수)를 주성분처럼 사용해 소수의 내부 개념을 뽑아내며, 이렇게 추출된 축들이 모델의 추론 중 핵심 개념군(J-space)을 형성함이 확인된다. 이 방법은 모델의 내부 연산이 어떤 자연어 개념으로 수렴하는지를 실험적으로 확인할 때 유용하다.
J-스페이스(J-space)
J-space는 Jacobian Lens로 얻은 내부 표현 축들이 만드는 저차원 공간을 가리키며 모델이 실제로 '사고'하는 소수의 개념 벡터 집합을 의미한다. 이 공간에서는 특정 토큰이나 프롬프트 구간에서 활성화되는 개념들이 군집을 이루고, 개별 축은 자연어 단어나 개념 후보를 유의미하게 지목한다. J-space 관찰은 출력이 결정되기 이전의 중간 계산 상태에서 올바른 개념이 존재하는지와 그 붕괴 시점을 추적하는 데 중요하다.
트랜스포머 레이어(Transformer Layer)
트랜스포머 레이어는 입력 임베딩을 받아 셀프어텐션과 피드포워드 변환을 거쳐 다음 레이어로 전달하는 기본 연산 단위로서, 각 레이어의 출력은 모델 추론 과정의 단계별 표현을 제공한다. Jacobian Lens는 특정 레이어의 출력과 최종 로짓 사이의 기울기를 계산하여 그 레이어가 '어떤 단어를 향해 기울어져 있는지'를 수치적으로 포착한다. 레이어 깊이에 따라 후보 개념의 순위 변동이 관찰되며, 심층 레이어에서 출력 후보가 확정되기 전에 개념이 나타나거나 사라지는 패턴이 드러난다.

코드 예제

python
nums = [3, 1, 2]
nums.sort()
print(nums[-1])
# This prints

이 코드는 모델에 주어진 코드 조각을 입력했을 때 내부 워크스페이스에서 어떤 개념이 활성화되는지를 보여주는 간단한 예시이다.

언급된 도구

jspace-viz추천링크

Jacobian Lens 기반 내부 표현을 실시간 시각화하는 웹 데모 및 도구

Hugging Face중립링크

학습된 렌즈 가중치와 모델 아티팩트를 배포하는 허브

deepseek-coder-1.3b중립

렌즈 적용 대상이 된 공개 소형 언어 모델

AI 분석 전체 내용 보기

AI 요약 · 북마크 · 개인 피드 설정 — 무료

출처 · 인용 안내

원문 발행 2026. 07. 11.수집 2026. 07. 11.출처 타입 REDDIT

인용 시 "요약 출처: AI Trends (aitrends.kr)"를 표기하고, 사실 확인은 원문 보기 기준으로 진행해 주세요. 자세한 기준은 운영 정책을 참고해 주세요.