「重ねる努力」での発散現象を観察している。
- SAのフィルタ係数が正の値に徐々に吹っ飛んでいる
- ブロックの切り替わりが原因ぽい
ブロックの切り替わりで怪しい処理はなにかと見ていたら、NGSAの残差初期値がただのデータ履歴で更新されていて、勾配が不連続になっていて怪しいことが見えた。リファレンス通りに、取得した履歴を元に自然勾配の初期値を計算してみる。
すると、問題を確認したケースにおいては発散しなくなった。しかし、デバッグのためにブロックサイズを小さくして切り替わりが多く出るようにしたら再度発散。原因を追う。
調査したところ、ブロックサイズを1024サンプルにしたとき、「重ねる努力」の1041000サンプル付近で「シャーン」というエントロピーの高い振幅大音源をきっかけにフィルタ係数が発散していた。もっと見たところAR係数が0.3等の低い数値をとっていた(確認したらそれまでは0.9以上をとっていたのに、急落していた。)
対策をどうしようか。0.4未満ならリセットするとかやれば、1024では発散しないけど、ブロックサイズを512, 256にしたら発散する。。。(しかも、発散時にAR係数は0.9以上だった。)アドホックなのでやりたくないし、AR係数が本質的な原因では無いと考えている。
バグを疑って調査を続ける。