1
0

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 1 year has passed since last update.

AutoMLを比べてみる(メモ)

Posted at

背景

  • すぐに使いたいんです
  • データに対するルーチン的な作業はできるだけやっといてほしい
  • DataRobot?いきなりそこまで本気にはなれないです、、
  • AutoMLってのがあるの!精度とかお値段はどんな感じだろう

対象

  • Pycaret

    • ローカルで実行できるライブラリ
    • スクリーンショット 2022-01-17 092055.png
  • Azure Machine Learning Studio 自動ML

    • MSが提供しているクラウドサービス
    • Screenshot 2022-01-17 00.33.15.png
  • GCP Tables

    • Googleが提供しているクラウドサービス
    • Screenshot 2022-01-17 00.38.53.png

計測方法

  • signateのデータを使用
  • 評価もsignateで行う
  • signateで結果が良いほうが勝ち!

やってみた

pycaret

  • 何一つ難しいことはなくpip一発でAutoMLがローカルで動く!
  • https://pycaret.org/
org_date = pd.read_csv('./train.csv', index_col=0)
pip install pycaret

公式ホームページにあるサンプルを真似しながら淡々と書く。
が、実際ほしいのは以下で、github copilitを入れたら結構勝手に話が進んでいっった

import pandas as pd
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import StandardScaler
from pycaret.regression import *

# テスト用データのロード
org_date = pd.read_csv('./train.csv', index_col=0)
# いらないカラムをドロップして学習用のデータを作成する
train_data_df = org_date.drop(['Order'], axis=1)
# 準備開始
exp_data = setup(data=train_data_df,categorical_features=cat_features, target='SalePrice')
# pycaretで学習、評価を実施
best =compare_models()
# 一番いいモデルを作成
model = create_model(best)
# 評価用データのロード
org_date_test = pd.read_csv('./test.csv', index_col=0)
# いらないカラムをドロップして評価用のデータを作成する
test_data_df = org_date_test.drop(['Order'], axis=1)
# 予測
prediction_res = predict_model(model, data=test_data_df)
# 結果出力
prediction_res['Label'].to_csv('./result.csv')

RMSEで評価とのこと。今回検証した中では2番めの成績だった
同じことをColaboratoryで行うと全く成績が振るわない。何故だ、、

Azure Machine Learning Studio 自動ML

動かすための環境をチュートリアルに沿って作ってゆく。
クラウドといえどリソースを作成するとなうと時間が課kルのでサクサクという感じにはゆかない。また、前段の処理が終わる前に次の作業を行おうとすると怒られることもある。
コストの感覚がわからないのでデータや計算のためのリソースを恐る恐る作る。
モデルが出来たら手持ちの別のデータで予測をしたい。
かなりテンポラリな動きなので、Notebookからモデルを読み込んで、Notebook上で予測して結果をファイル出力できるようにする。
スクリーンショット 2022-02-10 170752.png
刹那的に試行するためのツールとしてJupyterはどこにでも入っているイメージ、、

体感的には2-3時間ぐらいぐるぐる回したところ、お代は以下な感じ(結局5,000円強だった)。マシン買うよりよっぽど安いのだろうけど後から金額がわかるのは個人だとちょっと怖い。あと、LoadbalancerとかStorageとかは放っておくとそこそこの金額が課金され続けるのも怖い感じ。
cost2.png
精度は一番良かった

GCP AutoTable

AI Platformの中の機能を探しそうになるが、Talbesが入り口だった
menu.png
データセットから入るとタブを進めながら一連の設定から学習が完了する作りでわかりやすい。pipeline.png
手元の別データで予測を行うときはモデルから入って処理方法を指定してゆく
predict.png
お代は以下な感じで、Azureと異なり一回こっきりで何か課金される続けるようなものが残ることはなかった。すごく安心
cost.png
精度は一番悪かった、、、

感想

  • 環境を構築する必要がないのは楽!
  • 仕組みをわかっているわけではないので、はまったら深呼吸して最初からやるしかない
  • 精度もある程度追求したロジックを回してくれているようなので、これでだめならもうだめですとしか言いようがない。諦めが早く着くので良いかも
  • マックス金額とか決めてそれに合わせた程度で計算してくれたりすると素敵。
  • とはいえ精度が出るまでやりかねないから最初からガツンと言ったほうが良いのか、、
1
0
2

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
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?