Сеть Колмогорова-Арнольда

Материал из MachineLearning.

(Различия между версиями)
Перейти к: навигация, поиск
(обновление)
Строка 1: Строка 1:
-
# Сети Колмогорова-Арнольда
+
'''Сети Колмогорова-Арнольда''' (англ. ''Kolmogorov-Arnold Networks'', '''KAN''') — класс [[Искусственная нейронная сеть|искусственных нейронных сетей]], в которых линейные веса и фиксированные функции активации традиционных [[Многослойный перцептрон|многослойных перцептронов]] (MLP) заменены на обучаемые нелинейные функции, определённые на рёбрах графа сети.
-
 
+
-
**Сети Колмогорова-Арнольда** (англ. *Kolmogorov-Arnold Networks*, **KAN**) — класс искусственных нейронных сетей, в которых линейные веса и фиксированные функции активации традиционных [[Многослойный перцептрон|многослойных перцептронов]] (MLP) заменены на обучаемые нелинейные функции, определенные на рёбрах графа сети.
+
Архитектура KAN опирается на [[Теорема представления Колмогорова-Арнольда|теорему представления Колмогорова-Арнольда]], доказанную в 1957 году. В контексте современного машинного обучения и статистики KAN рассматриваются как мощное средство для [[Символьная регрессия|символьной регрессии]], решения дифференциальных уравнений и построения интерпретируемых моделей, выступая глубоким нелинейным обобщением [[Обобщённые аддитивные модели|обобщённых аддитивных моделей]] (GAM).
Архитектура KAN опирается на [[Теорема представления Колмогорова-Арнольда|теорему представления Колмогорова-Арнольда]], доказанную в 1957 году. В контексте современного машинного обучения и статистики KAN рассматриваются как мощное средство для [[Символьная регрессия|символьной регрессии]], решения дифференциальных уравнений и построения интерпретируемых моделей, выступая глубоким нелинейным обобщением [[Обобщённые аддитивные модели|обобщённых аддитивных моделей]] (GAM).
Строка 7: Строка 5:
В отличие от «чёрных ящиков» стандартных нейросетей, KAN позволяют извлекать аналитические формулы из данных, что сделало их одним из ключевых инструментов в области научного машинного обучения (Scientific Machine Learning, SciML) к середине 2020-х годов.
В отличие от «чёрных ящиков» стандартных нейросетей, KAN позволяют извлекать аналитические формулы из данных, что сделало их одним из ключевых инструментов в области научного машинного обучения (Scientific Machine Learning, SciML) к середине 2020-х годов.
-
---
+
== Историческая справка и мотивация ==
-
## Историческая справка и мотивация
+
=== 13-я проблема Гильберта и чистая математика ===
 +
История сетей KAN начинается не в компьютерных науках, а в чистой математике. В 1900 году Давид Гильберт сформулировал 23 проблемы, среди которых 13-я проблема касалась вопроса: ''можно ли любую непрерывную функцию трёх переменных представить в виде суперпозиции непрерывных функций двух переменных?''
-
### 13-я проблема Гильберта и чистая математика
+
Ответ был найден лишь спустя более чем полвека. В 1957 году советские математики [[Колмогоров, Андрей Николаевич|Андрей Николаевич Колмогоров]] и его ученик [[Арнольд, Владимир Игоревич|Владимир Игоревич Арнольд]] (которому на момент доказательства было всего 19 лет) показали, что суперпозиция функций одного переменного достаточна для представления функций любого числа переменных<ref name="Kolmogorov1957">Kolmogorov, A. N. (1957). ''On the representation of continuous functions of many variables by superposition of continuous functions of one variable and addition''. Doklady Akademii Nauk SSSR, 114(5), 953-956.</ref><ref name="Arnold1957">Arnold, V. I. (1957). ''On the representation of continuous functions of three variables by superpositions of continuous functions of two variables''. Doklady Akademii Nauk SSSR, 114(4), 679-681.</ref>.
-
История сетей KAN начинается не в компьютерных науках, а в чистой математике. В 1900 году Давид Гильберт сформулировал 23 проблемы, среди которых 13-я проблема касалась вопроса: *можно ли любую непрерывную функцию трёх переменных представить в виде суперпозиции непрерывных функций двух переменных?*
+
-
Ответ был найден лишь спустя более чем полвека. В 1957 году советские математики [[Колмогоров, Андрей Николаевич|Андрей Николаевич Колмогоров]] и его ученик [[Арнольд, Владимир Игоревич|Владимир Игоревич Арнольд]] (которому на момент доказательства было всего 19 лет) показали, что суперпозиция функций одного переменного достаточна для представления функций любого числа переменных.
+
Изначально теорема носила чисто экзистенциальный характер: она доказывала ''существование'' таких функций, но не давала конструктивного метода их построения, из-за чего долгое время не находила практического применения в вычислительной математике.
-
Изначально теорема носила чисто экзистенциальный характер: она доказывала *существование* таких функций, но не давала конструктивного метода их построения, из-за чего долгое время не находила практического применения в вычислительной математике.
+
=== Переход в машинное обучение ===
 +
