AutoTrain🚂🚂🚂とは
ノーコードでテキスト分類や要約や構造化データの機械学習などがstate-of-the-artできるサービスです。本日より構造化データもサポートされました🎉
AutoNLPだとググラビリティが低かったのではなく、構造化データもサポートしたかったから名称変更したようです。
データ準備
沈没する船の乗客が生存できたかどうかの2値分類をします。
CSVファイルをダウンロードしましょう。
wget https://raw.githubusercontent.com/datasciencedojo/datasets/master/titanic.csv
プロジェクトの作成
Tabular Data Classification (Binary) を選択し、プロジェクトを作成します。
csvファイルをアップロード
jsonlでもアップロードできます。
今回はcsvファイルをドラッグ・アンド・ドロップし、target:Survived
カラムを選択し、プロジェクトに追加します。
学習
Start models trainingsをクリックします。
推論
83%の精度で分類できました。modelをクリックし、model hubで推論できます。
Kaggleであれば、上位1.5%以内のレベルです。
モデルをダウンロード
モデルをダウンロードすることでオフラインで推論できます。
モデルをダウンロード
!curl -s https://packagecloud.io/install/repositories/github/git-lfs/script.deb.sh | sudo bash
!sudo apt-get -qq install git-lfs
!git lfs install
#!git clone "https://$USERNAME:$PASSWORD@huggingface.co/vabadeh213/autotrain-titanic-744222727" # set username/password for private model
!git clone https://huggingface.co/vabadeh213/autotrain-titanic-744222727
joblibで推論
import json
import joblib
import pandas as pd
model = joblib.load('model.joblib')
config = json.load(open('config.json'))
features = config['features']
df = pd.read_csv('titanic.csv')
X = df[features]
X.columns = X.columns.map(lambda x: 'feat_' + x)
predictions = model.predict(X) # or model.predict_proba(data)
df['predicted'] = predictions
df
Survived | Pclass | Sex | Age | SibSp | Parch | Fare | Cabin | Embarked | predicted |
---|---|---|---|---|---|---|---|---|---|
0 | 3 | male | 22 | 1 | 0 | 7.25 | nan | S | 0 |
1 | 1 | female | 38 | 1 | 0 | 71.2833 | C85 | C | 1 |
1 | 3 | female | 26 | 0 | 0 | 7.925 | nan | S | 1 |
1 | 1 | female | 35 | 1 | 0 | 53.1 | C123 | S | 1 |
まとめ
- クレカ登録しない限り無料で使えてとても便利
- 誰でも上位1.5%以内になれる