ここ最近、機械学習の学習をしているのですが、色々なアルゴリズムがあったり特殊なソフトをインストールしなければならなかったりと、そこそこハードルが高い印象です。
もっとお手軽に機械学習を試せないかなということで、最も簡単な学習サービスと謳われているAmazon Machine Learning(以下、AML)を試してみました。
AMLの記事を探していたところ下記の記事を見つけました。
Amazon Machine Learningを理解するために3つの方法で天気予測をしてみた(二項分類編)
http://recipe.kc-cloud.jp/archives/7694
気象庁が提供している過去の気象データを機械学習で分析して、天気の予測をするという内容で、手順も詳細に書いてあるし明日の天気も気になるので、こちらの記事を参考にAMLを試してみました。
詳細な手順は上記記事に書いてあるので省きますが、記事の通りに進めていくと、だいたい2時間くらいで天気予測の結果を出せました。
私は2013/7/5 ~ 2015/7/3までの気象データ(平均気温や降水量など729件)を機械学習にかけて分析してみました。
参考記事では75%の正解率でしたが、私が試してみた結果では72%の正解率でした。
データを増やしたら結果が変わるかなと思い、2011/7/5 ~ 2013/7/4までのデータを追加して再度実行してみましたが、正解率は74%と微妙な上昇しかしませんでした。
ここからは参考記事になかったのですが、AMLが各日に対してどのような予想をしていたかは「ML model report」の「Summary」ページ上にある「Generate batch predictions」をクリックしてS3上のファイルに出力できます。
出力された結果を開いてみると、下記画像のようにtrueLabel(実績値)、bestAnswer(予測値)、scoreがありました。

実際に機械学習に使った気象データと上記のAMLが各日に対して予測した結果をマージして見てみると、結構予測が外れている感じが・・・・
まぁ1400件程度のデータで74%の正解率なので、200件以上外れている日が出てくるしそんなものなのかもしれません。

上記図がマージしたデータで、赤枠がAMLの予想値で、その左隣りの列が翌日に雨が振ったかどうかの実績になります。