В машинном обучении доминировал другой математический результат — [[Теорема универсальной аппроксимации|теорема универсальной аппроксимации]] (Cybenko, 1989)<ref name="Cybenko1989">Cybenko, G. (1989). ''Approximation by superpositions of a sigmoidal function''. Mathematics of Control, Signals and Systems, 2(4), 303-314.</ref>, которая обосновывала использование [[Многослойный перцептрон|многослойных перцептронов]] (MLP). В MLP веса на рёбрах линейны, а нелинейность вносится фиксированными [[Функция активации|функциями активации]] (ReLU, Tanh) в узлах. Это обеспечивает высокую вычислительную эффективность, но делает модели неинтерпретируемыми.
-
### Переход в машинное обучение
+
Прорыв произошёл в 2024 году, когда группа исследователей из MIT, Caltech и других университетов (Ziming Liu, Yixuan Wang и др.) опубликовала работу, в которой предложила заменить линейные веса MLP на обучаемые одномерные функции (параметризованные [[B-сплайн|B-сплайнами]])<ref name="Liu2024">Liu, Z., Wang, Y., Vaidya, S., Ruehle, F., Halbleib, A., Chen, Y., ... & Tegmark, M. (2024). ''KAN: Kolmogorov-Arnold Networks''. Advances in Neural Information Processing Systems (NeurIPS), 2024. arXiv:2404.19756.</ref>. Это позволило «оживить» теорему Колмогорова-Арнольда, превратив её из абстрактного математического факта в работающую архитектуру глубокого обучения.
-
В машинном обучении доминировал другой математический результат — [[Теорема универсальной аппроксимации|теорема универсальной аппроксимации]] (Cybenko, 1989), которая обосновывала использование [[Многослойный перцептрон|многослойных перцептронов]] (MLP). В MLP веса на рёбрах линейны, а нелинейность вносится фиксированными [[Функция активации|функциями активации]] (ReLU, Tanh) в узлах. Это обеспечивает высокую вычислительную эффективность, но делает модели неинтерпретируемыми.
+
-
Прорыв произошёл в 2024 году, когда группа исследователей из MIT, Caltech и других университетов (Ziming Liu, Yixuan Wang и др.) опубликовала работу, в которой предложила заменить линейные веса MLP на обучаемые одномерные функции (параметризованные [[B-сплайн|B-сплайнами]]) [^1]. Это позволило «оживить» теорему Колмогорова-Арнольда, превратив её из абстрактного математического факта в работающую архитектуру глубокого обучения.
+
== Математическое обоснование ==
-
---
+
=== Оригинальная теорема ===
 +
[[Теорема представления Колмогорова-Арнольда]] утверждает, что любую непрерывную функцию <math>f: [0,1]^n \to \mathbb{R}</math> многих переменных можно записать в виде:
-
## Математическое обоснование
+
<math display="block"> f(x_1, \dots, x_n) = \sum_{q=1}^{2n+1} \Phi_q \left( \sum_{p=1}^n \phi_{q,p}(x_p) \right) </math>
-
### Оригинальная теорема
+
где <math>\phi_{q,p}</math> — заранее известные, ''не зависящие от <math>f</math>'' функции одного переменного (внутренние функции), а <math>\Phi_q</math> — непрерывные функции одного переменного, зависящие от <math>f</math> (внешние функции).
-
[[Теорема представления Колмогорова-Арнольда]] утверждает, что любую непрерывную функцию $f: [0,1]^n \to \mathbb{R}$ многих переменных можно записать в виде:
+
-
$$ f(x_1, \dots, x_n) = \sum_{q=1}^{2n+1} \Phi_q \left( \sum_{p=1}^n \phi_{q,p}(x_p) \right) $$
+
=== Адаптация для машинного обучения ===
 +
