AutoGluon とは#

AutoGluon は、AWS が開発している AutoML(Automated Machine Learning)のツールキットである。データ前処理、ハイパーパラメーターチューニング、モデルアンサンブルまでの多くのプロセスを自動化してくれる。つまりデータを入力するだけでこれらのプロセスを自動的に実行し、最適なモデル推論結果を出力してくれるのだ。

AutoMLとは特定の機械学習のアルゴリズムを指すのではなく、機械学習のプロセスの一部を自動化する技術のことを指し、機械学習の専門家でなくても機械学習のモデルを作成できるようにすることを目的としている。AutoML のツールキットは AutoGluon だけに止まらず、有名なもので H2O, FLAML, Google Cloud AutoML などが挙げられる。

_images/3-1-1.png

Fig. 10 AutoML が自動化するプロセス#

AutoGluon AutoML が自動化するプロセス。前処理に止まらず、ハイパーパラメーター最適化からモデルのアンサンブル(精度向上)までを自動化してくれる。

AutoGluon Notebook 利用の際の注意点#

本章で紹介している AutoGluon Notebook は、TD AutoML の枠組みで AutoGluon を実行できるものになっている。元々の AutoGluon の適用範囲は

  • テーブルデータ:解約予測(分類)、スパム判定(分類)、売上予測(回帰)、スコア予測(回帰)

  • 画像分類:商品の分類、異常画像の判定

  • 物体検出:写真中の人・動物・車の分類

  • 文章分類:レビューの分類、フィードバックの分類

であるが、以下に注意して欲しい。

Important

TD AutoML における AutoGluon は、テーブルデータのみを対象としていることに注意。情報の検索の際には “AutoGluon Tabular” で検索しよう。

AutoGluon が解決してくれる課題#

AutoGluon 教師あり学習を実行し、以下の問題を解決してくれる。

  • 分類問題

    • 2値分類

    • 多値分類

  • 回帰

ただ、何の問題について学習し、解決したいのかは AutoGluon 自身が類推してくれるので明示する必要はない。以下の実行イメージを見てほしい。

_images/3-1-1-1.png

Fig. 11 target_column に指定したカラムの値のバリエーションから2値分類、多値分類、回帰をすべきかを自動的に推論してくれる。AutoGluon の学習を実行するために必要な情報は主に、学習をさせる input_tabletarget_column だけなのである。#

AutoGluon Notebook で考慮されるモデル一覧#

実行時には、以下のモデルが考慮される。

複数のモデル候補を、さらに各々のモデル内でも異なるハイパーパラメータを適用し、最適な(予測精度の高い)モデルが選択される。

多層スタックアンサンブルによる精度向上#

AutoGluon では、複数のモデルを組合せた新しいモデルで高精度なモデルを作るが、多層スタックアンサンブルを実行している。

多層スタックアンサンブルとは、ベースレイヤーの各モデルの出力と元のデータ特徴量を結合したものをスタックレイヤーの各モデルに入力し、その出力に対してアンサンブル選択を実施することを指す。

_images/3-2-1.png

Fig. 12 多層スタックアンサンブル、引用元:AutoGluon-Tabular: Robust and Accurate AutoML for Structured Data#

_images/3-2-1.png

Fig. 13 アンサンブルの過程#

Notebook 内でモデルアンサンブルの過程を確認することができる。