【要約】GlobalAveragePooling vs GlobalMaxPooling、シードなしで比較したら誤った結論を出しかけた話【Keras [Zenn_Python] | Summary by TechDistill
> Source: Zenn_Python
Execute Primary Source
// Problem
CNNの畳み込み層後の集約手法の選択において、開発者はどちらが最適か判断に迷う。また、実験結果の解釈ミスというリスクに直面する。
- ・GAPとGMPの性能差が、モデルの特性ではなく初期重みの乱数に依存するリスク。
- ・シード未固定による、統計的に有意でない「偽の優位性」を検出してしまう問題。
// Approach
開発者は、GAP、GMP、および両者を連結した3つのパターンを用いて、CIFAR-10データセットでの比較実験を行った。
- ・パターンA:GlobalAveragePooling2Dを使用(128次元)。
- ・パターンB:GlobalMaxPooling2Dを使用(128次元)。
- ・パターンC:GAPとGMPをConcatenateして使用(256次元)。
- ・Python, NumPy, TensorFlowの各レベルで乱数シードを42に固定。
// Result
実験の結果、精度向上と実験の再現性に関する定量的な知見が得られた。
- ・GAP+GMP連結パターンが68.44%の最高精度を記録。
- ・GAPとGMPの単体性能は、シード固定下ではほぼ同等(差0.23%)。
- ・シード未固定時のGMP優位(+2.41%)は、初期値による誤差と判明。
Senior Engineer Insight
> 精度向上にはGAPとGMPの連結が有効だが、パラメータ数は17.5%増加する。現場では、計算リソースと精度のトレードオフを考慮すべきだ。また、実験の再現性は絶対条件である。シード固定を怠ることは、誤ったモデル選定による手戻りを招く致命的なミスに繋がる。