
UAT에서 LoRA까지: 신경망이 세상을 배우는 수학적 여정
1989년, 한 수학 정리가 증명했다 — 뉴런이 충분하면 어떤 함수든 흉내 낼 수 있다. 이 '보편 근사 정리'에서 출발하여, 깊이의 혁명, Transformer, 스케일링 법칙을 거쳐 LoRA까지 — 신경망이 세상의 모든 것을 배우는 수학적 여정을 따라간다.

1989년, 한 수학 정리가 증명했다 — 뉴런이 충분하면 어떤 함수든 흉내 낼 수 있다. 이 '보편 근사 정리'에서 출발하여, 깊이의 혁명, Transformer, 스케일링 법칙을 거쳐 LoRA까지 — 신경망이 세상의 모든 것을 배우는 수학적 여정을 따라간다.

ChatGPT가 시를 쓴다. AlphaFold가 단백질의 3차원 구조를 예측한다. 자율주행 자동차가 보행자와 신호등을 구분한다. 이 모든 것의 수학적 기반에는 1989년에 증명된 하나의 정리가 있다.
보편 근사 정리(Universal Approximation Theorem, UAT).
"뉴런이 충분하면 어떤 함수든 원하는 만큼 정밀하게 근사할 수 있다."
이 정리는 신경망 연구에 대한 수학적 면허증이었다. "신경망으로 할 수 있는 일에 원리적 한계는 없다"는 보장. 하지만 면허증만으로는 운전할 수 없듯, 이 정리만으로는 현대 AI를 만들 수 없었다.
이 글은 UAT에서 출발하여 현대 AI까지 이어지는 수학적 여정을 따라간다. 1885년 바이어슈트라스의 다항식 근사에서 시작해, 1989년 사이벤코의 증명을 거치고, 깊이의 혁명과 Transformer를 지나, 2021년 LoRA에 도달하는 여정이다.
이 글은 보편 근사 정리 상세 해설과 LoRA 논문 해부를 잇는 특집이다. 각 주제에 대해 더 깊이 알고 싶다면 해당 글을 참고하자.

AI를 이해하는 가장 강력한 관점 하나: 세상의 거의 모든 것은 함수로 표현할 수 있다.
함수는 단순하다 — 입력을 받아 출력을 내놓는 규칙이다. 그런데 놀랍게도, 우리가 "지능적"이라고 부르는 거의 모든 행위가 함수다:
| 작업 | 입력 | 출력 | 함수의 복잡도 |
|---|---|---|---|
| 날씨 예측 | 기온, 습도, 기압, 풍향... | "내일 비 올 확률 80%" | 매우 높음 |
| 번역 | "오늘 날씨가 좋다" | "The weather is nice today" | 매우 높음 |
| 이미지 인식 | 786,432개의 픽셀값 | "고양이" | 높음 |
| 주가 예측 | 과거 가격, 거래량, 뉴스... | "내일 종가 예측" | 극도로 높음 |
| ChatGPT | 이전 토큰들의 시퀀스 | 다음 토큰의 확률 분포 | 상상을 초월 |
문제는 이 함수들이 명시적으로 쓸 수 없을 만큼 복잡하다는 것이다. "고양이를 인식하는 함수"를 수식으로 쓸 수 있는 사람은 없다. 786,432개 입력변수에 대한 조건문을 수십억 개 나열해야 할 것이다.
그래서 수학자들과 공학자들은 다른 전략을 택했다: 함수를 직접 쓰지 않고, 근사한다.
복잡한 함수를 단순한 조각들의 합으로 표현하려는 시도는 수학의 오랜 전통이다.
독일 수학자 카를 바이어슈트라스(Karl Weierstrass) 가 1885년에 증명한 정리:
이것은 "단순한 조각(다항식)을 충분히 많이 합치면 복잡한 것(임의의 연속 함수)을 만들 수 있다"는 최초의 수학적 보장이었다. UAT의 130년 선배인 셈이다.
테일러 급수(Taylor Series): 매끄러운 함수를 다항식의 무한 합으로 표현한다.
푸리에 변환(Fourier Transform): 주기 함수를 사인/코사인의 합으로 분해한다.
둘 다 강력하지만 한계가 있다:
소련 수학자 안드레이 콜모고로프(Andrey Kolmogorov) 가 1957년에 증명한 놀라운 결과:
어떤 연속 다변수 함수든, 유한 개의 연속 1변수 함수의 합성과 덧셈만으로 정확히 표현할 수 있다.
수학적으로 우아했지만, 내부 함수가 극도로 병적(pathological)이어서 실용적 계산에는 쓸 수 없었다. 그러나 이 정리는 "기본 함수를 조합하면 어떤 함수든 만들 수 있다"는 철학적 씨앗을 뿌렸다 — 67년 뒤인 2024년에 KAN(Kolmogorov-Arnold Networks)으로 부활하게 된다.
테일러, 푸리에, 다항식 — 이 모든 전통적 근사법에는 공통된 한계가 있다:
근사의 기본 형태를 사람이 미리 결정해야 한다. 다항식? 삼각함수? 어떤 기저 함수를 쓸 것인가? 이 선택이 잘못되면 아무리 계수를 조정해도 좋은 근사를 얻을 수 없다.
신경망은 이 한계를 넘어선다. 기저 함수 자체를 데이터로부터 학습한다. 이것이 혁명적인 차이다.

