MLP는 죽었다? Kolmogorov-Arnold Networks (KAN) 완벽 해부! 학습 가능한 활성화 함수의 혁명


핵심 요약

“신경망의 기본 설계 철학이 바뀌고 있습니다.”

2024년 4월 Ziming Liu 등 연구자들이 발표한 Kolmogorov-Arnold Networks (KAN)는 지난 70년간 당연시된 다층 퍼셉트론(MLP)의 패러다임을 뒤집었습니다.
MLP는 고정된 활성화 함수를 노드에 배치하지만, KAN은 학습 가능한 활성화 함수(B-Spline)를 엣지에 배치합니다.
이것이 무엇을 의미하는지 보세요: 실제 성과에 따르면 KAN 3B 파라미터 모델이 MLP 10B 모델과 동등하거나 더 나은 성능을 달성했습니다.
더 놀라운 것은, 2025년 최신 연구에서 KAN이 TinyML 환경에서 MLP보다 10배 작은 메모리(693 바이트 vs 6,807 바이트)로 실행되며, 해석 가능한 수학 공식까지 생성한다는 점입니다.

이 포스팅에서는 Kolmogorov-Arnold 표현 정리, B-Spline 메커니즘, MLP vs KAN 상세 비교, 파라미터 효율성의 정체, 그리고 실제 응용 사례와 미래까지 완벽하게 분석합니다.



1. Kolmogorov-Arnold 표현 정리: 수학의 기초부터 시작

1-1. 정리의 역사와 의미

1957년, 러시아 수학자 Andrey Kolmogorov의 혁신:

f(x1,x2,,xn)=q=02nΦq(p=1nϕq,p(xp))f(x_1, x_2, \ldots, x_n) = \sum_{q=0}^{2n} \Phi_q\left(\sum_{p=1}^{n} \phi_{q,p}(x_p)\right)

핵심 내용:

  • 모든 연속 다변수 함수는 유한개의 단변수 함수의 합성으로 표현 가능
  • (ϕq,p\phi_{q,p}): 내부 함수 (univariate)
  • (Φq\Phi_q): 외부 함수 (univariate)
  • 차원의 저주를 우아하게 극복

쉽게 말해:

“100차원 입력을 받아 아주 복잡하게 계산하는 함수도, 실은 1차원 함수 조각들의 조합으로 표현할 수 있다”는 뜻입니다!

1-2. Universal Approximation Theorem과의 차이

MLP가 믿는 것 (Universal Approximation Theorem):

“충분히 크기가 크면, 숨겨진 층이 하나인 신경망도 모든 연속 함수를 근사할 수 있다”

문제:

  • “충분히 크다” = 매우 클 수 있음
  • 효율성에 대해서는 침묵
  • 파라미터 낭비 가능

KAN이 믿는 것 (Kolmogorov-Arnold 표현 정리):

“모든 연속 함수는 단변수 함수들의 합성으로 표현 가능하다”

이점:

  • 구조적 보장: 이론적으로 최소 복잡도 알려짐
  • 효율적: 파라미터 수 명시적 한계 존재
  • 해석 가능: 단변수 함수는 시각화 가능

1-3. 70년의 간극: 왜 이제야 신경망에?

역사적 아이러니:

1957년 정리 발표 → 1958년 퍼셉트론 발명 (Universal Approximation 기반) → 70년간 Kolmogorov-Arnold 무시 → 2024년 갑자기 재발견?

이유:

최근 분석:

“1957년에는 단변수 함수를 매개변수화하는 좋은 방법이 없었습니다. 하지만 현대의 B-Spline과 미분 가능한 프레임워크(PyTorch, TensorFlow)가 있으면 완전히 다릅니다!”


2. MLP의 한계: 왜 70년 전 설계가 한계에 부딪혔을까?

2-1. MLP의 기본 구조

전형적 MLP 레이어:

h(l+1)=σ(Wlhl+bl)h^{(l+1)} = \sigma(W^l h^l + b^l)
  • (WlW^l): 선형 가중치 행렬
  • (σ\sigma): 고정된 활성화 함수 (ReLU, Sigmoid 등)
  • 핵심: (σ\sigma)는 학습 불가능, 모든 뉴런이 같은 함수 사용

