Databricks は本日、Databricks AutoML を発表しました。Databricks AutoML は、探索的データ解析(EDA: Exploratory Data Analysis)、特徴量エンジニアリング、モデルのトレーニング、チューニングといった高負荷の開発作業を自動化することで、機械学習モデルの迅速な構築・デプロイを可能にするツールです。この機能のローンチによって、データチームは、データセットの選択、トレーニングの設定、モデルのデプロイまでを全て UI を通じて行えるようになります。また、我々は、データサイエンティストが、それぞれのトレーニングに対応して生成されたソースコードを含むノートブックにアクセスすることでトレーニングをカスタマイズしたり、実運用に向けて専門家とコラボレーションできる先進的なエクスペリエンスを提供します。Databricks AutoML(Automated Machine Learning)は、自動的に実験におけるメトリクス、パラメーターを追跡する MLflow や、デプロイメントに向けてチームがモデルを登録しバージョン管理を行える Databricks モデルレジストリを含む Databricks の機械学習エコシステムと統合されています。
AutoML(Automated Machine Learning)に対するグラスボックスアプローチ
まず、AutoML とは、Automated Machine Learning のことで、直訳すると「自動化された機械学習」です。機械学習を用いたデータ分析プロセスを自動化することや、機械学習モデルの設計・開発・構築そのものを自動化することを意味します。現在、多くの既存の AutoML ツールは不透明な箱となっています。すなわち、ユーザーはモデルがどのようにトレーニングされたかを知ることができません。これらのツールを使っているデータサイエンティストは、ドメイン特有の修正を行う際や、業界における規制の要求に応えるために監査を行う際に壁に突き当たることになります。このため、データチームはモデルをカスタマイズするために時間とリソースを投入することになり、本来得るべき生産性とは逆行するようなリバースエンジニアリングを行う羽目になります。
このような状況を受けて、我々は開発者の皆様がワークフローを拡張できるように、全てのトレーニングに対応する Python ノートブックを提供するグラスボックスの AutoML アプローチである Databricks AutoML を提供したのです。
データサイエンティストは、自身のドメイン知識を活用して生成されたノートブックに対してセルの修正、追加を容易に行えます。また、データサイエンティストは、定型文の記述をスキップして迅速にML開発に着手するために、Databricks AutoML が生成したノートブックを活用することもできます。
データセットを素早く確認する
Databricks AutoML(Automated Machine Learning)は、機械学習モデルトレーニングとモデル選択に加えて、データセットの基本的な統計サマリーを得るための探索用ノートブックを生成します。多くの方が面倒と感じる探索的データ解析のステージを自動化することで、Databricks AutoML はデータサイエンティストの時間を節約し、データセットがトレーニングに適しているかどうかを迅速に確認できます。データ探索用ノートブックは、高いカーディナリティ、高い相関、ヌル値などの警告、変数の分布に関する情報をユーザーに提供するために pandas profiling を使用します。
ML(機械学習開発) のベストプラクティスを学ぶ
AutoML のエクスペリエンスは、実験時にメトリクス、パラメーターを追跡する API である我々の MLflow と統合されています。また、データサエンスチームの生産性を改善するための ML のベストプラクティスを活用しています。
- Experiments のページから、トレーニングの実行結果を比較し、登録およびモデルサービングを Databricks モデルレジストリで行うことができます。
- 生成されるノートブックにはトレーニングに用いられたコードが含まれます。コードには、データのロードから、テストセット・トレーニングセットの分割、ハイパーパラメーターのチューニング、説明可能性のための SHAP プロットまでが含まれます。
AutoML パブリックプレビューの機能
Databricks AutoML(Automated Machine Learning)のパブリックプレビュー版では、(二値、マルチクラス)分類、回帰問題に対する sklearn モデル、xgboost モデルに対して並列トレーニングを行うことが可能です。数値、カテゴリー、タイムスタンプの特徴量をサポートしており、自動的に one-hot エンコーディング、null 値の補完を行います。トレーニングされたモデルは、全てのデータ前処理が推論モデルでラッピングされるように、sklearn pipelines となっています。
加えて、Databricks AutoML(Automated Machine Learning)にはいくつかの高度なオプションがあります。多くのチームは AutoML はすぐに答えを必要としますので、お客様が停止条件(タイムアウト時間、トレーニングの実行回数)を設定することで、どのくらい AutoML のトレーニングを行うのかを制御できます。モデルのパフォーマンスを評価するためのメトリクスを設定することも可能です。
パブリックプレビューの Databricks AutoML(自動機械学習)を使い始める
Databricks AutoML はパブリックプレビューで利用可能であり、Databricks の機械学習エクスプリエンスの一部として利用できます。利用を開始するには以下の手順を踏みます。
- UI の左側にあるサイドバーから “Machine Learning” を選択して、Databricks AutoML にアクセスします。左のナビゲーションバーから “(+) Create” をクリックして “AutoML Experiment” をクリックするか、Experiment ページで “Create AutoML Experiment” をクリックします。
- ドキュメントにある AutoML API を使用します。
Databricks AutoML をトライする準備はできましたか?Databricks AutoML の詳細に関しては、AWS、Azure、GCP のドキュメントを参照してください。