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

Запуск через скрипты

Один эксперимент:

from cnn_neat import ExperimentConfig, run_single_experiment

cfg = ExperimentConfig(positive_class=3, num_generations=50, population_size=100)
run_single_experiment(cfg)

Или JSON (пример со всеми дефолтами — configs/experiment.defaults.json):

python -m cnn_neat write-defaults my_run.json
python -m cnn_neat run --config my_run.json

Исторический протокол 05

python scripts/ablation/05_structured_study.py
# live: runs/ablation/study/live.html

pop=1000, A→B→C→D, без конуса размножения и кэша хэшей.

Рабочий протокол «один против остальных»

python scripts/ablation/06_ova_class_study.py          # 10 классов, C/D + 5-fold CV
python scripts/ablation/09_ova_structural_hash_study.py
python scripts/ablation/10_ova_hash_host_spill_study.py  # planned cache; full_gpu | cpu_mut_fwd_gpu_gd
python scripts/ablation/11_ova_gpu_only_study.py         # CUDA + cone (основной)
python scripts/ablation/11_ova_gpu_only_study.py --start-phase c
python scripts/ablation/12_ova_cpu_ram_ab_study.py       # Phase A без кэша

Отложенная проверка (holdout) чемпионов: скрипты 11b / 11c в scripts/ablation/.

MNIST, CIFAR-10 и многоклассовый режим (скрипты 13–20)

python scripts/ablation/15_ova_mnist_gpu_only_study.py            # MNIST OVA A-D (script 11 twin)
python scripts/ablation/13_merge_ova_multiclass_seed.py           # merge 10 OVA champions -> seed
python scripts/ablation/14_multiclass_evolve.py    --seed-dir runs/ablation/ova_multiclass_seed   # evolve, no GD
python scripts/ablation/14b_multiclass_evolve_gd.py --seed-dir runs/ablation/ova_multiclass_seed  # evolve + periodic GD
python scripts/ablation/16_mnist_multiclass_from_ova.py --generations 100 --resume  # MNIST multiclass queue
python scripts/ablation/17_mnist_per_node_act_study.py  # MNIST per-node σ OVA A/B + merge queue
python scripts/ablation/18_cifar_per_node_act_study.py  # CIFAR analog of 17; val=20k, pop=25
python scripts/ablation/19_mnist_val5k_light_gd_study.py  # like 17, val=5k, light GD, apply cap
python scripts/ablation/20_dynamic_pop_cache_study.py  # occupancy pop + genome stagn + dual-track GD; drop cache if occupancy <10 → grow ×1.2 from current (ceiling 2048)

Протоколы: Multiclass из OVA, MNIST OVA, per-node activations (17), CIFAR per-node activations (18), val=5k light GD (19).

Инфографики:

python scripts/analysis/export_script11_ab_final_infographic.py
python scripts/analysis/export_script11_c_final_infographic.py
python scripts/analysis/export_cache_capacity_infographic.py
python docs/build_site_figures.py

Прочее: scripts/ablation/02_arch_ablation.py, scripts/run_cifar10_class_suite.py, scripts/bench/benchmark_forward_epoch.py.

Протоколы: OVA 06, 09–12. GUI: Studio.