В классической теореме внутренние функции фиксированы, что затрудняло её использование для аппроксимации данных. В архитектуре KAN это ограничение снимается: '''все функции на рёбрах сети делаются обучаемыми'''.
-
где $\phi_{q,p}$ заранее известные, *не зависящие от $f$* функции одного переменного (внутренние функции), а $\Phi_q$ — непрерывные функции одного переменного, зависящие от $f$ (внешние функции).
+
Если в стандартном MLP выходной сигнал узла вычисляется как <math>y = \sigma(\sum w_i x_i + b)</math>, где <math>\sigma</math> — фиксированная функция, а <math>w_i</math> обучаемые скаляры, то в KAN узел просто суммирует сигналы, а на рёбрах применяются обучаемые нелинейные функции <math>\phi_{i,j}</math>:
-
### Адаптация для машинного обучения
+
<math display="block"> \text{KAN}(\mathbf{x}) = \mathbf{\Phi} \otimes \mathbf{x} </math>
-
В классической теореме внутренние функции фиксированы, что затрудняло её использование для аппроксимации данных. В архитектуре KAN это ограничение снимается: **все функции на рёбрах сети делаются обучаемыми**.
+
-
Если в стандартном MLP выходной сигнал узла вычисляется как $y = \sigma(\sum w_i x_i + b)$, где $\sigma$ фиксированная функция, а $w_i$ — обучаемые скаляры, то в KAN узел просто суммирует сигналы, а на рёбрах применяются обучаемые нелинейные функции $\phi_{i,j}$:
+
где <math>\mathbf{x} = (x_1, \dots, x_n)^T</math> — входной вектор, <math>\mathbf{\Phi}</math> матрица размером <math>m \times n</math>, состоящая из одномерных функций <math>\phi_{i,j}</math>, а операция <math>\otimes</math> означает применение функций с последующим суммированием по строкам:
-
$$ \text{KAN}(\mathbf{x}) = \mathbf{\Phi} \otimes \mathbf{x} $$
+
<math display="block"> y_i = \sum_{j=1}^n \phi_{i,j}(x_j), \quad i = 1, \dots, m </math>
-
где $\mathbf{x} = (x_1, \dots, x_n)^T$ — входной вектор, $\mathbf{\Phi}$ — матрица размером $m \times n$, состоящая из одномерных функций $\phi_{i,j}$, а операция $\otimes$ означает применение функций с последующим суммированием по строкам:
+
=== Параметризация сплайнами ===
 +
Для параметризации функций <math>\phi_{i,j}(x)</math> в KAN используются [[B-сплайн|B-сплайны]]. Функция на ребре представляется как линейная комбинация базисных сплайнов:
-
$$ y_i = \sum_{j=1}^n \phi_{i,j}(x_j), \quad i = 1, \dots, m $$
+
<math display="block"> \phi(x) = \sum_{k} c_k B_k(x) </math>
-
### Параметризация сплайнами
+
где <math>c_k</math> — обучаемые коэффициенты (веса), а <math>B_k(x)</math> — базисные функции B-сплайна, определяемые набором узлов (knots). В процессе [[Обратное распространение ошибки|обратного распространения ошибки]] градиенты вычисляются как по коэффициентам <math>c_k</math>, так и по положениям узлов, что позволяет сети адаптировать форму функции к данным.
-
Для параметризации функций $\phi_{i,j}(x)$ в KAN используются [[B-сплайн|B-сплайны]]. Функция на ребре представляется как линейная комбинация базисных сплайнов:
+
-
$$ \phi(x) = \sum_{k} c_k B_k(x) $$
+
== Архитектура и принцип работы ==
-
 
+
-
где $c_k$ — обучаемые коэффициенты (веса), а $B_k(x)$ — базисные функции B-сплайна, определяемые набором узлов (knots). В процессе [[Обратное распространение ошибки|обратного распространения ошибки]] градиенты вычисляются как по коэффициентам $c_k$, так и по положениям узлов, что позволяет сети адаптировать форму функции к данным.
+
-
 
+
-
---
+
-
 
+
-
## Архитектура и принцип работы
+
Для инженера по машинному обучению важно понимать фундаментальное различие в топологии вычислений между MLP и KAN:
Для инженера по машинному обучению важно понимать фундаментальное различие в топологии вычислений между MLP и KAN:
-
1. **Расположение нелинейности:** В MLP нелинейность находится в *узлах* (нейронах), а рёбра осуществляют линейное преобразование. В KAN нелинейность находится на *рёбрах*, а узлы лишь суммируют входящие сигналы (линейная операция).
+
# '''Расположение нелинейности:''' В MLP нелинейность находится в ''узлах'' (нейронах), а рёбра осуществляют линейное преобразование. В KAN нелинейность находится на ''рёбрах'', а узлы лишь суммируют входящие сигналы (линейная операция).
-
2. **Отсутствие явных весов:** В KAN нет скалярных весов $w$ и смещений $b$ в привычном понимании. Их роль выполняют параметры сплайнов.
+
# '''Отсутствие явных весов:''' В KAN нет скалярных весов <math>w</math> и смещений <math>b</math> в привычном понимании. Их роль выполняют параметры сплайнов.
-
3. **Глобальная и локальная адаптация:** Сплайны позволяют KAN легко комбинировать глобальную аппроксимацию (за счёт базисных функций) и локальную адаптацию (за счёт изменения параметров в конкретных узлах сетки).
+
# '''Глобальная и локальная адаптация:''' Сплайны позволяют KAN легко комбинировать глобальную аппроксимацию (за счёт базисных функций) и локальную адаптацию (за счёт изменения параметров в конкретных узлах сетки).
-
---
+
== Статистическая и ML-интерпретация ==
-
## Статистическая и ML-интерпретация
+
=== Связь со статистикой ===
 +
