Перейти к содержанию

CNN-NEAT: свёрточная нейроэволюция топологий

Научно-исследовательская работа

«Гибридный метод автоматического поиска архитектур свёрточных нейронных сетей на основе нейроэволюции, градиентного бустинга и ансамблевого дообучения (CNN-NEAT + GBM)»

Автор: Городецкий М. А.   Научный руководитель: Афанасьев М. А.   2026

Библиотека эволюционного поиска архитектур свёрточных нейронных сетей (поиск архитектур, NAS) в парадигме NEAT. Каждое ребро ориентированного ациклического графа — операция Conv2d; топология и веса эволюционируют совместно. Бинарный классификатор вне генома.

Версия: 0.1.0   Python: ≥ 3.10   PyTorch: ≥ 2.0   CUDA: 12.x   Сайт: 11.09.2026

Реализовано Фаза 1 · один против остальных, скрипты 06–16 · MNIST · многоклассовый режим

Новые методы конус размножения · кэш Меркла · два трека · многоклассовое слияние

Модулей в пакете ~71 файл cnn_neat/

Концепт Фазы 2–7 GBM / ResNet

Быстрая навигация

  • Математическая модель


    Граф свёрток, хэши Меркла, ёмкость кэша, конус размножения, два трека дообучения

    Математическая модель

  • Справочник функций


    Новые функции и поля ExperimentConfig по подсистемам

    Справочник функций

  • Результаты


    Снимок чисел (сбалансированная точность на проверке), скрипты 11 и 15, отложенная проверка, графики

    Результаты

  • :material-desktop-mac:{ .lg .middle } Установка и интерфейс


    Установка, примеры, NEAT Studio и бот исследований

    Использование

Что изменилось относительно классического NEAT-ядра

Сайт описывает не только граф и элиту в 20%. Текущий модуль добавляет:

  • Конус размножения — спекулятивное дерево мутаций в оперативной памяти, оценка на GPU идёт с перекрытием по времени
  • Кэш Меркла прямого прохода — активации, адресуемые по содержимому, и запланированный уникальный промах
  • StructureCopyBudget — не больше одной находящейся в памяти копии полного structure_hash
  • Два трека градиентного дообучения — после первого периодического дообучения два независимых пула: без дообучения и линия дообучения
  • Гибрид процессор / GPU — device=cpu и periodic_gd_device="cuda"
  • Исследования «один против остальных», скрипты 06 и 09–12 — рабочий путь вместо исторического скрипта 05
  • Многоклассовый режим из десяти бинарных задач — слияние 10 чемпионов в один геном с несколькими выходами (ova_merge), выбор класса по максимуму на концах, эволюция с дообучением и без него (скрипты 13, 14, 14b, 16)
  • MNIST, один против остальных — тот же протокол фаз A–D (скрипт 15)
  • Параллельные мутации — мутации родителей в пуле процессов (mutation_mp)
  • NEAT Studio и Telegram-бот управления исследованием

Подробности: архитектура, цикл эволюции.

Позиционирование

Метод Стратегия Пространство GPU
CNN-NEAT Нейроэволюция (NEAT) Граф свёрток Адаптивная (видеопамять и кэши)
DARTS Дифференцируемая релаксация Ячейки Высокая
ENAS Обучение с подкреплением и общие веса Ячейки Высокая
AmoebaNet Регуляризованная эволюция Ячейки Средняя