Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

2020年1月25日 AITC AT勉強会 成果発表会(2) aiCATs

255 views

Published on

<<AITC AI勉強会>>
チーム名:aiCATs
概要:身近なデータ(気象データ×交通データ等)を使った予測

Published in: Internet
  • Be the first to comment

  • Be the first to like this

2020年1月25日 AITC AT勉強会 成果発表会(2) aiCATs

  1. 1. Copyright © 2020 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. 対馬厳原の気象データによる あじ価格予測 第9期 AITC勉強会合同発表会 身近になったAI開発シリーズ:チーム aiCATs 赤井 真由美(株式会社システムフロンティア) 岡 守男(富士ゼロックス株式会社) 野田 洋之(個人会員) 2020年1月25日
  2. 2. Copyright © 2020 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. aiCATs自己紹介 ◆赤井 真由美(株式会社システムフロンティア) 職業:SE 趣味:銭湯巡り♨、ランニング、ねこ 自己PR:都内の銭湯を66か所巡った銭湯ライター。目標は都内銭湯全制覇!(544か所) ◆岡 守男(富士ゼロックス株式会社) 職業:技術系開発→専門営業 趣味:古武道、お城巡り、写真 自己PR:シニアでAIエンジニアに復活を目指す。 ◆野田 洋之(個人会員) 職業:事務 趣味:鉄道、旅行、写真、ねこ 自己PR:技術職への復帰を目指しています! 2
  3. 3. Copyright © 2020 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. チーム名について 今回の学習テーマ「AI」×3人とも「ねこ」好き・・・ 3
  4. 4. Copyright © 2020 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. テーマ 身近なデータ(気象データ×交通データ等)を 使った予測(Neural Network Console) テーマについて • 2019年9月勉強会「過去7日間の気象データから翌日の電 力使用量を推定」(気象庁大和田氏)発表を参考 • 気象データ×身近なデータを使って予測をしてみたい! 4
  5. 5. Copyright © 2020 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. データさがし 苦労したこと 5 日次のオープンデータが見つからない! ・交通オープンデータに使えそうなものがない・・・ ・そのほかのデータについては、月次や年次のデータは 多くあるが・・・ ・データ探し×選定に2か月ほどかかる・・・
  6. 6. Copyright © 2020 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. 見つけた日次データ • 環境省花粉観測データ • 全国大気汚染データ • メール警視庁(東京都):犯罪発生情報 • 東京都中央卸売市場日報 : 水産物、農産物などの価格、販売数 6 気象データとの組み合わせが 当たり前すぎる 連続してない。加工が大変 ・気象データとの因果関係ありそう ・データ量が豊富
  7. 7. Copyright © 2020 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. データの選定1 • 農産物:長期間の気象条件の影響。 • 水産物:漁のときの気象影響。 ねこは魚が好き。 7
  8. 8. Copyright © 2020 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. データの選定2 • まぐろ:冷凍マグロとの因果関係。輸入物。 • あじ:データが多くある!庶民的。 8
  9. 9. Copyright © 2020 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. 推測テーマ あじ(銘柄:中)の中値の価格予測 中値・・・最も多く取引された価格 (最頻価格)。 気象データ:対馬厳原の気象データ 対馬厳原(長崎県) ・・・長崎県がアジ漁獲量トップ 9
  10. 10. Copyright © 2020 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. 気象データの取得(1) 10 気象庁:過去の気象データ・ダウンロード (https://www.data.jma.go.jp/gmd/risk/obsdl/index.php) 選択
  11. 11. Copyright © 2020 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. 気象データの取得(2) 11 選択
  12. 12. Copyright © 2020 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. 気象データの取得(3) 12 選択 選択
  13. 13. Copyright © 2020 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. 気象データの取得(4) 13 ・気温 日平均気温 日最高気温 日最低気温 ・降水 降水量の日合計 10分間降水量の日最大 ・日照/日射 日照時間 ・風 日平均風速 日最大風速(風向) 日最大瞬間風速(風向) 日最大風向 ・湿度/気圧 日平均蒸気圧 日平均相対湿度 日最小相対湿度 日平均現地気圧 日平均海面気圧 日最低海面気圧
  14. 14. Copyright © 2020 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. 気象データの取得(5) 14 ①1年間ずつ 指定 ②ダウンロード
  15. 15. Copyright © 2020 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. 気象データの取得(6) 15 ①1年間ずつ 指定 ②ダウンロード
  16. 16. Copyright © 2020 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. 気象データの作成 16 ① 2003年~2019年のデータを取得 ② 不要なヘッダ行・品質情報といった不要な項 目を削除 ※データ作成にはRを使用
  17. 17. Copyright © 2020 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. あじの中値データの取得(1) 17 選択 東京都中央卸売市場日報 販売結果 (http://www.shijou-nippo.metro.tokyo.jp/)
  18. 18. Copyright © 2020 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. あじの中値データの取得(2) 18 選択
  19. 19. Copyright © 2020 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. あじの中値データの取得(3) 19 選択
  20. 20. Copyright © 2020 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. あじの中値データの取得(4) 20 選択
  21. 21. Copyright © 2020 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. あじの中値データの取得(5) 21 選択
  22. 22. Copyright © 2020 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. あじの中値データの取得(6) 22 選択
  23. 23. Copyright © 2020 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. あじの中値データの取得(7) 23 選択
  24. 24. Copyright © 2020 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. あじの中値データの作成 24 ① 2004年~2019年のデータを取得 ② 「あじ」(販売方法:相対、銘柄:中、 中値)のデータのみを抽出 ※データ作成にはRを使用 ※相対 売り手と買い手が1対1で話し合い、 値段を決めていく方式
  25. 25. Copyright © 2020 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. データのクレンジング/データセットの作成 25 1. 厳原の気象データの最大風速(風向)、最大瞬間風速(風向)、 最多風向について、 16風向を北と南の2風向に変換。
  26. 26. Copyright © 2020 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. データのクレンジング/データセットの作成 2. 厳原の気象データ、あじの中値データ、共に欠損値が存在したため、 SVMで補完。 3. 日付をキーとして、厳原の気象データとあじの中値データを結合。 x日前、y日後のデータと結合が必要な場合、日付を適宜スライドしてから 結合。 26
  27. 27. Copyright © 2020 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. 予測日について 27 15日前 2日前 1日前 予測日 この時点で揃うデータを 予測に用いる この日の中値を予測 ・・ ・・・・ ・・・・・ ・・・・・ ・・・・ ・・ ~
  28. 28. Copyright © 2020 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. データセットについて 分類 変数の 種類 変数の 個数 変数名 備考 説明 変数 中値 数値 1 中値 厳原の 気象データ 数値 15 最高気温,最低気温,平均気温,降水量の合計, 十分間降水量の最大,日照時間,最大風速, 最大瞬間風速,平均海面気圧,平均蒸気圧, 平均湿度,平均風速,平均現地気圧, 最小相対湿度,最低海面気圧 カテゴリ 3 最大風速(風向), 最大瞬間風速(風向),最多風向 2値 (北,南) 開場日 フラグ カテゴリ 3 開場日フラグ,開場日フラグ(2日後), 開場日フラグ(3日後) 2値 (開場、休場) 目的 変数 中値 数値 1 中値 28
  29. 29. Copyright © 2020 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. データセットについて プロセス データセット データ セット数 目的変数「中値」の日付 説明変数の日付 学習 学習用データ 4394 2005/12/21 ~ 2017/12/31 目的変数「中値」の 15日前~2日前検証用データ 365 2018/1/1 ~ 2018/12/31 推論 評価用データ 381 2018/12/16 ~ 2019/12/31 目的変数「中値」の2日前 29
  30. 30. Copyright © 2020 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. モデルについて 比較のため、説明変数を変えて3つのモデルを作成しました。 ➢ 中値 ➢ 厳原の気象データ ➢ 厳原の気象データ、中値 開場日フラグはすべてのモデルで使用しています。 それぞれについて、学習用のモデルと推論用のモデルを作成しています。 30
  31. 31. Copyright © 2020 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. モデル(学習用) 31 説明変数のうち、数値データを BatchNormalization で正規化。 正規化しないと学習が収束しなかった。 モデルは、オーソドックスなLSTM1層。 図は説明変数が「厳原の気象データ、中値」の場合ですが、説明変数の個数が異なる ことによる Shape の違いを除いて、モデルの構造は同一です。 Input は数値データを入力。 サイズは 224 (16×14日)。 Input_2 は2値データを入力。 サイズは 84 (6×14日)。 RecurrentInput、Delay、RecurrentOutput の各 レイヤーでループを構成、14日分の 説明変数を時間軸として学習させます。
  32. 32. Copyright © 2020 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. モデル(学習用) 32 LSTM の Shape は Argument レイヤーで変数化。
  33. 33. Copyright © 2020 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. モデル(学習用) 33 過学習の防止、学習の進み具合 の調整のため、Dropout を挿入。 Adam の初期設定値で学習がスムーズに進むよう、 目的変数(中値)の値に 0.01 を掛けて レンジを調整。(中央値 525 → 5.25) 予測値は 0.01 倍の値で出力されるため、 100 を掛ける必要がある。 回帰問題なので、出力層は恒等関数 Identity レイヤー、 評価に二乗和誤差 SquaredError レイヤー を使用。
  34. 34. Copyright © 2020 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. 学習 34 Newral Network Console で学習を実行。
  35. 35. Copyright © 2020 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. 学習パラメータ 35 タブ パラメータ 値 備考 Global Config Max Epoch 180 Batch Size 365 Mini-batch 学習による最適化の際、検証用データが 1年分すべて使用されるよう、365 を設定。 Monitor Interval 2 Optimizer Updater Adam Alpha 0.00050 ~ 0.00130 デフォルト値 0.001 学習パラメータは、試行錯誤の結果、以下のように落ちついた。(記載のないパラメータはデフォルトのまま。) 学習の際、モデルの二乗和誤差 SquaredError の最小値は以下のようになった。 説明変数 二乗和誤差の最小値 中値 4.0程度 厳原の気象データ 4.6程度 厳原の気象データ、中値 3.4程度
  36. 36. Copyright © 2020 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. GPUの有無、性能による学習時間 比較のため、各人のPCで学習を実行しました。 36 Process SPEC 実行時間 GPU NVIDIA GeForce GTX 1060 GDDR5 192bit 6GB 82.1[s] GPU NVIDIA GeForce RTX 2060 GDDR6 6GB 45.1[s] CPU Intel Core i5 9400F 6コア/6スレッド Base Clock 2.9GHz / Turbo Boost 4.1G DDR4-2666 64GB 363.4[s] 説明変数:厳原の気象データ、中値 エポック数:180
  37. 37. Copyright © 2020 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. モデル(推論用) 37 学習用のモデルを改造し、推論用のモデルを作成。 説明変数を1つ入力すると、予測値が1つ出力されるよう、ループを構成する レイヤーを撤去します。 図は説明変数が「厳原の気象データ、中値」の場合です。 Input は数値データを入力。 サイズは 16。 Input_2 は2値データを入力。 サイズは 6。
  38. 38. Copyright © 2020 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. モデル(推論用) 38 モデルが出力する予測値をそのまま使用できるよう、 Affine_3 の出力に 100 を掛けます。
  39. 39. Copyright © 2020 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. 推論 39 NNC からモデルの Python コードをエクスポート。推論用のコードを作成、Jupyter Notebook 上で実行。
  40. 40. Copyright © 2020 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. 推論結果の評価 中値の実測値と予測値の相関係数、および平均絶対誤差 (MAE) を算出。 40 モデルの説明変数 相関係数 MAE 中値 0.3457 231.8 厳原の気象データ 0.3106 182.4 厳原の気象データ、中値 0.5244 136.0 相関係数、MAE共に思わしくない結果となった。 中値は時系列データのため、時系列の変化をグラフで確認 (次スライド以降参照)。 MAE = 1 𝑛 ෍ 𝑖=1 𝑛 |𝑦𝑖 − ො𝑦𝑖| 𝑦𝑖 : 実測値 ො𝑦𝑖 : 予測値
  41. 41. Copyright © 2020 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. あじの価格予測(2019年1月~3月) 41 0 200 400 600 800 1,000 1,200 1,400 1,600 中値 豊洲市場のあじ(銘柄:中)の中値 実測値 予測値(説明変数:中値) 予測値(説明変数:厳原の気象データ) 予測値(説明変数:厳原の気象データ、中値)
  42. 42. Copyright © 2020 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. あじの価格予測(2019年4月~6月) 42 0 200 400 600 800 1,000 1,200 1,400 1,600 中値 豊洲市場のあじ(銘柄:中)の中値 実測値 予測値(説明変数:中値) 予測値(説明変数:厳原の気象データ) 予測値(説明変数:厳原の気象データ、中値)
  43. 43. Copyright © 2020 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. あじの価格予測(2019年7月~9月) 43 0 200 400 600 800 1,000 1,200 1,400 1,600 中値 豊洲市場のあじ(銘柄:中)の中値実測値 予測値(説明変数:中値) 予測値(説明変数:厳原の気象データ) 予測値(説明変数:厳原の気象データ、中値)
  44. 44. Copyright © 2020 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. あじの価格予測(2019年10月~12月) 44 0 200 400 600 800 1,000 1,200 1,400 1,600 中値 豊洲市場のあじ(銘柄:中)の中値 実測値 予測値(説明変数:中値) 予測値(説明変数:厳原の気象データ) 予測値(説明変数:厳原の気象データ、中値)
  45. 45. Copyright © 2020 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. 結論 1. 厳原の天候が鯵の価格に影響を与えていると思われる。 2. 価格の正確な予測まではできていない。 3. 季節変動を予測できていないのは、価格の変曲点を 予測できていない。高い値から低い値に変化するとき、 低い値から高い値に転じるタイミングの予知が難しい。 45
  46. 46. Copyright © 2020 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. 感想 ◆赤井 • データの選定や加工が、想像していた以上に大変であり、ディープラーニングを活用するにはデータの 準備が大事であるということを身をもって体験できた。 • NNCのおおよその操作を覚えることができたが、活用するにはまだまだ勉強が必要。 ◆岡 • データ選定やクレンジングなど前工程で時間を費やしてしまい。時間配分が思ったように出来なかった。 データに関する知見(生マグロと冷凍マグロの関係)なども必要であった。 • 実際のデータで予測モデルを作る時にどのモデルがいいにだいぶ試行錯誤が必要で、経験を積まないと 使いこなせないと感じた。 ◆野田 • 予測モデルを作る作業より、その前段階のデータ収集、およびデータの加工が大変であることを あらためて認識した。 • チームで作成したデータを実際に手を動かして NNC で学習、推論することで、AIへの理解を深めることが できた。 46
  47. 47. Copyright © 2020 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. http://aitc.jp/ https://www.facebook.com/aitc.jp 最新情報は こちらをご参照ください ハルミン AITC非公式イメージキャラクター

×