Трансформатор Колмогорова-Арнольда
Kolmogorov-Arnold Transformer
September 16, 2024
Авторы: Xingyi Yang, Xinchao Wang
cs.AI
Аннотация
Трансформеры являются основой современного глубокого обучения. Традиционно эти модели полагаются на слои многослойного персептрона (MLP) для смешивания информации между каналами. В данной статье мы представляем Кольмогорово-Арнольдовский трансформер (KAT), новую архитектуру, заменяющую слои MLP на слоях сети Кольмогорова-Арнольдова (KAN) для улучшения выразительности и производительности модели. Однако интеграция KAN в трансформеры - непростая задача, особенно при масштабировании. Конкретно мы выделяем три ключевые проблемы: (C1) Базовая функция. Стандартная функция B-сплайн, используемая в KAN, не оптимизирована для параллельных вычислений на современном оборудовании, что приводит к более медленным скоростям вывода. (C2) Неэффективность параметров и вычислений. KAN требует уникальной функции для каждой пары вход-выход, что делает вычисления чрезвычайно объемными. (C3) Инициализация весов. Инициализация весов в KAN особенно сложна из-за их обучаемых активационных функций, которые критически важны для достижения сходимости в глубоких нейронных сетях. Для преодоления упомянутых проблем мы предлагаем три ключевых решения: (S1) Рациональная основа. Мы заменяем функции B-сплайн рациональными функциями для улучшения совместимости с современными GPU. Реализуя это в CUDA, мы добиваемся более быстрых вычислений. (S2) Групповой KAN. Мы делим веса активации через группу нейронов, чтобы снизить вычислительную нагрузку без ущерба производительности. (S3) Инициализация, сохраняющая дисперсию. Мы тщательно инициализируем веса активации, чтобы гарантировать сохранение дисперсии активации на протяжении слоев. Благодаря этим конструкциям, KAT эффективно масштабируется и легко превосходит традиционные трансформеры на основе MLP.
English
Transformers stand as the cornerstone of mordern deep learning.
Traditionally, these models rely on multi-layer perceptron (MLP) layers to mix
the information between channels. In this paper, we introduce the
Kolmogorov-Arnold Transformer (KAT), a novel architecture that replaces MLP
layers with Kolmogorov-Arnold Network (KAN) layers to enhance the
expressiveness and performance of the model. Integrating KANs into
transformers, however, is no easy feat, especially when scaled up.
Specifically, we identify three key challenges: (C1) Base function. The
standard B-spline function used in KANs is not optimized for parallel computing
on modern hardware, resulting in slower inference speeds. (C2) Parameter and
Computation Inefficiency. KAN requires a unique function for each input-output
pair, making the computation extremely large. (C3) Weight initialization. The
initialization of weights in KANs is particularly challenging due to their
learnable activation functions, which are critical for achieving convergence in
deep neural networks. To overcome the aforementioned challenges, we propose
three key solutions: (S1) Rational basis. We replace B-spline functions with
rational functions to improve compatibility with modern GPUs. By implementing
this in CUDA, we achieve faster computations. (S2) Group KAN. We share the
activation weights through a group of neurons, to reduce the computational load
without sacrificing performance. (S3) Variance-preserving initialization. We
carefully initialize the activation weights to make sure that the activation
variance is maintained across layers. With these designs, KAT scales
effectively and readily outperforms traditional MLP-based transformers.Summary
AI-Generated Summary