2-2. 고정 활성화 함수의 문제

문제 1: 표현력 낭비

ReLU: (max(0,x)\max(0, x)) – 매우 단순한 형태

“복잡한 비선형 패턴도 이 단순한 함수로만 표현해야 한다”는 뜻입니다. 마치 모든 아티스트가 샤프 펜만 가지고 그림을 그리는 것과 같습니다.

문제 2: 깊이의 필요성

복잡한 함수를 표현하려면:

  • MLP: 매우 깊은 네트워크 필요
  • 결과: 파라미터 폭증, 훈련 불안정, 메모리 낭비

문제 3: 비효율적 확장

더 나은 성능 위해:

  1. 더 많은 층 추가 → 그래디언트 소실/폭증
  2. 더 많은 뉴런 추가 → 메모리 낭비
  3. 더 오래 훈련 → 계산 시간 증가

3. KAN의 혁신: 학습 가능한 활성화 함수의 발명

3-1. 기본 개념

MLP의 구조:

노드=σ(노드입력)\text{노드} = \sigma(\text{노드} \text{입력})

KAN의 혁신:

출력=iϕi(입력i)\text{출력} = \sum_i \phi_i(\text{입력}_i)

핵심 차이:

항목MLPKAN
활성 함수 위치노드에엣지에
활성 함수 유형고정 (ReLU 등)학습 가능 (B-Spline)
선형 가중치있음 (W, b)없음
필요 깊이매우 깊음얕음

3-2. 수식 표현

정식 정의:

KAN 레이어:

(KAN)(x)=i=1ninϕi(xi)(KAN)(x) = \sum_{i=1}^{n_{in}} \phi_i(x_i)

여기서:

  • (ϕi\phi_i): 학습 가능한 단변수 함수
  • 각 (ϕi\phi_i)는 B-Spline으로 매개변수화됨
  • 입력 특징 각각이 독립적으로 변환됨

전체 KAN 네트워크:

f(x)=(KAN(L)KAN(2)KAN(1))(x)f(x) = (KAN^{(L)} \circ \cdots \circ KAN^{(2)} \circ KAN^{(1)})(x)
  • 여러 KAN 레이어를 조합
  • 각 레이어가 더 복잡한 함수 학습

3-3. 왜 “엣지에 활성화 함수”인가?

수학적 이유:

Kolmogorov-Arnold 정리는:

  • 각 입력 변수독립적으로 변환 (univariate function)
  • 그 결과들을 합산

이를 신경망으로 표현하면:

  • 입력 → 활성화 함수 → 합산 = 엣지!

철학적 이유:

“선형 가중치는 이미 입력을 조합합니다. 그 조합에 또 고정된 비선형을 씌우는 것(MLP)보다, 각 입력을 독립적으로 비선형 변환하는 것(KAN)이 더 자연스럽습니다”


4. B-Spline: KAN의 핵심 동작 원리

4-1. B-Spline이란?

정의:

B-Spline (Basis Spline)은 구간별 다항식으로 이루어진 부드러운 곡선입니다.

특징:

  1. 부드러움: 모든 점에서 미분 가능
  2. 국소성: 제어점 변경이 근처에만 영향
  3. 매개변수화: 제어점으로 완전히 정의됨

4-2. KAN에서 B-Spline 사용

구현 방식:

각 엣지의 활성화 함수:

ϕi(x)=wb(x)+spline(x)\phi_i(x) = w \cdot b(x) + spline(x)
  • (b(x)b(x)): 기저 함수 (residual connection처럼 작동)
  • (spline(x)spline(x)): 학습 가능한 B-Spline
  • (ww): 학습 가능한 스케일 파라미터

B-Spline의 형태:

spline(x)=jcjBj(x)spline(x) = \sum_{j} c_j B_j(x)
  • (cjc_j): 학습 가능한 제어점 좌표
  • (Bj(x)B_j(x)): B-Spline 기저 함수 (고정, 미분 가능)

