概要
交通量の予測にImproved Deep Echo State Network(IDESN)を適用する。IDESNと従来のDeep Echo State Network(DESN)との違いは以下の二点。
活性化関数の改良
circular greedy algorithmによるハイパーパラメタの最適化 さらにthe Wavelet threthold denoising algorithmを使ってノイズ除去を行なった。そしたらMSEがESNと比べて減少した。
前提知識
DESN…Jager[2001]が提案したEcho State Network(ESN)を多層化したもの。リザバー層が多層化されている。各リザバー層での更新則は以下の通り。
ここで、はそれぞれ時刻におけるリザバー内部のベクトル、入力ベクトルで、 はリザバー内部の行列。はリーク率。単層ESNならここでリードアウトするが、DESNではこのを入力としてさらに2層目のリザバーに投入するみたい(もちろん投入の際はを掛ける。1層目と2層目で区別するため原文ではと区別していた)。
最後の層まで行ったらリザバー状態ベクトルを列ベクトルとして束ねた行列を作成して、以下の式から出力を求める。
学習はをリッジ回帰で調整するっぽい?要確認。
ウェーブレット分解…ノイズ除去アルゴリズム。詳細は不明。これも要確認。
提案手法
Cyclic greedy algorithm…目標値が収束するまで貪欲法を繰り返すアルゴリズム。
- ハイパーパラメタをランダムに決める
- 各パラメタの取りうる値の範囲からstep size(恐らく更新量)を決定
- 各パラメタを参照し最適なものは残す、そうでないものは更新
- 2, 3を繰り返す
- パラメタが変わらなくなったら終了
活性化関数…普通はtanh関数を用いるが、提案手法では複数の関数を組み合わせたものを用いている。
各活性化関数の詳細は面倒なので省略。によって調整可能としている。
シミュレーション
カルフォルニアの交通量を予測する。使用するデータは3, 4, 5月のデータの3つで、最初の20日分を学習、次の5日分を検証、最後の5日分を試験データとしている。
結果
DESNと比べて50%ほどMSEが改善されたみたい。
感想
ESNの良さである高速計算が貪欲法で相殺されてないか心配になった、計算時間がみたい。またパラメタが最適かどうかの判定ってどうしてるんだろう…最適でなかったとして増やすのか減らすのかってのも気になる。もしかして最小値からインクリメントしていってるだけ? 活性化関数の件はまぁ…そこ探し出すとキリがない気がするというか。トレードオフかな。 DESNは発想としてとても面白い。参考文献読んでみようと思った。