KAN: Kolmogorov–Arnold Networks

류지우·2024년 5월 9일

MLP의 차세대 대안으로 KAN(Kolmogorov=Arnold Networks)가 제안되고 있다. KAN에 대해서 간략하게나마 이해하고 있으면 좋을 것 같아 본 포스팅을 정리해본다.

Kolmogorov-Arnold 정리

복잡한 다변량 함수가 유니버셜 함수(특정 유형의 함수)의 합으로 표현될 수 있다.
즉, 복잡한 함수를 비교적 소수의 더 적은 값의 변수를 다루거나 더 적은 계산을 하는 연속 함수의 합으로 표현할 수 있다.

유니버셜 근사

특정 유형의 유니버셜 함수를 충분히 많이 조합되면 어떠한 복잡한 연속 함수도 표현할 수 있다.

KAN에서의 적용

신경망의 에지에 학습 가능한 활성화 함수를 배치한다. 이 활성화 함수가 네트워크가 학습되는 동안 최적화되며, 복잡한 입력 데이터를 처리하기 위해서 서로 다른 방식들로 조합될 수 있다. KAN의 각 에지에 배치된 활성화 함수들은 유니버셜 함수로서의 역할을 하여, 조합(= 함수를 합성함)되어 복잡한 다변수 함수를 모델링하고 근사할 수 있다.

MLP VS KAN

  1. 활성화 함수와 가중치 행렬

MLP: MLP에서 각 노드(뉴런)는 활성화 함수를 가진다. 이 활성화 함수는 노드의 입력 신호에 대한 반응을 결정하는 역할을 한다. 대표적으로 sigmoid, ReLU 등이 있다. 이 함수는 노드에 고정되어 있으며, 네트워크를 통해 흐르는 데이터에 따라 활성화 상태를 변화시킨다.
MLP의 각 레이어는 선형 가중치 행렬을 사용하여 입력 데이터를 변환한다. 이 가중치들은 학습 과정 중에 최적화되며, 데이터의 특징을 포착하는 데 핵심적인 역할을 한다.

KAN: KAN에서는 각 에지(연결)마다 활성화 함수가 있다. 이러한 활성화 함수는 학습 가능하며, 네트워크 학습 과정 중에 최적화된다. 이는 각 연결이 독특한 방식으로 데이터를 변환할 수 있음을 의미한다.
KAN은 전통적인 선형 가중치 행렬을 사용하지 않는다. 대신, 각 연결의 학습 가능한 활성화 함수가 데이터 변환의 주된 메커니즘으로 작용한다. 이는 전체 네트워크 구조를 단순화하고, 계산 효율성을 향상시키며, 더 민감하고 다양한 방식으로 입력 데이터에 반응할 수 있게 한다.

KAN 사용 시의 장점

에지에 학습 가능한 활성화 함수를 배치함으로써, 각 연결이 데이터의 특정 패턴이나 특징에 맞게 최적화 될 수 있다.

  • 더 적은 수의 노드와 레이어로도 유사하거나 더 나은 성능 달성 가능
  • PDE(부분 미분 방정식)을 푸는 데에 더 나은 성능을 보여줌
  • 더 간단한 형식의 네트워크로 설명력을 높일 수 있음

아직 이해하지 못한 부분

  • 나의 이해: 에지에 활성화 함수를 둔 다음, 그 함수를 합성하여 결과와의 오차를 계산하는 과정에서 함수의 파라미터를 학습시킨다.
  • 본질적으로 MLP와 뭐가 다른지 크게 모르겟음: 얘도 결국엔 가중치 행렬(함수의 계수같은 느낌)을 학습시키는거잖아? 조금 더 간단해지는 느낌 뿐인데
  • 유니버셜 함수의 파라미터를 조정해서 합성시키는 것만으로 복잡한 함수를 훈련시킬 수 있나? 그렇게해서 정확한 함수를 알 수 있게 된다면 이미지를 생성함에 있어도 성능이 엄청 증가하지 않을까?

References

https://towardsdatascience.com/kolmogorov-arnold-networks-kan-e317b1b4d075
https://news.hada.io/topic?id=14612

profile
인공지능학과 석사과정, knowledge-enhanced recommendation

0개의 댓글