PSSA: Експериментален не-трансформърен езиков модел, написан от нулата на Rust

Снимка: GitHub / Sparticle62ops
В платформата GitHub и технологичната общност Hacker News бе представен проектът PSSA (Progressive State Space Architecture) – експериментален езиков модел, написан изцяло от нулата на програмния език Rust без използването на Python или съществуващи библиотеки за дълбоко обучение [1]. Проектът демонстрира нарастващия интерес към не-трансформърни невронни архитектури със субквадратична изчислителна сложност [1].

Инфографика: Светни.ме
Архитектура на PSSA и предимства на чистия Rust код
Класическата архитектура Transformer страда от фундаментално ограничение: механизмът за внимание изисква квадратична изчислителна мощност и памет спрямо дължината на контекста [1]. PSSA преодолява този проблем чрез използването на прогресивни пространства на състоянията (State Space Models), при които вътрешното състояние се обновява в линейно време с постоянна памет на токен [1].
Имплементацията на чист Rust елиминира изцяло нуждата от тежкия софтуерен стек на Python и PyTorch [1]. Програмата се компилира до компактен самостоятелен бинарен файл с минимален отпечатък в оперативната памет, което я прави идеална за изпълнение върху вградени системи, микроконтролери и периферни устройства [1].
Липсата на механизъм за автоматично събиране на боклука (garbage collection) в Rust гарантира детерминистично време за реакция без паузи, което е от решаващо значение при системи за реално време и роботика [1].
Математически и софтуерен анализ на не-трансформърните архитектури: Пространства на състоянията и детерминизъм в Rust
Успехът на проекта PSSA разкрива важна тенденция в съвременните изследвания: търсенето на алтернативи на трансформърния монопол. Въпреки че модели като GPT и Claude доминират на върха благодарение на мащабни клъстери, тяхната енергийна и паметова неефективност ги прави трудни за внедряване в автономни периферни устройства.
Пространствата на състоянията предлагат елегантно математическо решение чрез формулиране на последователностите като непрекъснати линейни системи. Това позволява извеждане на токени с постоянна скорост, независимо дали обработваният текст съдържа десет или десет хиляди думи, без да се налага поддържането на огромен KV кеш.
От системна гледна точка използването на Rust за разработка на дълбоко обучение от нулата подчертава зрелостта на езика за научни и високопроизводителни изчисления. Възможността за директно използване на SIMD векторни инструкции и прецизен контрол върху подравняването на данните в паметта доказва, че малки, оптимизирани модели могат да постигнат забележителни резултати без гигаватови центрове за данни.