feat: modernize PSO and add convergence research

Migrate the package and examples to the tensor-native PyTorch implementation, add benchmark evidence, and add the guarded post-training convergence protocol with TensorBoard progress monitoring and hash-verified recovery.

Constraint: Preserve one-shot official-test sealing and auditable research artifacts

Rejected: Commit local .omc runs and downloaded datasets | multi-gigabyte runtime state is machine-local

Confidence: high

Scope-risk: broad

Not-tested: Production CUDA run on pieroot-server
This commit is contained in:
2026-09-07 22:03:25 +09:00
parent 9745bb7ad4
commit 813433000a
120 changed files with 198148 additions and 4745 deletions
@@ -0,0 +1,29 @@
Workload,Phase,Method,Accuracy,NLL,Brier,ECE,Margin,WallTimeSeconds,ParameterMultiplier,InferenceMultiplier
mnist,validation,reference_single_10e,98.2300,0.060105,0.027982,0.003458,0.969858,0.0000,1.0,1.0
mnist,validation,best_single_10e,98.2900,0.054029,0.025526,0.002795,0.971419,0.0000,1.0,1.0
mnist,validation,single_50e,98.5200,0.073988,0.024922,0.009463,0.989411,0.0000,1.0,1.0
mnist,validation,uniform_ensemble,98.6300,0.046385,0.021527,0.006228,0.965339,0.0000,5.0,5.0
mnist,validation,uniform_temperature,98.6300,0.045355,0.021099,0.002518,0.972273,0.0412,5.0,5.0
mnist,validation,slsqp_weights,98.6000,0.045902,0.021307,0.005994,0.965581,0.0097,5.0,5.0
mnist,validation,pso_weights,98.6100,0.045902,0.021307,0.005893,0.965582,1.8925,5.0,5.0
mnist,official_test,reference_single_10e,98.4700,0.044991,0.022366,0.003516,0.970575,0.0000,1.0,1.0
mnist,official_test,best_single_10e,98.5500,0.044944,0.022052,0.002515,0.974650,0.0000,1.0,1.0
mnist,official_test,single_50e,98.6000,0.062102,0.022912,0.008283,0.988829,0.0000,1.0,1.0
mnist,official_test,uniform_ensemble,98.8600,0.036184,0.018010,0.006311,0.968415,0.0000,5.0,5.0
mnist,official_test,uniform_temperature,98.8600,0.034129,0.017658,0.003340,0.974869,0.0000,5.0,5.0
mnist,official_test,slsqp_weights,98.8300,0.036179,0.017989,0.005818,0.969195,0.0000,5.0,5.0
mnist,official_test,pso_weights,98.8300,0.036178,0.017989,0.005817,0.969196,0.0000,5.0,5.0
fashion_mnist,validation,reference_single_10e,89.4700,0.303799,0.150671,0.012197,0.808017,0.0000,1.0,1.0
fashion_mnist,validation,best_single_10e,89.4700,0.303799,0.150671,0.012197,0.808017,0.0000,1.0,1.0
fashion_mnist,validation,single_50e,90.3200,0.289660,0.142115,0.024556,0.869484,0.0000,1.0,1.0
fashion_mnist,validation,uniform_ensemble,90.2800,0.286751,0.142881,0.023702,0.795588,0.0000,5.0,5.0
fashion_mnist,validation,uniform_temperature,90.2800,0.285048,0.141557,0.011886,0.814383,0.0414,5.0,5.0
fashion_mnist,validation,slsqp_weights,90.4200,0.285338,0.142289,0.023705,0.798413,0.0104,5.0,5.0
fashion_mnist,validation,pso_weights,90.4200,0.285338,0.142289,0.023661,0.798397,1.8963,5.0,5.0
fashion_mnist,official_test,reference_single_10e,88.9000,0.314516,0.161465,0.005320,0.805307,0.0000,1.0,1.0
fashion_mnist,official_test,best_single_10e,88.9000,0.314516,0.161465,0.005320,0.805307,0.0000,1.0,1.0
fashion_mnist,official_test,single_50e,89.9300,0.302348,0.148289,0.026401,0.865728,0.0000,1.0,1.0
fashion_mnist,official_test,uniform_ensemble,89.6500,0.293522,0.151400,0.019111,0.791698,0.0000,5.0,5.0
fashion_mnist,official_test,uniform_temperature,89.6500,0.291996,0.150581,0.007597,0.810594,0.0000,5.0,5.0
fashion_mnist,official_test,slsqp_weights,89.5400,0.291696,0.150558,0.017186,0.794293,0.0000,5.0,5.0
fashion_mnist,official_test,pso_weights,89.5400,0.291700,0.150559,0.017378,0.794274,0.0000,5.0,5.0
1 Workload Phase Method Accuracy NLL Brier ECE Margin WallTimeSeconds ParameterMultiplier InferenceMultiplier
2 mnist validation reference_single_10e 98.2300 0.060105 0.027982 0.003458 0.969858 0.0000 1.0 1.0
3 mnist validation best_single_10e 98.2900 0.054029 0.025526 0.002795 0.971419 0.0000 1.0 1.0
4 mnist validation single_50e 98.5200 0.073988 0.024922 0.009463 0.989411 0.0000 1.0 1.0
5 mnist validation uniform_ensemble 98.6300 0.046385 0.021527 0.006228 0.965339 0.0000 5.0 5.0
6 mnist validation uniform_temperature 98.6300 0.045355 0.021099 0.002518 0.972273 0.0412 5.0 5.0
7 mnist validation slsqp_weights 98.6000 0.045902 0.021307 0.005994 0.965581 0.0097 5.0 5.0
8 mnist validation pso_weights 98.6100 0.045902 0.021307 0.005893 0.965582 1.8925 5.0 5.0
9 mnist official_test reference_single_10e 98.4700 0.044991 0.022366 0.003516 0.970575 0.0000 1.0 1.0
10 mnist official_test best_single_10e 98.5500 0.044944 0.022052 0.002515 0.974650 0.0000 1.0 1.0
11 mnist official_test single_50e 98.6000 0.062102 0.022912 0.008283 0.988829 0.0000 1.0 1.0
12 mnist official_test uniform_ensemble 98.8600 0.036184 0.018010 0.006311 0.968415 0.0000 5.0 5.0
13 mnist official_test uniform_temperature 98.8600 0.034129 0.017658 0.003340 0.974869 0.0000 5.0 5.0
14 mnist official_test slsqp_weights 98.8300 0.036179 0.017989 0.005818 0.969195 0.0000 5.0 5.0
15 mnist official_test pso_weights 98.8300 0.036178 0.017989 0.005817 0.969196 0.0000 5.0 5.0
16 fashion_mnist validation reference_single_10e 89.4700 0.303799 0.150671 0.012197 0.808017 0.0000 1.0 1.0
17 fashion_mnist validation best_single_10e 89.4700 0.303799 0.150671 0.012197 0.808017 0.0000 1.0 1.0
18 fashion_mnist validation single_50e 90.3200 0.289660 0.142115 0.024556 0.869484 0.0000 1.0 1.0
19 fashion_mnist validation uniform_ensemble 90.2800 0.286751 0.142881 0.023702 0.795588 0.0000 5.0 5.0
20 fashion_mnist validation uniform_temperature 90.2800 0.285048 0.141557 0.011886 0.814383 0.0414 5.0 5.0
21 fashion_mnist validation slsqp_weights 90.4200 0.285338 0.142289 0.023705 0.798413 0.0104 5.0 5.0
22 fashion_mnist validation pso_weights 90.4200 0.285338 0.142289 0.023661 0.798397 1.8963 5.0 5.0
23 fashion_mnist official_test reference_single_10e 88.9000 0.314516 0.161465 0.005320 0.805307 0.0000 1.0 1.0
24 fashion_mnist official_test best_single_10e 88.9000 0.314516 0.161465 0.005320 0.805307 0.0000 1.0 1.0
25 fashion_mnist official_test single_50e 89.9300 0.302348 0.148289 0.026401 0.865728 0.0000 1.0 1.0
26 fashion_mnist official_test uniform_ensemble 89.6500 0.293522 0.151400 0.019111 0.791698 0.0000 5.0 5.0
27 fashion_mnist official_test uniform_temperature 89.6500 0.291996 0.150581 0.007597 0.810594 0.0000 5.0 5.0
28 fashion_mnist official_test slsqp_weights 89.5400 0.291696 0.150558 0.017186 0.794293 0.0000 5.0 5.0
29 fashion_mnist official_test pso_weights 89.5400 0.291700 0.150559 0.017378 0.794274 0.0000 5.0 5.0