View in Telegram
KAN: Kolmogorov-Arnold Networks Ziming Liu, Yixuan Wang, Sachin Vaidya, Fabian Ruehle, James Halverson, Marin Soljačić, Thomas Y. Hou, Max Tegmark Статья: https://arxiv.org/abs/2404.19756 Код: https://github.com/KindXiaoming/pykan Docs: https://kindxiaoming.github.io/pykan/ Twitter: https://x.com/zimingliu11/status/1785483967719981538 Yes, we GAN! Yes, we KAN! Свежую статью про KAN не расшарил за последние дни только ленивый (я — ленивый). Но обзоров по сути при этом довольно мало. Попробуем. Авторы предлагают альтернативы классическим многослойным персептронам (MLP) под названием сети Колмогорова-Арнольда (Kolmogorov-Arnold Networks, KANs). Идея в том, что фиксированная для нейрона в MLP функция активации в KAN переезжает в изменяемую часть и становится обучаемой функцией (параметризуется сплайном) вместо веса. Это вроде бы небольшое изменение приводит к большой разнице. Если отойти на шаг назад, то классические MLP опираются на Универсальную теорему аппроксимации (Universal Approximation Theorem, UAT), она же Теорема Цыбенко (https://web.njit.edu/~usman/courses/cs675_fall18/10.1.1.441.7873.pdf), говорящая, что однослойная сеть прямого распространения с сигмоидальной функцией активации может аппроксимировать любую непрерывную функцию многих переменных с любой заданной точностью при условии достаточного количества нейронов и правильного выбора весов. После этой теоремы было и много других её вариаций (https://en.wikipedia.org/wiki/Universal_approximation_theorem). Сам Джордж Цыбенко, кстати, ныне здравствующий американский математик и инженер (https://engineering.dartmouth.edu/community/faculty/george-cybenko) в том самом Дартмуте, где родился искусственный интеллект. Ну, полезная в общем теорема, даёт нам надёжный базис для использования нейросетей. Есть на свете другая интересная теорема, Теорема Колмогорова-Арнольда (Kolmogorov-Arnold representation theorem, KART) или Теорема суперпозиции (https://en.wikipedia.org/wiki/Kolmogorov%E2%80%93Arnold_representation_theorem). Эта теорема гласит, что непрерывная функция многих переменных может быть представлена суперпозицией непрерывных функций одной переменной. То есть как бы все функции многих переменных можно записать с использованием функций одной переменной и сложения. Из интересного, в UAT равенство приближённое, а в KART строгое. Если посмотреть на графы активаций, текущие через сеть, то в случае MLP они текут через обучаемые веса (находятся на рёбрах графа) и попадают в фиксированные функции активации (находятся в узлах). В случае KAN они текут через обучаемые функции активации на рёбрах (линейных весов как таковых уже нет), а в узлах просто суммируются. Обучаемые одномерные функции активации на рёбрах графа параметризуются B-сплайнами. Для простого двуслойного KAN для n входов есть 2n+1 скрытых узлов, где происходят суммирования двух функций на рёбрах, которые затем суммируются в одно число через другие обучаемые рёбра. На картинке это проще, чем текстом. Эту архитектуру KAN авторы обобщают до произвольных глубины и ширины сети. Оригинальная версия теоремы Колмогорова-Арнольда соответствует двухуровневой KAN (может быть описана списком размерностей слоёв [d, 2d+1, 1]), более общей версии теоремы для более глубоких сетей вроде как неизвестно, поэтому до конца не ясно как именно углублять и расширять. Но по аналогии с MLP они предлагают рецепт — simply stack more KAN layers! Кто хочет более технической нотации, в работе расписаны матрицы функций, описывающие слои KAN, а также композиция нескольких слоёв. Все операции внутри KAN дифференцируемы, так что его можно обучать бэкпропом.
Love Center - Dating, Friends & Matches, NY, LA, Dubai, Global
Love Center - Dating, Friends & Matches, NY, LA, Dubai, Global
Find friends or serious relationships easily