2
7

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

AutoML (自動機械学習) による時系列データ予測

Last updated at Posted at 2020-05-22

Azure Machine Learning の AutoML (自動機械学習) を使用して、時系列予測回帰モデルを学習する手順を紹介します。

AutoML (Automated ML) は、データや基本的な設定をインプットするだけで、Azure Machine Learning 側で特徴量エンジニアリンング、モデル選択、ハイパーパラメータ選択などのプロセスを全自動で行ってくれる機能です。詳しくは以下を参照ください。
自動機械学習 (AutoML) とは

以下、本記事で使用するサンプルのコードとデータです。
:robot: サンプルコード (github)
:beers: サンプルデータ (トレーニング用) - 1992年~2016年のビール製造時系列データ
:beers: サンプルデータ (テスト用) - 2017年~2018年のビール製造時系列データ

以下のトレーニングデータ (1992~2016年) をもとに、2017年以降のビールの需要予測をします。日付と数値データ (売上など) の2つのカラムを持つ CSV データがあれば同様の手順で試すことが可能です。
image.png

Azure Machine Learning の作成

  1. Azure Portal へのアクセス
  2. 以下の順にメニューを押下
    1. [+ リソースの作成]
    2. [AI + Machine Learning]
    3. [Machine Learning]
      image.png
  3. 以下の項目を適宜設定
  • ワークスペース名: 任意
  • リソースグループ: 任意
  • 場所: 東日本
  • ワークスペースのエディション: Enterprise(Auto ML を使用するため、Basic でなく Enterprise を選択します)
    上記設定後、[確認および作成]ボタンによりデプロイを開始
    image.png

Azure Machine Learning Studio の起動

MLの画面から、Azure Machine Learning Studio の [今すぐ起動する] をクリック
(あるいは、https://ml.azure.com にアクセスして、Azure Machine Learning studio の画面を直接開きます)
image.png

コンピューティング インスタンスの作成

  1. 統合開発画面 Azure Machine Learning studio の [コンピューティング] を開く
  2. [コンピューティング インスタンス] のタブを選択し、[+新規] をクリック
  3. 以下の項目を適宜設定
  • コンピューティング名: 任意
  • Virtual machine type: CPU (Central Processing Unit)
  • 仮想マシンのサイズ: デフォルト (Standard_DS3_v2)
    ※4 vCPUコアあれば十分です

上記設定後、[作成] ボタンによりデプロイを開始
image.png

トレーニング クラスターの作成

  1. 統合開発画面 Azure Machine Learning studio の [コンピューティング] を開く
    [Compute clusters] のタブを選択し、[+新規] をクリック
  2. 以下の項目を適宜設定
  • コンピューティング名: 任意
  • Virtual machine type: CPU (Central Processing Unit)
  • 仮想マシンのサイズ: デフォルト (Standard_DS3_v2)
    ※4 vCPUコアあれば十分です
  • 最小ノード数: 0
  • 最大ノード数: 1

上記設定後、[作成] ボタンによりデプロイを開始
image.png

サンプルコード&データのアップロード

  1. ml.azure.com から、統合開発画面 Azure Machine Learning studio にアクセスします。
  2. [ノートブック] をクリックし、[フォルダーのアップロード] をクリックして、github からダウンロードした zip 解凍後のフォルダーをアップロードします。
    image.png

ノードブックの実行

  1. [beer-forcasting-automated-ml.ipynb] をクリックし、[Jupyter] > [Jupyter で編集] をクリック
  2. Kernel の設定
  3. Jupyter で利用する Python 環境を指定
  4. [Python 3.6 – AzureML] を選択
  5. セルの実行(セルの実行方法は以下 3 通り)
  6. ショートカット:Ctrl + Enter キー (推奨)
  7. Cell バーから [Run Cells] を選択
  8. [> Run] を選択

実行している内容の詳細は ノートブック 内の説明を参照ください。

最後まで実行すると、ベストなモデルは平均絶対誤差率 (MAPE) が 6.3% と、非常に高い精度が得られます。

Model MAPE:
0.06370896673493383

Model Accuracy:
0.9362910332650661

予測値と実際の値をプロットしたものです。

image.png

(モデルの精度確認)

Azure Machine Learning studio の [自動 ML] のメニューからも、AutoML が試行した各種モデルの情報が GUI 経由で確認可能です。

  • 最適なモデルの概要
    image.png

  • AutoML が試行したモデルの一覧
    image.png

  • モデルの精度
    image.png

  • 説明変数の重要度
    image.png

参考

2
7
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
7

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?