next up previous contents
Next: 第5章 結言 Up: 4.4 実験結果と考察 Previous: 4.4.2 内部記憶を持つニューラルネットの内部情報

4.4.3 自己ループ実験

いままでは前日の気温を逐次入力し, 出力の値に注目してきたが, 今度は出力を入力に戻して得られる結果, つまり自己ループさせた結果に注目してみた。

まず,1993年〜1995年の名古屋における気温を 3万回学習したニューラルネットワークに, 始めの数百日は普通にネットワークを動作させる。 そしてその後,出力した前日の気温を入力とし, 出力の変動を観察してみた。

   figure363
図 4.10: Btypeの最高気温自己ループ

   figure370
図 4.11: Ctypeの最高気温自己ループ(365日以降)

   figure377
図 4.12: Ctypeの最高気温自己ループ(600日以降)

4.104.11はBtypeとCtypeにおいて 365日目で気温の入力をやめ, 自己ループさせた結果である。 Btypeは,-25度から50度の間をランダムに プロットしたかのような気温の変化となった。 それに対しCtypeは0度〜20度の間に出力が 集中していることが分かる。 この最高気温が0度〜20度というのは, ほぼ11月〜4月における最高気温の範囲と一致する。 次に,600日目で気温の入力をやめ,自己ループをさせてみた。 Btypeは,365日目で気温入力を止めたものと同じく -25度〜50度の間でランダムにプロットされたようになり, Ctypeでは,図4.12にあるようにいくつかの値に収束した。 この収束した値は六つあり,その六つの値が 周期的に出力されていた。 このCtypeニューラルネットの気温変化が,収束や一定の範囲に集まる結果は, 季節の状態をニューラルネットが記憶しており 365日目または600日目のところで気温を逐次入力するのを止めたため, 内部状態が冬期,夏期のままであるからだと考えられる。

これらのことからBtypeは自己ループさせ 時刻(日時)を進ませても季節のような気温変動や, 季節状態を記憶している様子はうかがえない。 しかし,Ctypeでは自己ループさせ時刻(日時)を進ませると, 自己ループさせた季節の状態のまま気温を出力し続ける。 これは,季節の状態を内部記憶の中に 記憶しているためであろうと考えられる。

Ctypeは前の実験で内部記憶に季節を記憶できていることは分かったが, その状態は自己ループを始めさせる日によって どのように変動しているのであろうか。 そのことを調べるために,次のような実験をした。 図4.12を見ると,自己ループをし始めた600日目から 約80日程で出力が収束しており,またこの収束は先ほども述べたように六つの値が 周期的に出力されている。このような事から実験は, まず気温データを入力しある日数まで進ませ,そこから自己ループさせる。 自己ループを100回したあと, 101回目〜112回目までの出力データ12個を その自己ループをスタートさせた日のデータとしてプロットする。 例えば,365日まで気温を入力しネットワークを進ませ, そこから自己ループを112回する。そして, 101回目〜112回目の出力データを365日目のデータとして グラフにプロットするわけである。 これを,365日〜1360日まで行なった。 図4.13は最高気温の自己ループ後の出力, 図4.14は最低気温の自己ループ後の出力である。 グラフを見ても分かるように, 最高気温,最低気温,共に夏,春秋,冬の 三つの状態があることが分かる。 そして,その状態の変動は気温の変動に 追従していることが読みとれる。

   figure390
図 4.13: Ctype,学習3万回,自己ループ後の最高気温出力

   figure397
図 4.14: Ctype,学習3万回,自己ループ後の最低気温出力

さて,図4.13,4.14のグラフは 3年間の気温を3万回学習した時(9万年分)のものであるが, もっと学習回数が少ない時は,状態が二つかそれ以下であろうと考えられる。 そこで,学習回数が少ない時における 内部記憶を持つニューラルネット(Ctype)の状態変動を調べてみた。 3000回(図4.15),10000回(図4.16), 15000回(図4.17),20000回(図4.18), 25000回(図4.19)と学習回数が増えていくにしたがって, 自己ループ後の値が複雑になっていくのが分かる。

   figure411
図 4.15: Ctype学習3000回における自己ループ後の最高気温出力

   figure418
図 4.16: Ctype学習1万回における自己ループ後の最高気温出力

   figure425
図 4.17: Ctype学習1万5千回における自己ループ後の最高気温出力

   figure432
図 4.18: Ctype学習2万回における自己ループ後の最高気温出力

   figure439
図 4.19: Ctype学習2万5千回における自己ループ後の最高気温出力

以上,気温予測実験結果から

  1. 特定の年,地域のみで学習をしすぎると,ニューラルネットが特化してしまい 学習していない年,地域の気温予測の誤差が大きくなってしまう。
  2. Ctypeのニューラルネットにおいて, 1日づつの気温予測と実際の気温との誤差は,季節による偏りがない。
  3. 学習していない年,地域での気温予測はBtypeより Ctypeの方が誤差が少ない結果となった。
  4. Ctypeのニューラルネットのフィードバックする 内部情報は季節にともなう変化を見せている。
  5. 自己ループ実験から,学習回数が多いときのCtypeニューラルネットは, 大きく分けて冬,夏,春秋の三つの状態を記憶しており, その状態遷移は季節による気温変化に追従している。
の五つの事がまとめられる。 いずれも,Ctypeのニューラルネットが良い結果となり, 気温予測に対する内部記憶を持つニューラルネットの有効性が伺える。 しかし,5 の「学習回数が多いときに三つの状態を記憶できる」と, 1 の「特定のデータで学習しすぎると未学習年の予測が困難になる」 を見比べると,学習回数の問題が生じていることが分かる。 つまり,三つの状態を記憶しつつ 未学習年の予測に支障が生じないようにするには, どの程度の回数で学習を切り上げるかということが問題となる。 だが,この問題は学習データを多くすることによって 解決できると考えられる。



Deguchi Toshinori
Tue Feb 23 15:28:33 JST 1999