뉴런 하나의 계산은 단순하다:
입력에 가중치를 곱하고 더한 뒤, 활성화 함수 σ를 통과시킨다. 활성화 함수가 왜 핵심일까?
비선형성 때문이다. 선형 함수의 합은 여전히 선형 함수다. 100층을 쌓아도 y = ax + b 형태를 벗어나지 못한다. 그러나 비선형 활성화 함수를 끼워 넣으면 — 이야기가 완전히 달라진다.
시그모이드는 "부드러운 계단 함수"다. 입력이 매우 작으면 0에 가깝고, 매우 크면 1에 가깝다. 중간에서 부드럽게 전환된다.
핵심 관찰: 가중치 w와 편향 b를 조절하면, 이 S자 곡선의 위치와 기울기를 자유롭게 바꿀 수 있다. w가 크면 계단에 가까워지고, w가 작으면 완만해진다. b는 계단의 위치를 좌우로 이동시킨다.
2012년 AlexNet 이후 딥러닝의 기본이 된 ReLU는 놀라울 정도로 단순하다. 음수면 0, 양수면 그대로. 이 "꺾은선" 하나하나가 모이면 어떤 곡선이든 근사하는 꺾은선 그래프를 만들 수 있다.
보편 근사 정리의 전체 역사에서 자세히 다뤘듯이, 1989년은 기적의 해였다. 거의 동시에 세 그룹이 같은 결론에 도달했다:
UAT에서 가장 중요하면서도 가장 많이 오해되는 부분이다.
UAT는 존재 정리(existence theorem)다. "그런 네트워크가 존재한다"고 말할 뿐, "그것을 어떻게 구성하는지" 또는 "학습 알고리즘으로 찾을 수 있는지"는 말하지 않는다.
비유하면: "세상 어딘가에 당신의 소울메이트가 존재한다"는 것과 "그 사람을 어떻게 만나는가"는 완전히 다른 문제다.
| UAT가 보장하는 것 | UAT가 보장하지 않는 것 |
|---|---|
| 근사가 존재한다 | 그것을 찾는 방법 |
| 충분한 뉴런이면 된다 | 구체적으로 몇 개가 필요한지 |
| 어떤 연속 함수든 가능하다 | 학습 데이터에서 일반화하는지 |
| 이론적 표현력 | 실전 학습 가능성 |
그럼에도 불구하고, UAT는 결정적으로 중요했다. 이것이 없었다면 — 신경망이 원리적으로 제한된 것이었다면 — 나머지 모든 연구(학습 알고리즘, 아키텍처 설계, 스케일링)를 할 이유 자체가 없었을 것이다.
아래 인터랙티브 컴포넌트에서 뉴런 수를 조절하며, 신경망이 함수를 근사해 가는 과정을 직접 관찰할 수 있다. 뉴런 1개로는 대략적인 모양만 잡히지만, 수를 늘릴수록 목표 함수에 점점 가까워지는 것을 확인하자.

원래 UAT는 단일 은닉층에 대한 정리다. 뉴런을 충분히 많이 넣으면 — 즉 네트워크를 충분히 넓게 만들면 — 어떤 함수든 근사할 수 있다.
그런데 실전에서는 정반대 방향으로 진화했다. 현대 딥러닝은 수백 개의 깊은 층을 사용한다. GPT-4는 120층 이상, ResNet은 최대 1,000층 이상. 왜?
텔가르스키(Telgarsky, 2016) 의 증명:
k³ 층의 네트워크가 표현할 수 있는 함수를, k 층의 네트워크로 근사하려면 뉴런이 지수적(2^k)으로 필요하다.
종이접기 비유: 종이를 한 번 접으면 두께가 2배. 50번 접으면 2⁵⁰ — 지구에서 태양까지의 거리. 넓이(너비)를 늘리는 것은 종이를 옆으로 넓히는 것이고, 깊이를 늘리는 것은 한 번 더 접는 것이다. 같은 재료로 지수적으로 더 복잡한 구조를 만들 수 있다.
깊은 네트워크가 효율적인 이유를 이미지 인식으로 이해해 보자:
각 층이 이전 층의 결과를 재사용하여 더 복잡한 개념을 만든다. 넓은 단일 층으로도 같은 것을 표현할 수는 있지만, 이런 계층적 재사용 없이 처음부터 모든 조합을 나열해야 하므로 천문학적인 뉴런이 필요하다.
Lu et al. (2017) 은 깊이에 대한 UAT를 증명했다:
n차원 입력에 대해, 너비가 n+4이기만 하면(고정), 충분히 깊은 ReLU 네트워크가 르베그 적분 가능 함수를 근사할 수 있다.
즉, 좁지만 깊은 네트워크도 보편 근사기가 된다. 이것은 현대 딥러닝의 실전 — 상대적으로 좁지만 매우 깊은 아키텍처 — 이 이론적으로도 정당하다는 것을 보여준다.
| 접근 | 원래 UAT (1989) | 현대 깊이 UAT (2017) |
|---|---|---|
| 전략 | 1층, 무한 너비 | 고정 너비, 무한 깊이 |
| 활성화 | 시그모이드 | ReLU |
| 효율성 | 뉴런 수 지수적 | 뉴런 수 다항적 |
| 실전 적합성 | 낮음 | 높음 (현대 아키텍처) |
신경망이 실전에서 작동하려면 세 가지가 모두 필요하다:
UAT는 첫 번째 기둥만 다룬다. 나머지 두 기둥은 별도의 — 그리고 훨씬 어려운 — 문제다.
UAT가 "좋은 가중치가 존재한다"고 보장해도, 경사하강법(SGD)이 그 가중치를 실제로 찾을 수 있는지는 별개 문제다. 손실 함수의 지형(landscape)은 수십억 차원의 복잡한 공간이다.
고전적 최적화 이론은 비관적이었다: "국소 최솟값(local minima)에 빠져서 전역 최적을 못 찾을 것이다."
그러나 실전에서 딥러닝은 잘 작동했다. 왜?
핵심 발견들:
전통 통계학의 상식: "파라미터가 많으면 과적합한다."
딥러닝의 현실: 파라미터가 더 많은 모델이 더 잘 일반화한다. 이것은 "이중 하강(double descent)" 현상으로 알려져 있다.
이것은 UAT가 예측하지 못한 — 그리고 아직 완전히 이해되지 않은 — 현상이다. UAT는 "표현할 수 있다"고 했지만, "왜 학습된 표현이 일반화까지 하는지"는 설명하지 못한다.

Kaplan et al. (2020, OpenAI) 이 발견한 경험적 법칙:
모델 성능은 (1) 파라미터 수 N, (2) 데이터 크기 D, (3) 연산량 C의 멱법칙(power law)을 따른다.
모델을 10배 키우면 손실이 약 17% 감소한다. 예측 가능한 개선이 가능해진 것이다.
2017년 Vaswani et al.의 "Attention Is All You Need"이 제안한 Transformer는 새로운 종류의 함수 근사기다.
기존 RNN이 "순차적으로 한 단어씩" 처리했다면, Transformer의 Self-Attention은 모든 단어가 동시에 서로를 참조한다. 이것이 왜 강력한가?
가장 놀라운 발견: 모델 크기를 키우면 어느 시점에서 전혀 새로운 능력이 갑자기 나타난다.
UAT는 "충분한 뉴런이 있으면 가능하다"고 했다. 스케일링 법칙은 "얼마나 충분한지"에 대한 경험적 답을 제시했다. 그리고 그 "충분한" 양은 — 수천억 개의 파라미터 — 로 밝혀졌다.
하지만 여기서 새로운 문제가 등장한다: 이 거대한 모델을 어떻게 맞춤화하는가?