С точки зрения статистики, KAN можно рассматривать как глубокое расширение [[Обобщённые аддитивные модели|обобщённых аддитивных моделей]] (GAM), предложенных Хейсти и Тибширани в 1986 году<ref name="Hastie1986">Hastie, T., & Tibshirani, R. (1986). ''Generalized Additive Models''. Statistical Science, 1(3), 297-310.</ref>. Если классический GAM моделирует отклик как сумму сглаженных функций предикторов <math>g(y) = \beta_0 + f_1(x_1) + \dots + f_p(x_p)</math>, то KAN позволяют строить иерархические суперпозиции таких сглаживаний, сохраняя при этом аддитивную структуру на каждом слое.
-
### Связь со статистикой
+
=== Интерпретируемость и символьная регрессия ===
-
С точки зрения статистики, KAN можно рассматривать как глубокое расширение [[Обобщённые аддитивные модели|обобщённых аддитивных моделей]] (GAM), предложенных Хейсти и Тибширани в 1986 году [^2]. Если классический GAM моделирует отклик как сумму сглаженных функций предикторов $g(y) = \beta_0 + f_1(x_1) + \dots + f_p(x_p)$, то KAN позволяют строить иерархические суперпозиции таких сглаживаний, сохраняя при этом аддитивную структуру на каждом слое.
+
Главное преимущество KAN для исследователя данных — прозрачность. Поскольку каждое ребро представляет собой одномерную функцию, её можно визуализировать. Более того, применив технику «очищения» (pruning) — обнуления незначимых сплайнов с последующей фитировкой оставшихся узлов простыми аналитическими функциями (синусами, экспонентами, полиномами) — инженеры могут извлекать из обученной сети точные физические или математические уравнения. Это делает KAN идеальным инструментом для [[Символьная регрессия|символьной регрессии]].
-
### Интерпретируемость и Символьная регрессия
+
== Области применения ==
-
Главное преимущество KAN для исследователя данных — прозрачность. Поскольку каждое ребро представляет собой одномерную функцию, её можно визуализировать. Более того, применив технику «очищения» (pruning) — обнуления незначимых сплайнов с последующей фитированием оставшихся узлов простыми аналитическими функциями (синусами, экспонентами, полиномами) — инженеры могут извлекать из обученной сети точные физические или математические уравнения. Это делает KAN идеальным инструментом для [[Символьная регрессия|символьной регрессии]].
+
-
---
+
К середине 2020-х годов KAN заняли прочную нишу в задачах, где важны интерпретируемость, точность на малых данных и интеграция с физическими законами:
-
## Области применения
+
# '''AI for Science (ИИ для науки):''' Решение [[Дифференциальные уравнения в частных производных|дифференциальных уравнений в частных производных]] (PDE). KAN показывают на порядок лучшую сходимость и точность по сравнению с MLP в задачах [[Физико-информированные нейронные сети|физико-информированных нейронных сетей]] (PINNs), благодаря гладкости сплайнов<ref name="Liu2024" />.
 +
# '''Медицина и биоинформатика:''' Построение интерпретируемых моделей для табличных данных, где врачу или биологу важно понимать, как именно признак влияет на прогноз.
 +
# '''Обучение с подкреплением (RL):''' Использование KAN в качестве агентов позволяет анализировать стратегии, выраженные в виде символьных формул.
 +
# '''Обработка временных рядов:''' Адаптации KAN (например, Time-series KAN) успешно применяются для прогнозирования, обеспечивая устойчивость к сдвигу распределений (concept drift).
-
К 2026 году KAN заняли прочную нишу в задачах, где важны интерпретируемость, точность на малых данных и интеграция с физическими законами:
+
== Ограничения и вычислительная сложность ==
-
 
