スポンサーリンク

もしもできたらお金持ち!?
ニューラルネットワークを用いたLOTO3結果予想

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

概要


ニューラルネットワークについてで勉強したことを元に、ナンバーズ3の今回の当選データを入力したら、次回の当選データを予測するプログラムを作れないか?考えました。
もしできたらお金持ち!!(ウハウハ)を考えなかったと言ったら嘘になる。

*目次*
概要
どう作るか
結果
感想


どう作るか


  • ナンバーズ3の当選データを入力
  • 百、十、一の位それぞれ、0~9になる確率を出力

  • 入力X、出力yo~y9
  • 百の位用、十の位用、一の位用それぞれ作成
  • 重みの初期値は、乱数で作成
  • 「このデータを入力したときに、この出力をして欲しい」というデータを教師データといいます。(t)
  • 入力値Xの出力yが教師データtに近づくようにw(重みや)やb(バイパス)を調整します。
  • 図のデータで言うと、695を入力したときは、出力が0(t0のみ1がたち、後は0)になって欲しい。
  • 黄色でマークした部分が、各行の最大値になるよう乱数を設定したかったが、無理だったため、
    複数個最大値になる乱数を使用し、各位のニューラルネットワークを作った。

    結果


  • 各桁ごとのニューラルネットワーク
  • 重み部分は非表示にして、結果のみにられるようにした。
  • 第6208回目の当選番号218を入力
  • 第6209回目の当選番号予想が811とでた
  • ネットで結果を確認。「140」
  • おもいっきりハズレ


    感想


    今回、ニューラルネットワークを勉強したいこともあり、せっかくだから楽しいデータを使いたい
    とLOTO3のデータを使用した。
    正解データが出力されなかった理由としては、以下が考えられる。

  • そもそも、ニューラルネットワークで導き出せるような法則性がない
  • 重みやバイアス更新の計算式が間違っている。

  • 後者は、一次関数で表現することが可能なデータ(X=1の時Y=2、X=2の時Y=4、X=3の時Y=6ではX=4の時は?のようなデータ)を使用すれば、確認可能だと思われるので、後日確認したい。

    コメント

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