4-3. 훈련 과정

훈련 메커니즘:

  1. 초기화: 제어점을 0 근처로 초기화 ((cj𝒩(0,0.12))(c_j \sim \mathcal{N}(0, 0.1^2)))
  • 처음엔 spline ≈ 0, 따라서 KAN ≈ 기저 함수 (안정적 시작)
  1. 역전파: 그래디언트 ∇Loss로 제어점 업데이트
  • (cjcjηLosscjc_j \leftarrow c_j – \eta \frac{\partial Loss}{\partial c_j})
  1. 최적화: Adam, L-BFGS 등 표준 옵티마이저 사용
  • PyTorch, TensorFlow의 자동 미분 활용

4-4. 국소성의 마법

B-Spline의 국소 성질:

제어점 하나를 움직이면, 그 근처 구간만 변합니다. 멀리 있는 구간은 영향 받지 않습니다.

KAN 훈련의 장점:

“제어점들이 간섭하지 않으므로, 이미 학습된 정보를 보존하면서 새로운 특징을 추가할 수 있습니다”


5. 정량적 성능: MLP vs KAN 진짜 비교

5-1. 파라미터 효율성

공식 벤치마크:

함수 피팅 작업:

함수MLP 파라미터KAN 파라미터감소율
~1,000~10090%
sin(x)exsin(x)*e^x~10,000~50095%
복잡 PDE~1M~100K90%

5-2. 훈련 속도와 수렴

실제 측정 데이터:

메모리 효율성:

환경MLPKAN
TinyML (마이크로컨트롤러)6,807 bytes693 bytes
메모리 절감기준90% ↓
추론 속도1ms0.95ms
에너지동등동등

놀라운 발견:

  • KAN이 10배 작으면서도 추론 시간은 거의 같음
  • 메모리 부족 환경에서 KAN만 실행 가능

5-3. 정확도 비교

다양한 작업 벤치마크:

회귀 작업:

데이터셋MLPKAN우수
Boston HousingMSE 21.5MSE 18.2KAN ✅
ConcreteMSE 35.2MSE 28.9KAN ✅
EnergyMSE 12.3MSE 9.8KAN ✅

분류 작업:

데이터셋MLPKAN
Iris97.2%98.6%
Wine95.1%97.3%
Cancer96.8%98.1%

5-4. KAN이 항상 이기는 것은 아니다

최근 중요 연구:

KAN이 어려운 경우:

함수 유형MLPKAN결과
불규칙 함수좋음나쁨MLP 우수 ⚠️
불연속 함수중간매우 나쁨MLP 우수 ⚠️
고잡음 데이터중간나쁨MLP 우수 ⚠️

핵심 발견:

“KAN은 규칙적이고 부드러운 함수에서 최고 성능을 보입니다. 하지만 불규칙하거나 불연속인 함수에서는 MLP가 더 강건합니다.”


6. 실제 응용과 미래 전망

6-1. 현재 성공 사례

1. 과학 계산 (PDE 해결)

Physics-Informed KAN:

  • 기존 PINN (MLP 기반): 불안정
  • PIKAN (KAN 기반): 안정적, 정확도 동등, 파라미터 90% 감소

2. 환경 모니터링

호수 클로로필 예측:

  • 시계열 예측에서 LSTM, GRU 능가
  • 부드러운 비선형 추세 완벽 포착

3. 의료 응용

DNA 서열 분석:

  • 기존 Unet의 MLP → LKAN (Linear KAN)로 교체
  • 파라미터: 440M → 820M 증가 (하지만 정확도 향상)
  • 중요 결론: 깊은 KAN이 더 좋음

4. 임베디드 시스템

전기차 배터리 상태 추정 (SOC):

  • 마이크로컨트롤러에서 실시간 추론
  • MLP 불가능, KAN 가능 (메모리 제약)
  • 상태 모니터링의 새로운 가능성

6-2. 현재의 도전과제

문제 1: 훈련 속도

실제 비교:

  • 데이터 크기 작음: KAN 훈련 15배 느림
  • 이유: B-Spline 계산 복잡도 높음

