Aggregator: paired-t hardcoded a baseline/masha_ab/masha_abc #24
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
TL;DR
O aggregator do
run_ablation_word.pygerareport.mdautomático com seção "Paired analysis" que só sabe comparar 3 kinds: baseline, masha_ab e masha_abc. Quando o sweep usa kinds novos (masha_v3, baseline_deepseek, baseline_llama, baseline_bpe, ...), o paired-t deles não aparece no relatório auto. Toda análise estatística sai sendo computada à mão em scripts ad-hoc.O problema concreto
Reports recentes (
experiments/v3_mixed_n6extra/report.md,experiments/delta_n6/report.md,experiments/epsilon_n6/report.md) mostram:nanporque o sweep usou--kinds baseline_bpe baseline_deepseek_bpe baseline_llama_bpe(sem masha_ab/abc). O aggregator continua procurando as colunas hardcoded.A tabela "Extended evaluation (Tier-1 rig)" funciona — ela é dinâmica (itera sobre kinds presentes no by_kind). Mas a seção "Paired analysis" tem código separado que assume os 3 nomes fixos.
Onde mexer
scripts/run_ablation_word.pyaggregator (procurar por strings tipomasha_ab,masha_abcem contexto não-template):by_kind, emitir Δ X − Y. Skip pares sem dados.Δ <every_kind> − baselineaparece quando baseline está presente.Como contornamos por enquanto
Cada sweep gera seu doc humano em
docs/<PHASE>_RESULTS.mdcom paired-t computado via script Python ad-hoc (lendoexperiments/<sweep>/extended.parquet). Funciona mas é trabalho manual repetido.Critério de aceite
selected_kinds(do args.kinds ou default) e emite paired-t pra cada par (kind, baseline) que tem dados.baselinena seleção, escolher um kind de referência ou skip a seção paired (mensagem clara).Não-bloqueante
A claim publicável atual NÃO depende do aggregator — os números vêm do extended.parquet direto. Mas pra qualidade de DX (e pros leitores externos lendo os reports), valeria limpar.
Referências
scripts/run_ablation_word.py— função main() pós-evals, geração de report.mddocs/V3_MIXED_N6_RESULTS.md— exemplo de paired-t feito manualmente porque o aggregator não pega masha_v3docs/PHASE_DELTA_RESULTS.md— idem pros DeepSeek/Llama