제47회 · LLM과 함께 배우는 생각그림

입력 기여도 지도는 어느 토큰이 목표 출력에 얼마나 보탰는지 보여 줄까?

어텐션 가중치와 입력 기여도를 구분하고, “무엇에 대한 기여인가”를 먼저 고정한 뒤 양수·음수·기준 입력을 함께 표시합니다.

기여도는 목표 출력이 정해져야 계산 의미가 생긴다

“오늘 모임은 취소되지 않았다”를 입력한 분류 모델이 긍정 판정을 냈다고 하자. 입력 기여도는 각 토큰이 목표 점수, 확률 또는 특정 출력 로짓에 얼마나 관련되는지 사후적으로 나누어 본 값이다. 목표가 “긍정 로짓”인지 “긍정-부정 로짓 차이”인지에 따라 부호와 크기가 달라진다.

지도 제목에는 모델·버전, 입력 토큰, 목표 출력, 사용한 방법, 기준 입력을 함께 적는다. 이 글의 막대값은 계산법을 설명하기 위해 만든 교육용 수치이며 실제 언어 모델 실행 결과가 아니다. 숫자가 있어도 목표와 기준이 빠지면 무엇에 대한 기여인지 알 수 없다.

생각그림 1 · 목표 출력에 대한 토큰별 양·음 기여도표를 좌우로 움직여 전체 내용을 확인하세요.
0+0.08오늘+0.16모임은-0.31취소되지+0.52않았다
양수는 정한 목표를 높이는 방향, 음수는 낮추는 방향의 교육용 값입니다. 단어의 일반적 의미나 도덕적 중요도를 뜻하지 않습니다.

어텐션 가중치와 기여도는 다른 질문에 답한다

어텐션은 특정 모듈이 값 벡터를 섞을 때 사용한 가중치다. 입력 기여도는 선택한 출력과 입력 특징 사이의 관계를 정한 방법으로 근사한다. 어텐션이 큰 토큰의 기여도가 반드시 크지 않고, 어텐션이 작은 토큰도 잔차·피드포워드·여러 층을 거쳐 출력에 영향을 줄 수 있다.

두 값을 한 색상표에 겹치면 계산 단위가 섞인다. 어텐션은 행별로 합이 1인 경우가 많지만 기여도는 양수와 음수가 있으며 합의 성질은 방법에 따라 다르다. 비교하려면 각각의 정의·범위·정규화를 분리하고 “일치하지 않음”도 결과로 보존한다.

생각그림 2 · 두 지도가 묻는 질문의 차이
지도값의 기준 질문일반적 범위
어텐션이 모듈에서 어느 위치를 얼마만큼 섞었나?대개 0 이상·행 합 1
입력 기여도정한 출력에 각 입력 특징이 얼마나 관련됐나?양·음 가능·방법 의존
토큰 확률현재 시점 다음 토큰 후보는?0 이상·어휘 전체 합 1
세 그림의 숫자는 모두 “중요도”가 아니라 서로 다른 계산 질문의 답입니다.

통합 기울기는 기준 입력에서 실제 입력까지의 경로를 본다

Integrated Gradients는 기준 입력에서 실제 입력으로 이어지는 경로에서 기울기를 적분해 특징별 기여를 계산한다. Sundararajan·Taly·Yan은 민감도와 구현 불변성이라는 공리를 제시하고 이 방법을 설계했다. 원 모델을 바꾸지 않고 표준 기울기 연산을 여러 번 사용한다.

텍스트에서는 토큰 ID 자체를 연속적으로 움직이기보다 임베딩 같은 연속 표현에서 경로를 잡는 구현이 흔하다. 기준 입력을 0 벡터, 패딩, 마스크, 중립 문장 중 무엇으로 두는지에 따라 결과가 달라질 수 있다. 기준 입력은 “정보가 없는 자연 상태”가 아니라 분석자가 선택한 비교점이다.

생각그림 3 · 기준에서 입력까지 기여도를 누적한다
기준 입력 x′
중간점 여러 개
각 점의 기울기
경로 적분
토큰별 기여
경로와 기준을 공개해야 같은 방법 이름 아래 나온 서로 다른 기여도를 비교할 수 있습니다.

완전성 검사는 합이 맞는지 보는 수치 점검이다

통합 기울기의 중요한 성질 가운데 하나는 특징 기여도의 합이 모델 출력 F(x)와 기준 출력 F(x′)의 차이에 가까워지는 것이다. 근사 적분이므로 단계 수가 적으면 오차가 남는다. 기여도 합, 출력 차이, 수렴 오차를 나란히 기록하면 구현이나 단계 수 오류를 찾을 수 있다.

합이 맞는다고 해석이 자동으로 옳아지는 것은 아니다. 토큰화, 임베딩 기준, 목표 출력 선택은 여전히 결과에 영향을 준다. 완전성은 선택한 함수와 경로 안에서의 수치 검증이지, 설명이 인간에게 유일하거나 인과적으로 참이라는 보증이 아니다.

생각그림 4 · 기여도 합의 수치 검산
항목교육용 값
실제 입력의 목표 로짓 F(x)2.10
기준 입력의 목표 로짓 F(x′)0.30
차이 F(x)-F(x′)1.80
토큰 기여도 합1.77
근사 오차0.03
출력 차이와 기여도 합의 근접성은 구현 검산에 쓰고, 설명 타당성은 별도 반례와 방법 비교로 점검합니다.

토큰 조각을 단어로 합칠 때 부호를 보존한다

한국어 단어가 여러 서브워드 토큰으로 나뉘면 토큰별 기여도를 그대로 보여 주거나 단어 단위로 합칠 수 있다. 절댓값을 먼저 더하면 양수와 음수가 상쇄되는 정보를 잃는다. 부호 합, 절댓값 합, 최대값 가운데 무엇을 썼는지 명시하고 원래 토큰 목록으로 돌아갈 수 있게 한다.

공백과 특수 토큰도 조용히 삭제하지 않는다. 문장 시작 토큰이나 구분 토큰이 큰 값을 가질 수 있으며, 그것이 바로 의미 있는 단어라는 뜻은 아니지만 계산에 포함됐다는 사실은 중요하다. 화면에서는 필터하더라도 “표시 제외” 목록과 합을 제공한다.

생각그림 5 · 토큰 집계에서 보존할 값
집계계산읽을 수 있는 것
부호 합조각 값을 그대로 더함목표 방향의 순기여
절댓값 합크기만 더함활동 총량, 방향 소실
최대 절댓값가장 큰 조각 선택대표 조각, 나머지 소실
집계 없음원시 토큰 그대로정확하지만 읽기 복잡
단어 수준의 매끈한 색보다 토큰화와 집계 규칙을 추적할 수 있는지가 더 중요합니다.

LLM에는 목표·기준·방법·수치 검사를 제공한다

기여도 숫자만 주고 “왜 이런 답을 했는지 설명해 줘”라고 요청하면 모델이 서사를 덧붙이기 쉽다. 목표 출력, 기준 입력, 방법, 적분 단계 수, 토큰화, 기여도 배열을 제공하고 먼저 배열 길이와 출력 차이 검산을 수행하게 한다. 값과 맞지 않는 자연어 이유는 만들지 않게 한다.

결과는 양의 기여, 음의 기여, 작은 값, 표시 제외 토큰을 구분한다. 캡션에는 “이 방법과 기준에서 목표 출력을 향한 국소적 기여 추정”이라고 적고, 다른 기준·방법·반례에서 안정적인지 추가 확인 과제를 붙인다.

생각그림 6 · 기여도 지도를 만들기 전 확인할 입력
목표어느 클래스·토큰·점수인가?
기준무엇과 비교하는가?
방법IG·gradient×input·가림 실험
단위토큰·서브워드·임베딩 차원
검산합·출력 차이·근사 오차
한계인과·유일한 이유로 단정 금지
설명 문장보다 먼저 측정 설정을 고정하면 기여도 지도끼리 비교할 수 있습니다.

가림 실험은 입력을 바꾸므로 분포 밖 문제를 본다

토큰 하나를 지우거나 마스크로 바꾸고 출력 변화를 재는 방법은 직관적이다. 그러나 삭제된 문장이 문법적으로 이상하거나 모델이 훈련 중 거의 보지 못한 입력이 되면 변화가 원래 토큰의 기여만 반영하지 않을 수 있다. 대체 토큰과 삭제 규칙을 함께 기록한다.

여러 토큰이 상호작용하면 하나씩 지운 변화의 합이 전체 변화와 다를 수 있다. “취소되지 않았다”에서 부정 표현을 따로 제거하면 문장 의미가 크게 달라진다. 단일 토큰, 구, 조합을 나누어 시험하고 결과가 방법 간에 안정적인지 본다.

생각그림 7 · 가림 기반 기여도의 정상·주의 사례
단일 토큰원문→한 토큰 마스크
구 단위“취소되지 않았다” 함께 가림
주의비문·분포 밖 입력 가능
검토여러 대체 기준과 방법 비교
가림 뒤 출력 변화는 유용한 검사지만 삭제된 입력이 어떤 문장이 되었는지도 함께 봐야 합니다.

수정 전후는 “원인”이라는 단어에서 갈린다

수정 전 지도는 빨간 토큰을 “모델 판단의 원인”이라고 부르고 기준 입력과 목표 점수를 밝히지 않았다. 확률에 대한 기여인지 로짓에 대한 기여인지도 불명확했고, 모든 음수를 “방해”로 번역해 문맥을 과장했다.

수정 후에는 “긍정 로짓−기준 로짓에 대한 Integrated Gradients, 64단계”처럼 설정을 적었다. 양수와 음수는 목표 점수를 높이거나 낮추는 방향이라고만 설명하고, 인과 주장은 가림·대체·다른 기준에서 반복되는지 별도 시험으로 넘겼다.

생각그림 8 · 강한 인과 문장을 측정 설정으로 바꾼다
수정 전“이 단어가 판단을 일으켰다”
수정 전목표·기준·방법 없음
수정 후목표 로짓·기준·단계 수
수정 후추정 범위와 추가 개입 검사
기여도는 모델 출력 분석의 한 도구이며 모델의 내면 설명이나 인간 언어의 완전한 의미 분석이 아닙니다.

공개 전에는 방법을 바꾸어도 결론이 버티는지 본다

같은 입력에 기준 입력 두 가지와 방법 두 가지를 적용해 상위 토큰과 부호가 얼마나 안정적인지 비교한다. 작은 변화로 순위가 뒤집히면 한 장의 지도에서 강한 결론을 내리지 않는다. 반례 문장, 어순 변화, 부정 표현을 넣어 목표 출력과 기여도가 함께 어떻게 변하는지도 본다.

모바일에서는 양·음 색을 색상만으로 구분하지 않고 +/− 기호와 값, 기준선 위치를 함께 표시한다. 키보드로 목표와 기준을 바꾸고 결과 문장이 갱신되는지 확인한다. 자료와 출처에는 실제 사용한 방법의 원논문과 구현 문서를 버전과 함께 적는다.

생각그림 9 · 입력 기여도 지도 공개 전 검사표
검사통과 기준미통과 행동
목표출력 단위가 명시됨제목·범례 보완
기준실제 값과 선택 이유 공개여러 기준 비교
합 검산출력 차이와 근접단계 수·코드 점검
안정성방법·반례 비교 기록결론 완화
접근성부호·숫자·키보드 제공색 외 표현 추가
기여도 지도의 신뢰성은 한 색 패턴보다 설정 공개, 수치 검산, 반례 비교에서 나옵니다.

복사해서 쓸 수 있는 LLM 요청문

아래 요청문은 교육용 예시다. 원문을 함께 제공하고, 모델이 빈칸을 추측하지 않도록 금지 조건을 넣었다. 결과를 받으면 원문 문장과 노드·선의 대응을 사람이 다시 확인한다.

다음 입력 기여도 자료를 생각그림으로 정리해 줘.
1. 모델·버전·입력 토큰·목표 출력·점수 단위를 먼저 적는다.
2. 사용 방법, 기준 입력, Integrated Gradients라면 적분 단계 수를 적는다.
3. 토큰 수와 기여도 배열 길이를 검사하고 출력 차이·기여도 합·근사 오차를 계산한다.
4. 양수와 음수를 0 기준선 양쪽에 그리고 값과 부호를 직접 표시한다.
5. 서브워드를 단어로 합치면 집계 규칙과 원래 토큰을 함께 제공한다.
6. 어텐션 가중치와 입력 기여도를 같은 값으로 취급하지 않는다.
7. 기여도를 내부 생각, 유일한 답변 이유, 인과적 원인으로 단정하지 않는다.
8. 다른 기준·방법·반례에서 확인할 항목을 끝에 적는다.

[목표·기준·토큰·기여도 배열] …
생각그림 10 · 요청문에서 결과와 검토까지
원문 붙이기
도표 목적 명시
추정 금지
문장별 대조
요청문은 도표를 자동으로 진실로 만들지 않습니다. 원문과 결과를 왕복해 확인하는 절차가 핵심입니다.

직접 실습하고 결과를 읽기

이 실습은 브라우저 안에 준비한 교육용 자료만 사용한다. 외부 LLM을 호출하거나 실제 기관 자료를 조회하지 않는다. 입력을 바꾸어 결과가 어떻게 달라지는지 보고, 설명과 맞지 않는 결과가 나오면 어떤 정보가 빠졌는지 적어 본다.

목표와 기준을 바꾸어 같은 토큰의 부호가 고정 속성이 아님을 확인하세요.

자료와 출처

아래 자료는 이번 글의 정의와 표기법을 확인하는 데 사용했다. 생각그림과 사례 문장은 원자료를 복제하지 않고 이 글의 교육 목적에 맞게 새로 구성했다.