문제 2: 스케일 불확실성

ImageNet 같은 대규모 이미지 작업에서:

  • KAN 성능 불명확
  • 훈련 시간 과도할 수 있음

문제 3: 하이퍼파라미터 민감도

연구 결과:

  • Grid size, Spline degree 선택이 중요
  • 자동화된 최적화 필요 (GA-KAN 등)

6-3. 미래 방향

1. Hybrid 아키텍처

  • CNN의 합성곱 + KAN의 완전 연결층
  • Vision Transformer의 Self-Attention + KAN 출력층

2. GPU 최적화

  • 현재: CPU/GPU 친화적이 아님
  • 미래: CUDA 커널, Tensor Core 활용

3. 자동 구조 탐색 (NAS)

  • GA-KAN처럼 최적 구조 자동 발견
  • 인간 개입 최소화

4. 대규모 언어 모델

  • Transformer의 MLP 교체 시도 (현 진행 중)
  • 추론 시간 vs 훈련 시간 균형

정리: 핵심 포인트

Kolmogorov-Arnold 정리: 70년 된 수학, 이제야 신경망에 적용

패러다임 전환: 노드의 고정 활성화 → 엣지의 학습 활성화

B-Spline: 미분 가능하고 국소적인 표현

극적 효율성: 동등 성능에서 파라미터 90% 감소

TinyML 가능: 마이크로컨트롤러에서 처음 실행 가능한 수준의 성능

한계 인식: 불규칙 함수에선 MLP가 여전히 우수


FAQ: 자주 묻는 질문

Q1. KAN이 MLP를 완전히 대체할까요?

A. 아직 아닙니다:

  • ✅ 과학 계산, PDE 해결: KAN 적극 추천
  • ⚠️ 대규모 이미지: 불확실 (훈련 시간 문제)
  • ⚠️ 불규칙한 데이터: MLP가 강건함
  • 미래: Hybrid 모델이 표준이 될 가능성

Q2. 왜 지금까지 안 썼을까요?

A. 기술 문제:

  • 1957년 정리 발표 시 B-Spline 매개변수화 어려움
  • PyTorch/TensorFlow 같은 자동 미분 프레임워크 필요
  • GPU 최적화 아직 미흡 (2024년 나온 기술)

Q3. 훈련이 느리다고 했는데 괜찮을까요?

A. 상황에 따라:

  • 과학 계산: 한 번만 훈련, 느려도 괜찮음
  • 생산 모델: 빠른 훈련 필요 → 현재 KAN 고민
  • 미래: GPU 최적화로 해결될 예정

Q4. 해석 가능성이 정말 좋을까요?

A. 매우 좋습니다:

  • 각 엣지의 B-Spline 시각화 가능
  • 수학 공식 추출 가능 (예: KAN이 (x2x^2) 발견)
  • 하지만 깊은 KAN은 복합도 증가

Q5. 작은 모델에만 좋은 건 아닐까요?

A. 맞습니다 (현재):

  • 작은 모델 (
  • 중간 모델 (1-100M): 비슷
  • 큰 모델 (>100M): MLP가 나을 수 있음
  • 이유: KAN 계산 복잡도

외부 참고 자료

KAN을 더 깊게 배우고 싶다면:


정리: 이 글에서 배운 것

Kolmogorov-Arnold 정리: 70년 전 수학이 오늘의 신경망 혁신

MLP의 근본 한계: 고정 활성화 함수로 인한 표현력 낭비

KAN의 혁신: 각 엣지에 학습 가능한 B-Spline 배치

극적 효율성: 파라미터 90% 감소, 10배 작은 메모리

현실적 한계: 불규칙 함수, 큰 모델에선 아직 MLP가 우수

미래: Hybrid 아키텍처와 GPU 최적화로 보편화 예상

다음 포스팅에서는 “AI의 한 걸음 더: 신경망을 넘어 새로운 학습 패러다임”에 대해 자세히 알아봅니다. KAN 같은 혁신 이후 AI 아키텍처의 미래가 어떻게 펼쳐질지 파헤쳐 봅시다!


관련 포스팅:

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다