面倒な特徴量エンジニアリングやモデル選択、モデルのパラメータ調整などを全自動で実施してくれるAutoML(自動機械学習)が最近発達してきています。
自動機械学習(AutoML) Web講座の前シリーズでは、主にPythonで使えるAutoMLであるTPOTについてお話ししました。
今回の自動機械学習(AutoML) Web講座 Ⅱでは、PythonだけでなくRからも使えるAutoMLである H2O AutoML について説明していきます。
ただ、そもそもH2Oって何??? ……という方もいると思いますので、今回はH2O自体のお話しからしたいと思います。
H2Oとは?
H2O(エイチツーオー)は、H2O.ai社によって開発された、インメモリ型の機械学習プラットフォームです。
RやPython、Sparkなどでも動作可能で、商用可能なアパッチライセンスで配布されているオープンソースソフトウェアです。
要は、H2Oは無料で誰でも使えるということです。
では、どのような特徴があるのか、簡単に説明していきます。
H2Oの特徴
AutoML機能がある
嬉しいことに、H2Oには面倒なパラメータ調整などを全自動で実施してくれるAutoML(自動機械学習)機能があります。
もちろん、AutoMLに頼らず自分自身の手で機械学習モデルを構築することもできます。
ちなみに、H2O.ai社ではDriverless AIという商用製品も出しています。
[オープンソース版] H2O
https://www.h2o.ai/products/h2o/[有料版] H2O Driverless AI
https://www.h2o.ai/products/h2o-driverless-ai/
多くの場合、オープンソースの無料版のH2Oで十分です。
ノンコードなGUI環境(H2O Flow)がある
さらに、ノンコードで機械学習モデルを構築するH2O FlowというGUI環境が用意されているのも特徴です。
H2O Flowを利用してみたい方は、以下を参考にして頂ければと思います。
Download H2O
http://h2o-release.s3.amazonaws.com/h2o/rel-zipf/4/index.html
つまり、プログラミング言語を覚えることなく、機械学習のモデル構築ができるということです。
もちろん、AutoML機能も使えます。
RやPythonからH2Oを使える
さらにさらに、RやPythonからH2Oを使うこともできます。
と言うことは、H2OのAutoML機能もRやPythonから使えると言うことです。
このWeb講座シリーズのメインテーマです。
分散インメモリー処理機能
さらにさらにさらに、分散インメモリー処理機能によって、容量の大きなデータセットも扱え比較的高速に処理できます。
H2O.ai社で開発している「H2O Sparkling Water」というオープンソースオフトウェアがあり、機械学習プラット―フォームであるH2Oに、Sparkの機能を組み合わせることができます。
H2O Sparkling Water
https://www.h2o.ai/products/h2o-sparkling-water/
H2Oの特徴まとめ
まとめると……
- 無料で誰でも使える
- ノンコードでも使える
- RやPythonからも使える
- AutoML機能がある
- 大容量データにも対応できる
……といった感じです。
次回
このWeb講座シリーズのメインテーマは、H2OのAutoML機能をRやPythonから使うことです。
しかし、いきなり使うことは出来ないので、RやPythonからH2Oの機械学習モデル構築機能を使うためのパッケージの読み込みなどの準備などの説明から入ります。
と言うことで、次回はRやPythonからH2Oの機能を使うための準備のお話しになります。それぞれ分けてお話しします。