スポンサーリンク

一次関数のaとbをニューラルネットワークから求める。

アプリ開発、アルゴリズム

概要

前回までで、ニューラルネットワークを超簡単に説明するのと、y=ax+bのaとbを求めるものと書きました。
今回は実際に、a.bを求める流れを書いていきたいと思います。

y = ax+b のa,bをニューラルネットワークで予測してみた

  • y = 0.15*x + 0.25(a=0.15,b=0.25)

  • という式のa,bをニューラルネットワークで予測するため以下のようなデータを用意しました。
    tは上記の式に当てはめて出した値になります

    a,bを最初の値X=2、Y=0.55に近くなるようにa、bを決めます
    前回紹介した公式

  • 更新後のa = 更新前のa – (η*(y-t)*(1-y)*y*x
  • 更新後のb = 更新前のb – (η*(y-t)*(1-y)*x)

  • をa,bそれぞれ次のセルに式を挿入しeがゼロになる迄行を追加していきました。

    2がゼロになるまでやり次に3、4と進んでいます。

  • 2,3,4と学習させて、誤差もゼロなので、a=0.16 b=0.218 という結論になりました。

  • a=0.15,b=0.25だったはずなので、きっちり一緒にはならなかったことに疑問なので、Yとtを並べてみました。

    グラフにしてみると、ほぼ重なりうまく予想できたと考えて良さそうです。

    ちなみに、2~9まで一気にやってみた場合以下のような表になり
    少しづつ誤差が出てきているのがわかります。表にしてみると異質が目立ちますね。

    感想

    うまくいったので、次はいよいよ豪ドルのデータを元に予想ツールを作っていきます。

    コメント

    タイトルとURLをコピーしました