コンテンツへスキップ

めざましじゃんけん を題材とした時系列予測Keras-LSTM

時系列データ予測のチュートリアル

めざましじゃんけん広場で、じゃんけん予測を一緒に楽しんで頂ければ、一番幸いなのですが、Pythonを用いたKeras、LSTMなどの時系列予測を学習するためのチュートリアルになると思い、このコンテンツを提供します。

Jypyter notebookを導入していると、Pythonスクリプトの作成時に便利です。
必要なPython関係のライブラリーなどは、各自導入下さい。

  1. めざましじゃんけん広場へのログイン Twitterアカウントでログイン
    ヘルプページ
  2. めざましじゃんけん広場より、API認証向けのAPIトークンを取得
    ヘルプページ
  3. Pythonでスクリプト作成
    • APIトークンを取得している必要があります
    • 予想結果を登録する際は、予想する めざましじゃんけんの実施日と何戦目のじゃんけんかを指定する必要があります。
      通常、平日は4戦、土曜日は2戦のめざましじゃんけんが実施されます。

KerasのLSTMを用いたチュートリアルスクリプト

3入力3出力の時系列データを用います。
APIで取得したじゃんけん結果を整形し、KerasのLSTMを用いてじゃんけんの出してを予測しています。

処理の概要

  1. めざましじゃんけん結果をAPIで取得
  2. Pandasを用いたデーター整形
  3. Kerasを用いたLSTMでの時系列データ予測
    独自の学習モデルで時系列データ予測が実施出来ると思います。人工知能や機械学習のプロではないので、Kerasを用いたLSTM部分は、別サイトを参照して頂き、時系列予測を実装しました。
  4. テレビの出し手を予想しているので、自分の出し手を登録します。
    • TVがグー✊なら、自分の出し手はパー✋
    • TVがチョキ✌なら、自分の出し手はグー✊
    • TVがパー✋なら、自分の出し手はチョキ✌

次回のじゃんけん開催日と何戦目か。
じゃんけんの最終実施日と何戦目かが、取得したじゃんけん結果より分かります。
平日は全4戦、土曜日は全2戦、日曜日はなし。
現時点では、この実施計画を用いて、次回の対戦日と対戦回を算出して、めざましじゃんけん広場に、予想結果を登録します。
(一応、次回開催予定日と対戦回を返答する、APIの公開も検討中です)

GitHub

https://github.com/miki-ie/predictJanken

時系列予測部分の参考にさせてさせて頂いたサイト

【Python】LSTMによるサザエさんのじゃんけん予想