著名な方の意見を参考にAutoMLでDSの役割がどう変わりそうなのか調べてみました。
AutoMLとは
AutoMLはGoogleの提供する学習モデル構築サービスで、GCP上のデータ(GCS/GBQ)を使ってモデルを構築するサービスです。GUIベースなのでやることは推定対象の目的変数を選ぶだけです。特徴量として除きたい説明変数は除外することができます。作られたモデルは決定木のように推定で重要な特徴量を確認することができます。新しい特徴量を作りたい場合はBigQueryで特徴量を作り、AutoMLで学習させれば良いのでGCP上で完結します。ノンプログラミングでビジネスサイドの方でもモデルが作れるサービスとなっています。
メリット
推定精度が高い
AutoMLは以下のような実績もあり、高い精度のモデルを作ることができます。
引用
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
簡単な分析も可能
分析タブで目的変数との相関など確認することができ、モデル構築後は説明力の高い変数の確認もできます。
デメリット
推定精度が安定しない
良い結果がでるときもあれば悪いときもあり実行結果が安定しません。
費用が高く学習頻度が多い場合は使えない(リアルタイム性の高いデータ)
モデルの学習に1時間1900円と高いです。データの更新頻度と変動が多く再学習が必要なリアルタイム性の高いモデルケースには使えなそうです。
# 公式サイトより引用
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
モデルのトレーニングの費用
モデルのトレーニングの費用としては、この目的に使用されるコンピューティング リソースに対し、1 時間あたり $19.32 が課金されます。秒単位まで計算して請求されます。この料金には、n1-standard-4 と同等のマシン 92 台を並行して使用する料金も含まれています。
また、1 回限り(請求先アカウントごと)の 6 時間の無償トレーニングも用意されています。
モデルのデプロイメントの費用
モデルのデプロイメントの費用としては、モデルをデプロイするマシン 1 台ごとに 1 時間あたり $0.005/GiB が課金されます。MiB/秒単位まで計算して請求されます。現在、低レイテンシに対応するためにモデルを 9 台のマシンのメモリに複製しているため、この費用 × 9 の計算となります。
たとえば、モデルのサイズが 10 GiB であり、デプロイ時間を 3 時間とすると、$0.005 × 10 × 3 × 9、つまり $1.35 が請求されます。
モデルを使用してオンライン予測を実施するには、まずモデルをデプロイする必要があります。
バッチ予測の費用
モデルを使用するバッチ予測の費用としては、1 時間あたり $1.16 が課金されます。秒単位まで計算して請求されます。この料金には、n1-standard-4 と同等のマシン 5.5 台を並行して使用する料金も含まれています。
また、1 回限り(請求先アカウントごと)の 6 時間の無償バッチ予測も用意されています。
オンライン予測の費用
モデルを使用するオンライン予測の費用としては、1 時間あたり $0.21 が課金されます。ミリ秒単位まで計算して請求されます。この料金には、n1-standard-4 と同等のマシン 1 台を使用する料金も含まれます。
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
cloud.google.com
DSの意見
おもにTwitterから著名な方達がどう思ってるのか調べてみました。
Kaggler
AutoMLを駆使することができる人がいれば、その人で機械学習モデル作る仕事だけはできる、ってのは正しいんだけど、AutoMLを使いこなすには何を予測することが業務課題の解決になるのか考える力が必要なわけで、それって簡単じゃない。
— キャッシュ (@Seed57_cash) October 11, 2019
モデル作り始めた時点でモデルを作る仕事はほとんど終わってる。
機械学習自動化ツールが出てきてから「仕事なくなる」と煽られる機会が増えたが、残念ながら年収は倍以上になっている
— onodera (@0verfit) October 17, 2019
保険業界に関して私の知りうる限りでは,3 年以上前の Kaggle では, Prudential, Allstate, AXA 等と大手保険会社がこぞって課題をだしていましたが,近年は保険会社からの課題は殆どみなくなってしまいました.
— HoxoMaxwell!🎃 (@Maxwell_110) September 21, 2019
AutoML などにみられるような「AIの民主化」が進んだ結果といえるとも思っています. pic.twitter.com/H24AivVFn9
AutoMLで代替可能なDS人材は実際いるのだろうか。
— ☔️⚡️ (@nardtree) October 18, 2019
特徴量のエンジニアリングに対して、データの全体の傾向を見る→ドメイン特有の事象を想像する→実際に手元のテーブルからそれを表現する特徴量を作る、ってことすらAutoMLは今はできないだろう。
LightGBMを回す人という視座になってるから否定する
データサイエンティストじゃないのでデータサイエンティストが不要になるかはどうかはわからないけど、kaggleの問題を解くだけならそのうちAutoMLに敵わなくなるんじゃないかなーと思ってる。CVは特に。自分はある意味それしかできないので、どういうスキルを身に着けていくべきか、という焦りはある。
— かまろ/Camaro (@mlaass1) October 23, 2019
Googleの方
1年前にオーラルケア大手さんと議論したときも、この要件ならとりいそぎAutoMLを試し、この要件なら専門家入れてTFでPoC、って組み合わせ提案してたのを思い出す。他のお客様案件でも同じ。実際の案件ではAutoMLだけで全て済むことは少ないので、適材適所。
— Kazunori Sato (@kazunori_279) October 21, 2019
最近、機械学習でPOCやプロトタイプ組もうという話になると二言目に「じゃ、BigQuery + AutoML Tablesでやりましょう」と言ってしまうことが増えた。そのうちsklearnで何かを書くことすら忘れかねない勢いである
— TJO (@TJO_datasci) October 4, 2019
ちなみにAutoMLが普及したことによって自分の仕事が減ったかというと実は真逆で、以前は「マンパワーが足りないので」と言って断っていた個々のお客さん向けの機械学習系の仕事を、「AutoMLに任せられる部分が増えたから」という理由で引き受けることが多くなった
— TJO (@TJO_datasci) October 23, 2019
所感
業務範囲によっても意見が違うように思いました。こちらの動画はDeNAのタクシー配車アプリのMLパイプライン構築の事例です。データサイエンティストが事業の課題抽出から機械学習エンジニアと協力して推定モデルの精度を担保するための仕組み化まで担っています。
www.youtube.comAutoMLはモデリングの自動化ツールなので、推定対象や課題がすでに決まっているものについては効力を発揮しそうです。一方、中身が完全にブラックボックスなので、ある程度機械学習の知識がある方が使わないと誤った使い方をしてしまいそうです。PoCで試しにやるならAutoMLは簡単で高い精度がでるので良いかと思いました。