GPT-3의 파라미터는 175,000,000,000개다. 이것을 특정 용도(법률 문서 작성, 코드 리뷰, 의료 상담)에 맞게 파인튜닝하려면:
10가지 용도로 쓰려면 3.5TB. 현실적으로 불가능하다.
Aghajanyan, Gupta, Zettlemoyer (2020) 의 논문 "Intrinsic Dimensionality Explains the Effectiveness of Language Model Fine-Tuning"이 결정적 관찰을 제시했다:
사전 학습된 모델을 파인튜닝할 때, 효과적인 파라미터 변화의 차원(intrinsic dimensionality)은 전체 파라미터 수보다 수천 배 낮다.
수학적으로 말하면: 파인튜닝에 의한 가중치 변화 ΔW는 저랭크(low-rank) 공간에 놓여 있다.
이것은 UAT와 어떻게 연결되는가?
LoRA 논문 해부에서 상세히 다뤘지만, 핵심을 요약하면:
기존 가중치 행렬 W₀ (d × d)를 직접 수정하는 대신:
여기서 B는 (d × r), A는 (r × d), r ≪ d.
예를 들어, d = 12,288 (GPT-3의 은닉 차원)이고 r = 8이면:
그리고 놀라운 사실: 성능은 풀 파인튜닝과 동등하거나 더 낫다.
| 벤치마크 | 풀 파인튜닝 | LoRA (r=8) |
|---|---|---|
| WikiSQL 정확도 | 73.8% | 73.4% |
| SAMSum ROUGE-L | 52.0% | 53.8% |
| E2E NLG BLEU | 68.2% | 69.9% |
LoRA의 성공은 후속 연구의 폭발을 촉발했다:
LoRA가 바꾼 현실:
Hugging Face에 등록된 LoRA 어댑터만 10만 개 이상. 개인 개발자와 소규모 팀도 자신만의 맞춤 AI를 만들 수 있는 시대가 열렸다.
67년 전 콜모고로프의 정리가 부활했다. Liu et al. (2024) 의 KAN(Kolmogorov-Arnold Networks)은 전통 MLP(Multi-Layer Perceptron)의 대안이다.
| 특성 | MLP (전통) | KAN (2024) |
|---|---|---|
| 학습 가능 요소 | 가중치 (숫자) | 활성화 함수 자체 (스플라인) |
| 이론적 기반 | UAT (Cybenko, 1989) | Kolmogorov-Arnold (1957) |
| 해석 가능성 | 블랙박스 | 함수 형태를 직접 관찰 가능 |
| 적합 분야 | 범용 (언어, 이미지) | 과학 계산, 물리 시뮬레이션 |
KAN은 "뉴런의 가중치가 아니라 엣지의 활성화 함수를 학습한다"는 아이디어로, 특히 과학 분야에서 해석 가능한 모델을 만드는 데 주목받고 있다.
UAT는 "모든 뉴런이 항상 작동하는" 밀집 네트워크에 대한 정리다. Mixture of Experts(MoE)는 다른 접근을 취한다: 입력에 따라 전문가(expert)의 일부만 활성화한다.
Mixtral 8×7B는 총 46.7B 파라미터를 가지지만, 추론 시에는 12.9B만 사용한다. "필요한 부분만 쓴다"는 효율성이 핵심이다. MoE에 대한 이론적 근사 보장은 아직 활발한 연구 주제다.
최근의 새로운 트렌드: 모델 크기를 키우는 대신, 추론 시간에 더 많이 계산한다. OpenAI의 o1 시리즈, Anthropic의 Claude의 확장된 사고(extended thinking)가 이 접근이다.
이것은 UAT의 관점에서 흥미로운 전환이다:
"뉴런을 늘리는 대신 생각의 깊이를 늘린다"는 것은 UAT가 직접 다루지 않는 새로운 차원이다.
이 글의 여정을 되돌아보자.
바이어슈트라스에서 LoRA까지, 140년에 걸친 이 여정의 본질은 하나다:
복잡한 함수를 단순한 조각들의 조합으로 표현하되, 그 조합을 점점 더 효율적으로 찾아가는 것.
바이어슈트라스는 "다항식으로 할 수 있다"고 했고, 사이벤코는 "뉴런으로 할 수 있다"고 했고, 현대 딥러닝은 "깊이와 어텐션으로 효율적으로 할 수 있다"고 했고, LoRA는 "이미 좋은 근사를 찾았으면 약간만 고치면 된다"고 했다.
UAT는 이 여정의 출발점이자 나침반이다. "원리적으로 가능하다"는 보장이 있었기에 연구자들은 "어떻게 효율적으로 할 것인가"에 집중할 수 있었다.
그리고 그 여정은 아직 끝나지 않았다. KAN, MoE, Test-Time Compute — 새로운 도구와 패러다임이 계속 등장하고 있다. 하지만 그 모든 것의 수학적 기반에는, 1989년의 그 정리가 여전히 놓여 있다.
뉴런이 충분하면, 어떤 함수든 근사할 수 있다. 그리고 세상의 모든 것은 함수다.
참고 문헌