d:\cifar-10-CNN_NEAT\
├── README.md ← данный документ
├── pyproject.toml ← зависимости, entrypoints (pip install -e .)
├── cnn_neat\ ← основная библиотека (32 модуля)
│ ├── __init__.py
│ ├── config.py ← глобальные константы и дефолты
│ ├── experiment.py ← ExperimentConfig (frozen dataclass)
│ ├── network.py ← геном CNN: DAG, forward, мутации геометрии
│ ├── connection_gene.py ← ConvolutionConnectionGene (ребро DAG)
│ ├── forward_plan.py ← ExecutionPlan, компиляция DAG
│ ├── forward_runtime.py ← eager/compile/cuda_graph runners, AMP
│ ├── mutations.py ← ConvolutionalNetworkMutator, crossover
│ ├── evolver.py ← CnnNeat (NEAT): популяция, отбор, архив
│ ├── evolution_loop.py ← run_evolution() — главный тренировочный цикл
│ ├── eval.py ← evaluate_population_fitness, метрики, GPUValCache
│ ├── binary_head.py ← output_to_score, BCE, decision rules
│ ├── heads.py ← LinearClassifierHead (опционально)
│ ├── cifar10_data.py ← DataLoader'ы, нормализация, val split
│ ├── finetune.py ← Adam fine-tune (топология заморожена)
│ ├── elite_refinement.py ← двухстадийный отбор: val→finetune→test
│ ├── periodic_gd.py ← лёгкий GD по всей популяции
│ ├── run_experiment.py ← run_single_experiment(), create_evolver()
│ ├── save.py ← SaveManager, RunInfo
│ ├── run_archive.py ← RunArchive (единый JSON + .pt весов)
│ ├── registry.py ← ModelRegistry, HistoricalModel
│ ├── generation_summary.py ← build_generation_summary(), write_run_meta()
│ ├── dashboard.py ← live_dashboard.html (Plotly, авто-обновление)
│ ├── final_report.py ← post-run HTML: CM, примеры, архитектура
│ ├── unified_report.py ← multi-run сравнительный HTML
│ ├── report_viz.py ← Matplotlib: CM, TP/TN/FP/FN сетки
│ ├── arch_viz.py ← plot_genome_architecture(), формат топологии
│ ├── comparison_metrics.py ← Phase-1 grid, ranking score, backfill
│ ├── vram_batch.py ← VRAMBatchController (адаптивный batch)
│ ├── runtime_gpu.py ← set_seed, configure_gpu_for_training
│ ├── paths.py ← repo_root()
│ └── logging.py ← configure(), add_file_handler()
├── apps\
│ ├── run_viewer\ ← Dash GUI (read-only, порт 8050)
│ │ ├── main.py ← точка входа, layout
│ │ ├── data_loader.py ← загрузка run_archive.json
│ │ ├── plots.py ← Plotly-кривые fitness
│ │ ├── topology.py ← граф топологии в Dash
│ │ ├── metrics.py ← таблицы метрик
│ │ ├── export.py ← экспорт CSV/JSON
│ │ ├── logs.py ← просмотр логов
│ │ └── assets\viewer.css
│ └── neat_runner\ ← FastAPI (запуск run через веб)
│ ├── server.py ← uvicorn entrypoint
│ ├── api.py ← REST-эндпоинты
│ ├── _launch_worker.py ← фоновый воркер эволюции
│ └── templates\index.html, run.html
├── scripts\
│ ├── setup_venv.ps1 ← Windows: создание venv + PyTorch cu124
│ ├── smoke_test.py ← санитарная проверка пакета
│ ├── run_cifar10_class_suite.py ← 10 классов × baseline/refinement
│ ├── benchmark_forward_epoch.py ← замер throughput vs batch size
│ └── ablation\
│ ├── hyperparameters.py ← BASELINE_CFG, ABLATION_GRID, Phase-группы
│ ├── 01_hyperparameters.py ← вывод сетки аблаций
│ ├── 02_arch_ablation.py ← one-at-a-time аблации
│ ├── 03_final_report.py ← HTML-отчёт из архивов
│ ├── final_report.py ← то же, альтернативный путь
│ └── 05_structured_study.py ← Фазы A→B→C→D, live dashboard
├── tests\ ← 8 pytest-модулей
│ ├── test_binary_head.py
│ ├── test_vram_batch.py
│ ├── test_periodic_gd.py
│ ├── test_network_channels.py
│ ├── test_phase1_backfill.py
│ └── cifar10_all_classes\
│ ├── README.md
│ └── suite_results.json
├── notebooks\
│ ├── cifar10_cnn_neat_binary.ipynb ← интерактивный демо-запуск
│ └── cifar10_arch_comparison.ipynb ← сравнение архитектур
└── data\cifar10\
├── fitness_val_indices.json ← 25 000 индексов val (seed=42)
├── fitness_val_indices_45000.json
├── fitness_val_indices_1000.json
└── cifar-10-batches-py\ ← скачанный датасет CIFAR-10