+
-
1. **AI for Science (ИИ для науки):** Решение [[Дифференциальные уравнения в частных производных|дифференциальных уравнений в частных производных]] (PDE). KAN показывают на порядок лучшую сходимость и точность по сравнению с MLP в задачах [[Физико-информированные нейронные сети|физико-информированных нейронных сетей]] (PINNs), благодаря гладкости сплайнов [^1].
+
-
2. **Медицина и биоинформатика:** Построение интерпретируемых моделей для табличных данных, где врачу или биологу важно понимать, как именно признак влияет на прогноз.
+
-
3. **Обучение с подкреплением (RL):** Использование KAN в качестве агентов позволяет анализировать стратегии, выраженные в виде символьных формул.
+
-
4. **Обработка временных рядов:** Адаптации KAN (например, Time-series KAN) успешно применяются для прогнозирования, обеспечивая устойчивость к сдвигу распределений (concept drift).
+
-
 
+
-
---
+
-
 
+
-
## Ограничения и вычислительная сложность
+
Несмотря на математическую элегантность, KAN имеют ряд ограничений, о которых инженер должен помнить при выборе архитектуры:
Несмотря на математическую элегантность, KAN имеют ряд ограничений, о которых инженер должен помнить при выборе архитектуры:
-
* **Вычислительные затраты:** Вычисление сплайнов и их производных требует больше операций, чем простое сравнение с нулем в функции ReLU. На больших объёмах неструктурированных данных (например, в компьютерном зрении или NLP) KAN проигрывают MLP и [[Трансформер (архитектура)|трансформерам]] в скорости обучения из-за отсутствия таких же глубоко оптимизированных CUDA-ядер (хотя библиотеки вроде *EfficientKAN* значительно сократили этот разрыв).
+
* '''Вычислительные затраты:''' Вычисление сплайнов и их производных требует больше операций, чем простое сравнение с нулем в функции ReLU. На больших объёмах неструктурированных данных (например, в компьютерном зрении или NLP) KAN проигрывают MLP и [[Трансформер (архитектура)|трансформерам]] в скорости обучения из-за отсутствия таких же глубоко оптимизированных CUDA-ядер (хотя библиотеки вроде ''EfficientKAN'' значительно сократили этот разрыв).
-
* **Масштабирование:** На данный момент KAN не демонстрируют такого же безупречного скейлинга на триллионах токенов, как трансформеры. Их «стихия» — это задачи с умеренной размерностью, сложными физическими законами и требованием к интерпретируемости.
+
* '''Масштабирование:''' На данный момент KAN не демонстрируют такого же безупречного скейлинга на триллионах токенов, как трансформеры. Их «стихия» — это задачи с умеренной размерностью, сложными физическими законами и требованием к интерпретируемости.
-
* **Проклятие размерности:** Как и любые методы, опирающиеся на теорему Колмогорова-Арнольда, KAN могут требовать экспоненциального роста числа параметров при работе с данными сверхвысокой размерности без учёта их внутренней структуры.
+
* '''Проклятие размерности:''' Как и любые методы, опирающиеся на теорему Колмогорова-Арнольда, KAN могут требовать экспоненциального роста числа параметров при работе с данными сверхвысокой размерности без учёта их внутренней структуры.
-
---
+
== Практические рекомендации по применению ==
-
## Практическое руководство для инженера
+
Если вы специалист по данным и рассматриваете KAN для своего проекта, используйте следующий чек-лист:
-
 
+
# '''Используйте KAN''', если у вас табличные данные, небольшие выборки (data-scarce regime), или если вам нужно вывести аналитическую формулу из данных (например, для калибровки физической модели).
-
Если вы дата-сайентист и рассматриваете KAN для своего проекта, используйте следующий чек-лист:
+
# '''Используйте KAN''', если вы решаете задачи SciML (PDE, физика жидкостей, квантовая механика), где гладкость сплайнов дает выигрыш в градиентах.
-
1. **Используйте KAN**, если у вас табличные данные, небольшие выборки (data-scarce regime), или если вам нужно вывести аналитическую формулу из данных (например, для калибровки физической модели).
+
# '''Оставайтесь на MLP/Transformer''', если вы обучаете модель на миллионах изображений или текстов, где важна пропускная способность (throughput) и масштабирование на кластерах GPU.
-
2. **Используйте KAN**, если вы решаете задачи SciML (PDE, физика жидкостей, квантовая механика), где гладкость сплайнов дает выигрыш в градиентах.
+
-
3. **Оставайтесь на MLP/Transformer**, если вы обучаете модель на миллионах изображений или текстов, где важна пропускная способность (throughput) и масштабирование на кластерах GPU.
+
-
 
+
-
---
+
-
 
+
-
## См. также
+
 +
