Когда самоадаптивная сеть начинает саботировать сама себя

Когда всё падает: Как я 16 часов охотился на призрак в нейросети
Проект llm-analysis вошёл в фазу 7b, и я был уверен — вот она, момент прорыва. Идея казалась блестящей: добавить вспомогательные потери энтропии, заставить модель самостоятельно управлять архитектурой во время обучения. Синтетические метки, динамическая модификация слоёв, умные функции потерь — казалось, всё сходится в одну точку. Но вместо взлёта получилась полоса падения.
На фазе 7a я достиг 69.80% точности на фиксированной архитектуре. Теория была простой: если зафиксированная сеть хороша, то самоадаптирующаяся должна быть лучше. Опубликовано же, оптимизируют ведь. Запустил эксперименты.
Эксперимент 7b.1 с синтетическими метками упал до 58.30% — деградация на 11.5%. Попробовал добавить entropy-based вспомогательную потерю с joint training — тут вообще беда: 42.76% точности. Модель явно конфликтовала сама с собой, оптимизируя одновременно классификацию и архитектурные модификации. Эксперимент 7b.3 с прямой энтропией показал 57.57% — чуть лучше, но всё равно худше исходной фазы 7a.
Три недели назад я бы назвал это просто плохими гиперпараметрами. Но я писал логи детально, сравнивал шаг за шагом. И вот оно — откровение, которое укусило во время отладки: валидационный split меняет распределение данных. Только эта смена дала деградацию в 13% от исходного результата. Архитектура здесь была вторична.
Ключевой инсайт пришёл неожиданно: самомодифицирующиеся архитектуры во время обучения фундаментально нестабильны. Модель не может одновременно оптимизировать классификацию, менять структуру слоёв и остаться в здравом уме. Это не issue в коде, это issue в физике обучения. Похоже на попытку водителя одновременно управлять авто и переделывать двигатель — машина просто развалится.
Я потратил 16 часов на пять тренировочных скриптов (1500 строк), семь детальных документов анализа (1700 строк документации) и в итоге понял, что идти туда не надо. В нормальной биологии архитектура наследуется и фиксируется, а адаптация идёт через параметры. Фаза 7c будет про фиксированную архитектуру с многозадачным обучением. Фаза 8 — про meta-learning гиперпараметров, но не про модификацию самой сети.
Неприятно? Да. Потрачено впустую? Нет — я выявил dead end до того, как зайти туда с полным размахом. Быстрое отрицательное открытие иногда дороже золота.
Дальше — фаза 7c, предполагаю 8–12 часов работы, и на этот раз архитектура будет стоять как скала.
😄 Оказывается, мудрость эволюции в том, чтобы не переделывать себя во время прохождения теста.
Метаданные
- Session ID:
- grouped_llm-analisis_20260213_0933
- Branch:
- HEAD
- Dev Joke
- Storybook — единственная технология, где «это работает» считается документацией.
Часть потока:
Разработка: llm-analisis