Четыре грабли, один вихрь и 60% на CIFAR-10 с M0+

Продолжение цикла. До этого были базовые цифры и анонс 5 архитектур. Теперь - что сломалось, как чинили, что узнали.

Продолжение цикла. До этого были базовые цифры и анонс 5 архитектур. Теперь - что сломалось, как чинили, что узнали.

В прошлый раз я рассказал про GraphKAN, первую тернарную KAN с весами {-1, 0, +1}, которая выдала 96.15% на MNIST при 15 КБ. (ссылка).
С тех пор проект переродился. Рассказываю, что изменилось и почему.

Это продолжение поста “Две нейросети по 15 КБ” - там были базовые цифры. А тут уже личная история: как делалось, что пошло не так, и что выяснилось по пути.
Май 2024 года. Выходит статья “KAN: Kolmogorov-Arnold Networks”. И происходит то, что бывает раз в несколько лет - кто-то предлагает альтернативу MLP.
Не модификацию и не лайфхак - альтернативу.
В MLP каждый нейрон делает weight × input + bias, и все 80 лет развития - это вариации на тему “как сделать этот вес точнее, быстрее, разреженнее”. KAN предлагает другое: заменить линейный вес на обучаемую функцию. Вроде мелкий трюк, а на практике - меньше параметров при той же точности и встроенная интерпретируемость.
К 2026 году уже появились QuantKAN (4-битное квантование), KANtize (2-3-битные B-spline таблицы), BiKA (аппаратный акселератор, вдохновленный KAN). И все они, по сути, про одно - сделать KAN меньше, чтоб работал не только на GPU.
Граница в три бита - она же психологическая. Ниже 4 бит у всех начинается «а вдруг всё сломается». И знаете что? Обычно так и есть. Любой, кто квантовал нейросети в 2 бита, знает: точность падает. Не чуть-чуть - катастрофически.
Но {-1, 0, +1} - это даже не два бита, это log₂(3) ≈ 1.58 бита. Формально - между binary и ternary, а по ощущениям - чистое безумие.
Ну я и решил попробовать.

Тернарный KAN 15.4 КБ с точностью 96.15% на MNIST и система многошагового рассуждения VSA‑Reasoner без LLM с 90% точностью. Оба изобретения используют тернарные веса {-1,0,+1}, работают на CPU и упаковываются в десятки килобайт.