SS, S., AR, K., & KP, A. (2024). Chebyshev polynomial-based kolmogorov-arnold networks: An efficient architecture for nonlinear function approximation. arXiv preprint arXiv:2405.07200. (https://arxiv.org/pdf/2405.07200)
Motivation
기존 MLP 기반 신경망은 3가지 한계점을 지님
- 비효율적인 파라미터 사용: 비선형함수를 근사하기위해서, 파라미터 수를 많이 증가시켜야함.
- 고정된 비선형성: 비선형을 만들기위해서 MLP와 고정된 activation function을 사용하는데, 복잡한 패턴을 표현하기 어려움
- 해석불가능
해결과제
- Kolomogorov-Arnold 표현정리 (KAN): 다변수 함수는 일반함수의 합성으로 표현가능
- Chebyshev 다항식: 고속 수렴성과 수치적 안정성있어 정밀하게 함수를 근사 시킬 수 있음.
Preliminary
1. Kolmogorov–Arnold Representation Theorem: 다변수함수(x여러 개)는 일변수 함수(x하나만)의 합성으로 표현 가능. (테일러급수 같은 느낌)
$f(x_{1},...,x_{n}) = \sum_{q=0}^{2n}\Phi_{q}(\sum_{p=1}^{n}\phi_{q,p}(x_{p}))$
- $f(x_{1},...x_{n})$: 좌측. 다변수 함수(n차원). 근사하고자 하는 표현의 대상함수
- $q=0,...,2n$: 외부 합산 인덱스. 총 2n+1개의 일변수함수($\Phi_{q}(\cdot)$)를 더함.
- $\Phi_{q}(\cdot)$: 일변수 함수. 전체적인 결과를 만드는 함수. 입력을 스칼라값.
- $\phi_{q,p}(x_{p})$: 하나의 $x_{p}$에 작용하는 일변수함수가 여러 개
- $\sum_{p=1}^{n} phi_{q,p}(x_{p}) $: 일변수함수의 선형결합. 각 입력 $x_{p}$에 대해서 다른 일변수함수를 적용한 후 더함
x1 ---- φ_q1(x1) \
+ --> Φ_q --> ▒
x2 ---- φ_q2(x2) / |
+--> Σ over q = f(x1, x2)
x1 ---- φ_q1(x1) \ |
+ --> Φ_q --> ▒
x2 ---- φ_q2(x2) /
2. Chebyshev Polynomial: 함수의 모향을 잘 흉내 내는, 특별한 다항식임. 테일러급수와 같은 방법으로 근사할 수 있지만, 오차가 크거나, 고차다항식에서 에러가 큼. 그래서 사용하는 것이 채비세브 다항식. 채비세브 다항식은 두 종류가 있으며, 일반적으로 [-1, 1]에서 오차가 골고루되어서 일부구간에서 오차가 커지는 특성 없음. 그리고, 다항식의 각각의 항이 직교하여 서로 영향을 거의 안주도록 설계됨. 직교성을 가지는 함수 $T_{n}(x), U_{n}(x)$의 조합으로 복잡한 함수를 안정적으로 근사시킴
- First kind: $T_{n}(x) = cos(n \cdot arccos(x))$
- Second kind: $U_{n}(x)$. $\frac{sin((n+1)arccos(x))}{\sqrt{1-x^{2}}}$.
Method: (D, )->(K,)으로 연산할 때, CKA을 이용해서 (D, )->(?, )->(K, ) 연산으로 엣지를 추가하여 여러 일변수함수의 조합으로
- Kolomogorov-Arnold 정리: 다변수함수를 일변수 함수의 합성+합으로 표현.
- Chbyshev polynomial: 일변수 함수(엣지)를 표현할 때 사용함. 함수의 근사 및 안정성을 확보.
KA정리에서는 일변수함수로 복잡한함수를 근사시킬 수 있으니까, x의 각벡터를 일변수함수로 만든다음에 적용할 수 있다는 개념이며, 이 때 일변수함수를 만들때, 단순히 고정값이 아니라 학습가능한 함수($Phi$)로 만들 수 있다는 것 (엣지 중심 구조), Chebyshev polynomial에서는 이 엣지들을 Chebyshev polynomial만들어서 수치적으로 안정화 (안정성)
- 입력 정규화: $tilde{x_{i}} = tanh(x_{i}) \in [-1, 1]$
- Chebyshev basis로 함수로 확장: 각 입력차원($x_{i}$)에 대해서 재귀식통해 t0~tn으로 중간다리 엣지로 만듬. $x_{i} = [T_{0}(x_{i}), T_{1}(x_{i}),...,T_{n}(x_{i})]$. 이 $T_{n}$들을 채비세브 기저벡터라고함.
- 각 입력-출력쌍의 엣지 함수를 계산: $\phi_{ij}(x_{i})=\sum_{k} \theta_{ijk}T_{k}(x_{i})$
- 노드에서 합산(kolmogorov): $y_{i}=\sum_{i}\phi_{ij}(x_{i})$
chebyshev basis가 x가 [-1,1]에서 사용되는꼴이니, x의 성분들을 정규화를 잘 해야하며, degree=3정도에서 유용해보임.