Структура файлов¶
Пакет cnn_neat/ содержит ~72 Python-файл (включая forward_cache/ и cache_wave_sim/). Публичный __init__.py экспортирует классическое ядро; исследовательские API импортируются по пути модуля.
cifar-10-CNN_NEAT/
├── cnn_neat/
│ ├── experiment.py, experiment_io.py, config.py, paths.py, logging.py, progress.py
│ ├── network.py, connection_gene.py, forward_plan.py, forward_runtime.py
│ ├── mutations.py, mutation_candidates.py, lineage.py, registry.py
│ ├── evolver.py, evolution_loop.py, run_experiment.py
│ ├── eval.py, tiered_eval.py, screen_cache.py, binary_head.py, heads.py
│ ├── multiclass_head.py, ova_merge.py multi-tip head + OVA-merge seed
│ ├── mutation_mp.py, runtime_cpu.py ProcessPool-мутации родителей
│ ├── weight_stats.py O(N) агрегаты весов поколения
│ ├── periodic_gd.py, elite_refinement.py, finetune.py
│ ├── breeding_cone.py, breeding_cone_mp.py
│ ├── structure_cache_budget.py, cache_capacity_guard.py, dynamic_population.py
│ ├── forward_cache/ Merkle pool, planned unique-miss, eviction
│ ├── cache_wave_sim/ песочница eviction-политики
│ ├── population_vram.py, vram_batch.py, runtime_gpu.py
│ ├── atomic_io.py, async_io.py, run_archive.py, save.py
│ ├── studio_status.py, memory_snapshot.py, study_control.py
│ ├── dashboard.py, final_report.py, unified_report.py, report_viz.py, arch_viz.py
│ └── cifar10_data.py, comparison_metrics.py, generation_summary.py, ...
├── apps/
│ ├── neat_studio/ desktop GUI, dual workers
│ ├── neat_lab/ одиночный run + archive/dashboard
│ └── study_bot/ Telegram pause/resume/status
├── scripts/ablation/
│ ├── 05_structured_study.py исторический A→B→C→D
│ ├── 06_ova_class_study.py OVA 10 классов
│ ├── 09…12_*.py hash-cache / GPU-only / no-cache
│ ├── 13_merge_ova_multiclass_seed.py, 14/14b_multiclass_evolve*.py
│ ├── 15_ova_mnist_gpu_only_study.py, 16_mnist_multiclass_from_ova.py
│ ├── 17_mnist_per_node_act_study.py, 18_cifar_per_node_act_study.py
│ ├── 19_mnist_val5k_light_gd_study.py
│ ├── multiclass_evolve_lib.py, mnist_multiclass_from_ova_lib.py
│ ├── mnist_per_node_act_lib.py, cifar_per_node_act_lib.py, mnist_val5k_light_gd_lib.py
│ └── ova_ad_study_runner.py, ova_dashboard.py, ova_interpret.py
├── scripts/analysis/ инфографики script 11/13-15, cache capacity
├── tests/ 73 pytest-модуля
├── docs/mkdocs/ канон сайта
└── runs/ артефакты (не коммитить)
Граф зависимостей ядра¶
flowchart TB
subgraph genome [Геном]
net[network]
gene[connection_gene]
plan[forward_plan]
end
subgraph evo [Эволюция]
mut[mutations]
cand[mutation_candidates]
evolver[evolver]
loop[evolution_loop]
cone[breeding_cone]
end
subgraph mem [Память]
fc[forward_cache]
budget[structure_cache_budget]
screen[screen_cache]
vram[population_vram]
end
gene --> net
plan --> net
cand --> mut
mut --> evolver
cone --> evolver
evolver --> loop
fc --> loop
budget --> fc
screen --> loop
vram --> loop
Классический публичный экспорт (cnn_neat.__init__): CnnNeat, ConvolutionalNeuralNetwork, ExperimentConfig, run_evolution, VRAMBatchController, PopulationVRAMManager, периодическое градиентное дообучение (periodic GD) helpers. Остальное — import-by-path, см. справочник функций.