== См. также ==
* [[Теорема универсальной аппроксимации]]
* [[Теорема универсальной аппроксимации]]
* [[Обобщённые аддитивные модели]]
* [[Обобщённые аддитивные модели]]
Строка 112: Строка 93:
* [[Сплайн]]
* [[Сплайн]]
-
---
+
== Примечания ==
-
 
+
-
## Литература
+
-
 
+
-
[^1]: Liu, Z., Wang, Y., Vaidya, S., Ruehle, F., Halbleib, A., Chen, Y., ... & Tegmark, M. (2024). *KAN: Kolmogorov-Arnold Networks*. Advances in Neural Information Processing Systems (NeurIPS), 2024. arXiv:2404.19756. (Фундаментальная работа, предлагающая архитектуру KAN на основе сплайнов).
+
-
 
+
-
[^2]: Hastie, T., & Tibshirani, R. (1986). *Generalized Additive Models*. Statistical Science, 1(3), 297-310. (Классическая работа по статистике, описывающая аддитивные модели, которые являются концептуальными предшественниками KAN).
+
-
 
+
-
[^3]: Kolmogorov, A. N. (1957). *On the representation of continuous functions of many variables by superposition of continuous functions of one variable and addition*. Doklady Akademii Nauk SSSR, 114(5), 953-956. (Оригинальное математическое доказательство теоремы представления).
+
-
[^4]: Arnold, V. I. (1957). *On the representation of continuous functions of three variables by superpositions of continuous functions of two variables*. Doklady Akademii Nauk SSSR, 114(4), 679-681. (Работа В. И. Арнольда, завершившая доказательство 13-й проблемы Гильберта).
+
<references />
-
[^5]: Cybenko, G. (1989). *Approximation by superpositions of a sigmoidal function*. Mathematics of Control, Signals and Systems, 2(4), 303-314. (Базовая работа по теореме универсальной аппроксимации для MLP, с которой традиционно сравнивают KAN).
+
== Литература ==
 +
* ''Liu Z., Wang Y., Vaidya S., Ruehle F., Halbleib A., Chen Y., ... & Tegmark M.'' KAN: Kolmogorov-Arnold Networks // Advances in Neural Information Processing Systems (NeurIPS), 2024. — arXiv:2404.19756.
 +
* ''Hastie T., Tibshirani R.'' Generalized Additive Models // Statistical Science. — 1986. — Vol. 1, no. 3. — P. 297-310.
 +
* ''Kolmogorov A. N.'' On the representation of continuous functions of many variables by superposition of continuous functions of one variable and addition // Doklady Akademii Nauk SSSR. — 1957. — Vol. 114, no. 5. — P. 953-956.
 +
* ''Arnold V. I.'' On the representation of continuous functions of three variables by superpositions of continuous functions of two variables // Doklady Akademii Nauk SSSR. — 1957. — Vol. 114, no. 4. — P. 679-681.
 +
* ''Cybenko G.'' Approximation by superpositions of a sigmoidal function // Mathematics of Control, Signals and Systems. — 1989. — Vol. 2, no. 4. — P. 303-314.

Версия 17:46, 19 июля 2026

Сети Колмогорова-Арнольда (англ. Kolmogorov-Arnold Networks, KAN) — класс искусственных нейронных сетей, в которых линейные веса и фиксированные функции активации традиционных многослойных перцептронов (MLP) заменены на обучаемые нелинейные функции, определённые на рёбрах графа сети.

Архитектура KAN опирается на теорему представления Колмогорова-Арнольда, доказанную в 1957 году. В контексте современного машинного обучения и статистики KAN рассматриваются как мощное средство для символьной регрессии, решения дифференциальных уравнений и построения интерпретируемых моделей, выступая глубоким нелинейным обобщением обобщённых аддитивных моделей (GAM).

В отличие от «чёрных ящиков» стандартных нейросетей, KAN позволяют извлекать аналитические формулы из данных, что сделало их одним из ключевых инструментов в области научного машинного обучения (Scientific Machine Learning, SciML) к середине 2020-х годов.

Содержание

Историческая справка и мотивация

13-я проблема Гильберта и чистая математика

История сетей KAN начинается не в компьютерных науках, а в чистой математике. В 1900 году Давид Гильберт сформулировал 23 проблемы, среди которых 13-я проблема касалась вопроса: можно ли любую непрерывную функцию трёх переменных представить в виде суперпозиции непрерывных функций двух переменных?

Ответ был найден лишь спустя более чем полвека. В 1957 году советские математики Андрей Николаевич Колмогоров и его ученик Владимир Игоревич Арнольд (которому на момент доказательства было всего 19 лет) показали, что суперпозиция функций одного переменного достаточна для представления функций любого числа переменных[1][1].

