前回行ったこと
前回、前々回の記事では、Aquarium というH2O.aiが提供しているクラウド環境を使って DriverlessAI の起動、学習の実行をしました。
前回、前々回の記事はこちら!
DriverlessAI -MLの自動化ツール- 機械学習の実行!
DriverlessAI -MLの自動化ツール- まずは起動から!
今回は学習後の操作方法を見ていきたいと思います。
こちらの公式チュートリアルを参考にしています。
Time Series Tutorial - Retail Sales Forecasting
モデルの解釈
モデル解釈の準備
学習が終わった画面から開始します。
学習が終わると中央上部分にボタンが沢山並びます。
(黄色のボタンが縦にずらっとならんでいるところです)
作成されたモデルがどのようなものか見ていきます。
上から2つ目の INTERPRET THIS MODEL をクリックします。
クリックするとモデル解釈のための準備を始めます。
MLI (Machine Learning Interpretability) 画面
準備が終了するとしたのような表示に切り替わります。
ここがモデル解釈のページ MLI です。
(このページから前の学習画面などに戻るには、左上の < マークをクリックする必要があります)
モデル全体の精度確認
TIME SERIES MODEL INTERPRETATION と表示されている枠内を見ていきます。
まず一番上に表示されているのが、モデルの精度に関わるグラフです。
横軸が時間、縦軸がR2になっています。
なので、時系列ごとの予測結果精度を表示していると言えます。
R2(決定係数) は実績と予測がどれだけ似ているか (相関があるか) を計算しています。
1に近づく (グラフの上方向にいく) と精度が高いと言えます。
(縦軸は学習の時に選択した指標によって変化します。)
分類ごとでモデル精度を確認
次にもう少し下にスクロールして見てみます。
Top Group Test Metrics や Bottom Group Test Metrics という表記があります。
これらは、予測結果のR2が高い順、低い順で表示されています。
今回は Time Group Column に 部門の Dept, 店舗の Store を指定しているので、この2つの組み合わせで表示されています。
実績値と予測値のグラフ化
最後に一番下を見ると、Group Search(Dept, Store) と書かれた検索ボックスがあります。
ここに任意の部門番号と店舗番号を入れると、その部門、店舗に対応した実績値と予測値がグラフ化されて表示されます。
例えば、部門 : 1 , 店舗 : 1 として検索してみます。
すると、ボックスの下グラフが表示されます。
黄色い線が実績の値、テストデータに対する白い線が予測の値です。
(学習の設定時にテストデータとして選択したものです)
このモデルだと売上をそれなりに予測できているのがわかります。
テストデータの予測結果取得
もちろん、予測結果を見れるのはDriverless AI上だけ、、、ということはありません。
学習画面に戻ります。 (MLIの画面から戻るには左上の < ボタンを))
学習画面に戻ったところで、上から6つめの DOWNLOAD PREDICTIONS をクリックします。
そうすると、右側に TRAINING PREDICTIONS と TEST SET PREDICTIONS の項目が表示されます。
TRAINING PREDICTIONS は学習用に使ったデータに対する予測結果
TEST SET PREDICTIONS はテスト用に設定したデータに対する予測結果をそれぞれダウンロードできます。
(TEST SET PREDICTIONS の結果はMLIで表示したものと同じです)
##データセットを選択して予測結果を取得
他にも事前に登録したテストデータ以外にも予測結果を得る方法があります。
上から4つ目の SCORE ON ANOTHER DATASET をクリックします。
DriverlessAIにアップロード済みのデータが表示されます。
(事前にデータのアップロードは必要です。)
予測したいデータを選択すると、結果を出力するファイルに含めるカラムを選択します。
DOWNLOAD PREDICTIONS をクリックするとCSVファイルをダウンロードできます。
ダウンロードした結果がこちらになります。
もともとのデータに Weekly_Sales.predicted のカラムが追加されています。
このカラムが予測結果です。
#MLIの機能
今回は時系列データを使った学習を行いましたが、そうでない場合の MLI にはもっと多くの説明可能性に対する指標が表示されます。
こちらが一例です。
こちらの方法についても、今後の記事で書いていこうと思います。