Програмування ваг: правка моделі без навчання
программирование весовлатентное пространстворедактирование моделей
Що саме програмують у нейромережі
Мене тут цікавить зміна рівня абстракції: замість промптів або звичайного навчання пропонується безпосередньо читати й змінювати параметри моделі. У технічній статті Weight-Space Programming у блозі Rikiyat цей підхід описано через чотири класи завдань: читання, виправлення, запис і покращення нейромереж без традиційного градієнтного навчання.
Базова операція виглядає просто: W' = W + ΔW. Можна змінити окремий нейрон, рядок матриці, attention head, вибраний тензор або додати структуровану дельту параметрів. Сам запис у чекпойнт тривіальний; складність полягає в тому, щоб знайти ділянку мережі, яка справді керує потрібною поведінкою.
Латентне програмування працює інакше. Воно змінює приховане представлення під час інференсу, наприклад за схемою h' = h + αv, де v задає напрям поведінки, а α регулює силу втручання. Така правка зазвичай оборотна й може вмикатися умовно, тоді як зміна ваг зберігається в новому чекпойнті.
Межа з fine-tuning при цьому розмита. LoRA можна розглядати як обмежену форму програмування ваг: модель отримує низькорангове оновлення W' = W + AB, але знаходять його оптимізацією на даних. Пряме редагування намагається вказати або знайти ΔW без повного циклу навчання.
Станом на листопад 2026 року я б вважав це дослідницьким напрямом, а не готовою заміною fine-tuning. У матеріалах згадується WSPBench, який розділяє роботу без інструментів, аналіз ваг та інструментовані умови, але самі результати варто сприймати як демонстрації, а не як усталену виробничу практику.
Де підхід корисний і де він ламається
Основна цінність тут реальна: латентне втручання дає змогу швидко перевірити гіпотезу, а правка ваг потім робить знайдену поведінку постійною. Це особливо цікаво для локального виправлення помилки, перенесення task vector, об'єднання адаптерів і роботи з відомим внутрішнім контуром моделі.
Але локальна за формою правка не гарантує локального ефекту. Один нейрон або вектор може брати участь у кількох функціях, нормалізація здатна послабити втручання, а невелика дельта після квантування чи зміни точності дасть інший результат. Ще гірша прихована інтерференція: цільовий тест покращується, а непов'язані здібності деградують.
Я б спочатку перевіряв напрям через оборотний activation steering, а потім вимірював узагальнення, стійкість до перефразування та збереження сторонніх можливостей. Лише після цього є сенс переносити втручання в розріджену або структуровану ΔW. Найскладніше в програмуванні ваг зараз не записати нові числа, а довести, що вони змінюють саме задумане.