Изначально теорема носила чисто экзистенциальный характер: она доказывала существование таких функций, но не давала конструктивного метода их построения, из-за чего долгое время не находила практического применения в вычислительной математике.

Переход в машинное обучение

В машинном обучении доминировал другой математический результат — теорема универсальной аппроксимации (Cybenko, 1989)[1], которая обосновывала использование многослойных перцептронов (MLP). В MLP веса на рёбрах линейны, а нелинейность вносится фиксированными функциями активации (ReLU, Tanh) в узлах. Это обеспечивает высокую вычислительную эффективность, но делает модели неинтерпретируемыми.

Прорыв произошёл в 2024 году, когда группа исследователей из MIT, Caltech и других университетов (Ziming Liu, Yixuan Wang и др.) опубликовала работу, в которой предложила заменить линейные веса MLP на обучаемые одномерные функции (параметризованные B-сплайнами)[1]. Это позволило «оживить» теорему Колмогорова-Арнольда, превратив её из абстрактного математического факта в работающую архитектуру глубокого обучения.

Математическое обоснование

Оригинальная теорема

Теорема представления Колмогорова-Арнольда утверждает, что любую непрерывную функцию <math>f: [0,1]^n \to \mathbb{R}</math> многих переменных можно записать в виде:

<math display="block"> f(x_1, \dots, x_n) = \sum_{q=1}^{2n+1} \Phi_q \left( \sum_{p=1}^n \phi_{q,p}(x_p) \right) </math>

где <math>\phi_{q,p}</math> — заранее известные, не зависящие от <math>f</math> функции одного переменного (внутренние функции), а <math>\Phi_q</math> — непрерывные функции одного переменного, зависящие от <math>f</math> (внешние функции).

Адаптация для машинного обучения

В классической теореме внутренние функции фиксированы, что затрудняло её использование для аппроксимации данных. В архитектуре KAN это ограничение снимается: все функции на рёбрах сети делаются обучаемыми.

Если в стандартном MLP выходной сигнал узла вычисляется как <math>y = \sigma(\sum w_i x_i + b)</math>, где <math>\sigma</math> — фиксированная функция, а <math>w_i</math> — обучаемые скаляры, то в KAN узел просто суммирует сигналы, а на рёбрах применяются обучаемые нелинейные функции <math>\phi_{i,j}</math>:

<math display="block"> \text{KAN}(\mathbf{x}) = \mathbf{\Phi} \otimes \mathbf{x} </math>

где <math>\mathbf{x} = (x_1, \dots, x_n)^T</math> — входной вектор, <math>\mathbf{\Phi}</math> — матрица размером <math>m \times n</math>, состоящая из одномерных функций <math>\phi_{i,j}</math>, а операция <math>\otimes</math> означает применение функций с последующим суммированием по строкам:

<math display="block"> y_i = \sum_{j=1}^n \phi_{i,j}(x_j), \quad i = 1, \dots, m </math>

Параметризация сплайнами

Для параметризации функций <math>\phi_{i,j}(x)</math> в KAN используются B-сплайны. Функция на ребре представляется как линейная комбинация базисных сплайнов:

<math display="block"> \phi(x) = \sum_{k} c_k B_k(x) </math>

где <math>c_k</math> — обучаемые коэффициенты (веса), а <math>B_k(x)</math> — базисные функции B-сплайна, определяемые набором узлов (knots). В процессе обратного распространения ошибки градиенты вычисляются как по коэффициентам <math>c_k</math>, так и по положениям узлов, что позволяет сети адаптировать форму функции к данным.

Архитектура и принцип работы

Для инженера по машинному обучению важно понимать фундаментальное различие в топологии вычислений между MLP и KAN:

  1. Расположение нелинейности: В MLP нелинейность находится в узлах (нейронах), а рёбра осуществляют линейное преобразование. В KAN нелинейность находится на рёбрах, а узлы лишь суммируют входящие сигналы (линейная операция).
  2. Отсутствие явных весов: В KAN нет скалярных весов <math>w</math> и смещений <math>b</math> в привычном понимании. Их роль выполняют параметры сплайнов.
  3. Глобальная и локальная адаптация: Сплайны позволяют KAN легко комбинировать глобальную аппроксимацию (за счёт базисных функций) и локальную адаптацию (за счёт изменения параметров в конкретных узлах сетки).

Статистическая и ML-интерпретация

Связь со статистикой

