Help us understand the problem. What is going on with this article?

ABEJA Platformのテンプレートを使用して、ノンプログラミングで機械学習モデルを学習する

はじめに

本記事は、以下の手順をまとめた記事です。
- ABEJA Platformのテンプレートを使用して、画像分類の機械学習モデルをノンプログラミングで学習する

(本記事の後編はこちら)
ABEJA Platformのテンプレートを使用して、ノンプログラミングで機械学習モデルをデプロイする
https://qiita.com/yushin_n/items/fb338ca9bd3c685ad691

事前準備

Job Definitionの作成

まずは、コンソールのTrainingのJob Definitionのページから、Job Definitionを作成します。no sampleを選択します。

その後、バージョンを作成します。タブのTemplatesをクリックして、Image ClassificationのCPUまたはGPUを選択します。Datasetには、モデルに学習させるデータセット名を指定します。aliasには、trainと入力します。

2019年6月21日現在、テンプレートは画像分類(データセットは1つ、ラベルのカテゴリは1つ)にのみ対応していますが、テンプレートの種類は順次追加される予定です。

JobのVersion 1が作成されました。

続いて、Jobsをクリックして、学習ジョブを作成します。Job Definition Versionとして、先ほど作成したバージョン1を選択します。また、インスタンスタイプとして、gpu-1を選択します。

学習ジョブが実行されました!自分の環境では、ジョブがPendingからRunningになるまでに、15分程度かかりました。

学習開始後にTensorBoardのボタンをクリックすると、TensorBoadの画面が開き、Training Loss, Training Accuracy, Validation Loss, Validation Accuracyのデータを可視化できます。

TensorBoardを眺めながら、学習が終わるのを待ちます。・・と思ったら、7エポック目で学習がSuccessとなりました。EarlyStoppingが実装されているため、Validation Lossに変化がなくなるとその時点で学習が終了します。GPUを無駄に使用しないために、よい機能ですね。

結果、Validation Accuracyは、82.9%でした。
このMediumの記事によると、同じデータセットを使って以下の結果が出たとのことです。ABEJA Platformのテンプレートは、ResNet-50には及びませんでしたが、他2つより、よい結果でした。

Model Accuracy for validation samples
Built from scratch 0.72
Built by VGG19 0.40
Built by ResNet-50 0.92

なお、このテンプレートは、各種ハイパーパラメーターをチューニングすることができます。やり方は非常に簡単で、学習ジョブを作成する画面にて、環境変数としてパラメーターを指定するだけです。指定できる環境変数の一覧は、こちらを参照下さい。
https://github.com/abeja-inc/platform-template-image-classification

Dropoutを0.7に変えると、Validation Accuracyが85.4%まで上がりました!

まとめ

本記事では、ABEJA Platformのテンプレートを使用して、画像分類の機械学習モデルをノンプログラミングで学習する手順をまとめました。今後、学習したモデルをノンプログラミングでWeb APIとしてデプロイできる機能も追加される予定です :dog:

追記:2019年6月28日にノンプログラミングでWeb APIをデプロイできる機能が追加されました!

参考

ABEJA Platformは、トライアルも提供しています。気になられた方は、是非、お気軽にお問い合わせください。また、フォーラムもありますので、是非、ご活用ください。

ABEJA Platformに関するお問い合わせ
https://abejainc.com/platform/ja/contact/

ABEJA Platform Forum
https://forums.abeja.io/

yushin_n
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした