LLM을 이해하기 위해 필요한 수학
The maths you need to start understanding LLMs
TL;DR Highlight
고등학교 수준의 벡터·행렬 수학만 알아도 LLM의 추론 과정을 충분히 이해할 수 있다는 것을 단계별로 설명하는 글이다.
Who Should Read
LLM이 어떻게 동작하는지 원리부터 이해하고 싶은 백엔드·풀스택 개발자. 특히 딥러닝 전공 없이 AI 내부 구조를 파악하려는 사람에게 적합하다.
Core Mechanics
- LLM의 추론(inference) 과정을 이해하는 데 필요한 수학은 고등학교 수준의 벡터, 행렬 연산이 전부다. 실제 연구나 학습(training)에는 더 깊은 수학이 필요하지만, '어떻게 동작하는지' 이해하는 데는 그 정도로 충분하다.
- 벡터는 단순한 숫자 배열이 아니라 n차원 공간의 방향과 거리를 나타낸다. LLM에서 벡터는 의미(semantics)를 수치로 표현하는 핵심 도구로, 유사한 개념은 벡터 공간에서 가깝게 위치한다.
- 토큰 임베딩(token embedding)은 단어나 서브워드를 수백~수천 차원의 벡터로 변환하는 과정이다. 이 임베딩은 LLM의 입력값이며, 트랜스포머 네트워크의 거대한 연산이 그 뒤를 이어받는다.
- 코사인 유사도(cosine similarity)는 두 벡터 사이의 각도를 측정해서 의미적 유사성을 판단하는 방법이다. RAG에서 사용자 쿼리와 문서를 비교할 때 바로 이 방법을 사용한다.
- LLM의 출력은 logit(각 토큰이 다음에 올 확률의 원시 점수) 벡터다. 이 logit에 softmax를 적용하면 각 값을 지수화(exp)한 뒤 합이 1이 되도록 정규화해서 확률 분포를 만든다.
- softmax는 고등학교에서 배우는 지수함수(exp)를 기반으로 한다. 특정 값을 크게 부각시키는 특성 덕분에 LLM이 다음 토큰을 선택할 때 특정 후보를 강하게 선호하도록 만든다.
- LLM 내부의 연산은 본질적으로 덧셈과 곱셈의 반복이다. 수학 자체는 단순하지만, 왜 1조 개 이상의 파라미터를 가진 네트워크가 그렇게 잘 동작하는지는 아직 완전히 해명되지 않았다.
- 임베딩은 LLM 전체가 아니라 입력 단계에 불과하다. 실제 LLM의 '지능'은 1.8조 개 이상의 파라미터를 가진 트랜스포머 네트워크에서 나오며, 그 내부에서 정확히 무슨 일이 일어나는지는 여전히 블랙박스다.
Evidence
- 물리학 석사 출신 개발자가 '경력 내내 안 쓰던 벡터, 선형대수, 엔트로피 개념이 LLM 공부하면서 다시 살아났다'고 했다. 역전파(backprop)가 텐서 미적분 계산이고, 모든 것이 행렬 곱이라는 점이 물리학 배경과 딱 맞아떨어진다고.
- Karpathy의 LLM 영상 시리즈를 '보기만' 하지 않고 직접 코드를 따라 치며 작업한 것이 이해에 결정적이었다는 경험담이 다수 공유됐다. CPU 동작 원리 정도만 알아도 실무에는 충분하다는 의견도 있었다.
- 댓글에서 제목이 오해를 부른다는 비판이 나왔다. 이 글이 설명하는 건 'LLM이 내부적으로 계산하는 방법'이지, 'LLM이 왜 작동하는지에 대한 수학적 설명'이 아니라는 것. LLM 설명 가능성(explainability) 연구가 그 영역을 담당하며, 아직 미완성이라는 지적이다.
- LLM이 logit을 출력하는 존재라는 점에서 다중 에이전트 체인의 위험성이 언급됐다. 각 LLM 호출마다 불확실성이 누적되기 때문에 3번 체인하면 완전 붕괴가 일어나는 경우도 봤다는 실사용 경험이 공유됐고, 이를 막기 위해 단일 오케스트레이터 + human-in-the-loop 패턴을 권장한다는 의견이 있었다.
- Google에서 이 분야 초기 수학을 개발했다고 주장하는 댓글이 화제였다. 언어 벡터 너머의 행동 예측, UI 결정 예측 등을 연구했으나 attention layer 없이는 한계가 있었고, Sundar Pichai 체제에서 팀 전체가 해고됐다는 내부 스토리를 공유해 많은 반응을 얻었다.
How to Apply
- RAG 시스템을 구축 중이라면 이 글의 코사인 유사도 설명을 바탕으로 임베딩 벡터 간 거리 계산 로직을 직접 구현해보자. 문서 청크를 임베딩하고, 쿼리 벡터와의 코사인 유사도로 상위 N개를 뽑은 뒤 reranking을 적용하는 것이 기본 패턴이다.
- 다중 LLM 에이전트를 체인으로 연결하는 아키텍처를 설계할 때, 호출 횟수를 최소화하고 단일 오케스트레이터가 모든 판단을 내리도록 구성하라. 각 호출마다 불확실성이 누적되므로 3회 이상 체인은 신중하게 검토해야 한다.
- LLM 내부 수학을 더 깊이 공부하려면 Karpathy의 유튜브 시리즈를 단순 시청이 아니라 코드를 직접 실행하면서 따라가고, Sebastian Raschka의 'Build a Large Language Model (from Scratch)' 책으로 보완하는 것이 효과적이다.
- 선형대수 기초부터 체계적으로 잡고 싶다면 Deeplearning.AI의 'Mathematics for Machine Learning and Data Science Specialization' 강좌(Coursera, 월 $50)와 'Math and Architectures of Deep Learning' 책을 병행하면 좋다.
Terminology
logitLLM이 다음 토큰을 예측할 때 출력하는 원시 점수. 확률로 변환되기 전 단계의 값으로, 점수가 높을수록 해당 토큰이 선택될 가능성이 높다.
softmaxlogit 벡터를 확률 분포로 변환하는 함수. 각 값을 지수화(e^x)한 뒤 전체 합으로 나눠서 모든 항목의 합이 1이 되도록 만든다.
임베딩단어나 토큰을 수백~수천 차원의 실수 벡터로 변환하는 것. 유사한 의미의 단어는 벡터 공간에서 가까이 위치한다.
코사인 유사도두 벡터 사이의 각도를 이용해 유사성을 측정하는 방법. 1에 가까울수록 유사하고 0에 가까울수록 무관하다. RAG에서 쿼리-문서 매칭에 사용된다.
트랜스포머현대 LLM의 핵심 아키텍처. attention 메커니즘을 통해 입력 토큰 간의 관계를 파악하며, GPT·BERT 등 대부분의 LLM이 이 구조를 기반으로 한다.
inference이미 학습된 LLM 모델을 사용해 실제 예측(텍스트 생성)을 수행하는 과정. 모델을 처음부터 학습시키는 training과 구분된다.
Related Resources
- https://www.gilesthomas.com/2025/09/maths-for-llms
- https://www.youtube.com/watch?v=7xTGNNLPyMI
- https://www.manning.com/books/build-a-large-language-model-from-scratch
- https://github.com/stared/thinking-in-tensors-writing-in-pytorch
- https://www.coursera.org/specializations/mathematics-for-machine-learning-and-data-science
- https://www.manning.com/books/math-and-architectures-of-deep-learning
- https://www.manning.com/books/deep-learning-with-python
- http://wordvec.colorado.edu/website_how_to.html