С точки зрения статистики, KAN можно рассматривать как глубокое расширение обобщённых аддитивных моделей (GAM), предложенных Хейсти и Тибширани в 1986 году[1]. Если классический GAM моделирует отклик как сумму сглаженных функций предикторов <math>g(y) = \beta_0 + f_1(x_1) + \dots + f_p(x_p)</math>, то KAN позволяют строить иерархические суперпозиции таких сглаживаний, сохраняя при этом аддитивную структуру на каждом слое.

Интерпретируемость и символьная регрессия

Главное преимущество KAN для исследователя данных — прозрачность. Поскольку каждое ребро представляет собой одномерную функцию, её можно визуализировать. Более того, применив технику «очищения» (pruning) — обнуления незначимых сплайнов с последующей фитировкой оставшихся узлов простыми аналитическими функциями (синусами, экспонентами, полиномами) — инженеры могут извлекать из обученной сети точные физические или математические уравнения. Это делает KAN идеальным инструментом для символьной регрессии.

Области применения

К середине 2020-х годов KAN заняли прочную нишу в задачах, где важны интерпретируемость, точность на малых данных и интеграция с физическими законами:

  1. AI for Science (ИИ для науки): Решение дифференциальных уравнений в частных производных (PDE). KAN показывают на порядок лучшую сходимость и точность по сравнению с MLP в задачах физико-информированных нейронных сетей (PINNs), благодаря гладкости сплайнов[1].
  2. Медицина и биоинформатика: Построение интерпретируемых моделей для табличных данных, где врачу или биологу важно понимать, как именно признак влияет на прогноз.
  3. Обучение с подкреплением (RL): Использование KAN в качестве агентов позволяет анализировать стратегии, выраженные в виде символьных формул.
  4. Обработка временных рядов: Адаптации KAN (например, Time-series KAN) успешно применяются для прогнозирования, обеспечивая устойчивость к сдвигу распределений (concept drift).

Ограничения и вычислительная сложность

Несмотря на математическую элегантность, KAN имеют ряд ограничений, о которых инженер должен помнить при выборе архитектуры:

  • Вычислительные затраты: Вычисление сплайнов и их производных требует больше операций, чем простое сравнение с нулем в функции ReLU. На больших объёмах неструктурированных данных (например, в компьютерном зрении или NLP) KAN проигрывают MLP и трансформерам в скорости обучения из-за отсутствия таких же глубоко оптимизированных CUDA-ядер (хотя библиотеки вроде EfficientKAN значительно сократили этот разрыв).
  • Масштабирование: На данный момент KAN не демонстрируют такого же безупречного скейлинга на триллионах токенов, как трансформеры. Их «стихия» — это задачи с умеренной размерностью, сложными физическими законами и требованием к интерпретируемости.
  • Проклятие размерности: Как и любые методы, опирающиеся на теорему Колмогорова-Арнольда, KAN могут требовать экспоненциального роста числа параметров при работе с данными сверхвысокой размерности без учёта их внутренней структуры.

Практические рекомендации по применению

Если вы специалист по данным и рассматриваете KAN для своего проекта, используйте следующий чек-лист:

  1. Используйте KAN, если у вас табличные данные, небольшие выборки (data-scarce regime), или если вам нужно вывести аналитическую формулу из данных (например, для калибровки физической модели).
  2. Используйте KAN, если вы решаете задачи SciML (PDE, физика жидкостей, квантовая механика), где гладкость сплайнов дает выигрыш в градиентах.
  3. Оставайтесь на MLP/Transformer, если вы обучаете модель на миллионах изображений или текстов, где важна пропускная способность (throughput) и масштабирование на кластерах GPU.

См. также

Примечания


Литература

  • Liu Z., Wang Y., Vaidya S., Ruehle F., Halbleib A., Chen Y., ... & Tegmark M. KAN: Kolmogorov-Arnold Networks // Advances in Neural Information Processing Systems (NeurIPS), 2024. — arXiv:2404.19756.
  • Hastie T., Tibshirani R. Generalized Additive Models // Statistical Science. — 1986. — Vol. 1, no. 3. — P. 297-310.
  • Kolmogorov A. N. On the representation of continuous functions of many variables by superposition of continuous functions of one variable and addition // Doklady Akademii Nauk SSSR. — 1957. — Vol. 114, no. 5. — P. 953-956.
  • Arnold V. I. On the representation of continuous functions of three variables by superpositions of continuous functions of two variables // Doklady Akademii Nauk SSSR. — 1957. — Vol. 114, no. 4. — P. 679-681.
  • Cybenko G. Approximation by superpositions of a sigmoidal function // Mathematics of Control, Signals and Systems. — 1989. — Vol. 2, no. 4. — P. 303-314.
Личные инструменты