バッチ正則化
参考記事
ミニバッチについて畳み込み計算をする際,各チャンネルの特徴量をチャンネルごとに正規化
正規化しただけでは一様な分布になってしまい,畳み込みの意味がなくなるので,スケーリングとシフトを行う
code: tex
\begin{equation} y_i \leftarrow \gamma \hat{x_i} + \beta \equiv BN_{\gamma,\beta}(x_i)\end{equation}
この式の$ \gamma と\betaがパラメータで,これを各チャンネルで学習することになる?
? 各チャンネルごとに固定の分布を求めるとあるが,なぜその計算は正しいのか? 考え始めるとキリがないので,一旦打ち切り
調べた経緯
結論: ファインチューニングする際に精度が落ちにくくなる
事前の学習で得られた分布の統計量に基づくバッチ正則化が,ファインチューニングで小さくなるなどして,重みと合わなくなる可能性がある
そこで統計量を更新しないよう凍結することで,元のデータから得られた統計量を保持し,重みとの整合性を保つ
事前に学習した情報をなるべく持ったまま微調整が可能?
? 大規模なモデルに関するファインチューニングはモデルの何を更新する? このページに書く