Skip to content

refactor: config・実験スクリプト名を実験設定が読める形に整理 - #7

Open
koki3070 wants to merge 4 commits into
mainfrom
refactor/config-script-naming
Open

refactor: config・実験スクリプト名を実験設定が読める形に整理#7
koki3070 wants to merge 4 commits into
mainfrom
refactor/config-script-naming

Conversation

@koki3070

@koki3070 koki3070 commented Jul 26, 2026

Copy link
Copy Markdown
Owner

概要

PR #6 マージ後に uda-lab 向け PR(uda-lab#66)で行った命名整理を fork 側 main にも反映する。計算内容は不変(リネーム+参照更新+不要 YAML 削除)+ run-dir slug のバグ修正。

変更内容

configs/ の命名規約導入

  • paper_n100_o20_nocls_h1_ellphi_lpca_power.yaml(旧 elongate_n100_no_cls_full120_teacher_local_pca.yaml): 論文本番 config。点数 n100・外れ値 o20・分類ヘッドなし・H1-only・ellphi backend・local-PCA teacher・power size を名前で明示。
  • tune_n100_o20_nocls_h1_ellphi_lpca_power.yaml(旧 elongate_n100_no_cls_tune_local_pca_ellphi_power.yaml): Optuna チューニング共通ベース。
  • 未使用の Euclidean-teacher baseline / near-tangent barrier YAML を削除。barrier 契約(aniso_mode=elongate_barrier)は preflight 側の契約定数として残り、BASE_CONFIG で明示宣言した YAML を渡す opt-in 経路のみ(公開 YAML は同梱しない)。configs/README.md に明記。
  • aniso_mode=elongate は契約デフォルトのためファイル名から除外(命名規約として configs/README.md に記載)。

experiments/ のスクリプト名単純化

tune_elongate_wdist.py / tune_elongate_mcc.py tune_wdist.py / tune_mcc.py
run_tune_local_pca_power_{wdist,mcc}_parallel.sh tune_{wdist,mcc}_parallel.sh
run_tune_local_pca_power_objectives.sh tune_objectives.sh
run_teacher_local_pca_power_30ep.py / _multiseed.sh run_paper_30ep.py / _multiseed.sh
evaluate_paper_protocol.py / evaluate_paper_baselines.py eval_paper.py / eval_baselines.py
aggregate_power_30ep_multiseed.py aggregate_paper_multiseed.py
power_30ep_freshness.py paper_run_freshness.py

出力パス・manifest タグ・command_entry・Optuna study 名・ドキュメントの参照をすべて更新。本番 run-dir slug も pwr_s{seed}paper_s{seed} に変更し、freshness / aggregate のグロブと揃えた。

run-dir slug のバグ修正(レビュー中に検出)

  • paper_n100_o20_nocls_*tune_n100_o20_nocls_* が prefix 除去で同一 slug h1_ellphi_lpca_power に潰れ、run ディレクトリ名から config を特定できなくなっていた。role トークンを保持するよう修正(paper_h1_ellphi_lpca_pow / tune_h1_ellphi_lpca_powe)。
  • config_id teacher_local_pca_power_seed{N}paper_s{N} に再割当てしていたため、正本 paper_seed{N} と run 名前空間が衝突していた。ディスク上の実ディレクトリ名と一致する pwr_s{N} に戻して分離を回復。レガシー slug 全体の挙動を main とバイト一致に復元。
  • 上記 2 点の回帰テストを追加。

検証

  • uv run pytest: 174 passed
  • uv run ruff check .: All checks passed
  • .shbash -n 構文チェック通過
  • ドキュメント記載の全スクリプト・config パスの実在確認
  • タグ伝播の端から端までの追跡(run_paper_30ep.py --tageval_paper.pylogs/paper_metrics_test_{tag}.json を出力 → aggregate_paper_multiseed.py / paper_run_freshness.py のグロブが一致)
  • multiseed ドライバの出力先(outputs/supervised/paper30_{wdist,mcc})と集計スクリプト既定値の一致確認
  • 旧名の残存参照スキャン: config キー名(teacher_local_pca_*)とレガシー slug 互換以外ゼロ

murata and others added 4 commits July 26, 2026 15:37
elongate/full120 など誤解を招く接頭辞をやめ、
paper_/tune_ + n100_o20_nocls_h1_ellphi_lpca_power に統一。
未使用の baseline と Methods-only barrier YAML は公開面から削除。

Co-authored-by: Cursor <cursoragent@cursor.com>
tune_elongate_* / run_teacher_local_pca_power_* 等を
tune_wdist / run_paper_30ep / eval_paper 等へ改名。
出力パス・eval タグ・run_slug も paper/tune 語彙に揃える。

Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
- paper_n100_o20_nocls_* と tune_n100_o20_nocls_* が同一 slug
  (h1_ellphi_lpca_power) に潰れ、run ディレクトリ名から config を
  特定できなくなっていた。role トークンを残すよう変更。
- 旧 config_id teacher_local_pca_power_seed{N} を paper_s{N} に
  再割当てしていたため、正本 paper_seed{N} と run 名前空間が衝突。
  ディスク上の実ディレクトリ名 pwr_s{N} に戻して分離を回復。
- prefix 除去も origin/main と同一挙動に戻し、旧 slug を維持。

Co-authored-by: Cursor <cursoragent@cursor.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant