\begin{equation*}
\newcommand\ve[1]{\boldsymbol{#1}}
\end{equation*}
今日あたりで目処を…というか、デフォルトの自然勾配法に対する言い訳を考えておきたい。 ガチャガチャいじっていると、LMSに \(\ve{R}^{-1}\) を掛けたのも強いということが分かってくる…。
\begin{equation*}
\ve{h}^{\prime} \leftarrow \ve{h} + \mu \ve{R}^{-1} \varepsilon(n) \ve{x}(n)
\end{equation*}
何度も見てきた通りだが、上式のステップサイズを(事後誤差最小化基準により)適応化すると正規化版の式に一致する。ちなみに、LMSに対してはフィッシャー情報行列が意味のある統計量に結びつかない。Signアルゴリズムの改良から話を初めて、ステップサイズ適応化してまでたどり着くと、初めてLMS版に対応する式が導かれる。
確かに上は性能が良いが、裏付けが薄く眉唾の感を逃れられない。疑似自然勾配LMSと名付けて実装しておく。名目としては、正規化の簡略版と見れるはず。収束議論もしておきたい。
と思ったら、疑似自然勾配LMSは実データですっ飛ぶ傾向あり。誤差が急上昇するところで係数が吹っ飛んでしまう。。トレードオフのようで、誤差の符号をとる(自然勾配SA)は適応が遅すぎて、残差をそのまま使う(疑似自然勾配LMS)は適応が敏感すぎてすっ飛ぶ傾向がある。正規化は本質的な働きをしているように見える。
まとめようか。 勾配を観察すれば分かることだけど、やっぱり自然勾配SAは勾配が平坦になりすぎるきらいがある。どんなに最適値との差があっても同一の勾配になりやすい。 実データでは十分なサンプルが取れて、しかも特性はのんびり変化するから性能が良くなる。 忘却係数は高く取れば定常誤差を小さくできるが、1.0にすると特性追従が遅くなるので、1にほど近い0.997等に設定する。ステップサイズは実験では1.0等大きめに、実データは0.1等にとる。