Amazon SageMaker JumpStart Workshop 参加レポート

機械学習の知見を高めるべく、3/9に開催されたAWSの「Amazon SageMaker JumpStart Workshop」に参加したレポートになります。

ワークショップについて

ワークショップの概要は以下の通りです。

セミナーでは、AWS が開発している機械学習サービスである Amazon SageMaker を
簡単に利用開始できるサービス Amazon SageMaker JumpStart について、皆さんにて起動、触っていただきます。
JumpStart は機械学習を行うために本来必要な大量のデータを準備することなく、
AWS が学習済みのモデルをすぐに起動し、推論環境を作ることができるサービスです。
このワークショップでは、画像認識、日本語 QA を体験いただきます。
本セミナーは初学者向けであり、データやモデルの解説等、データサイエンティスト向けの内容は含まれませんので、お気軽にご参加ください。

以下、ワークショップの関連リンクになります。

pages.awscloud.com

github.com 

はじめに

本投稿がはてなブログデビューとなります。
どうかお手柔らかにお願いします。

Amazon SageMaker JumpStartとは

Amazon SageMaker JumpStartは、学習済の機械学習モデルを簡単に利用できるサービスです。Fine-tuneにより追加で学習を行うこともできます。

ハンズオン資料より
ハンズオン資料より

本ハンズオンでは意識することはなかったですが、内部的には下記のようになっています。
まず、学習インスタンスと推論インスタンスでECRからコンテナイメージを取得。

ハンズオン資料より

次に、ノートブックインスタンスから学習コード、S3から学習データを取得。

ハンズオン資料より

学習が終わるとS3にpush。

ハンズオン資料より

最後に、推論インスタンスにpushして推論を実行します。

ハンズオン資料より

ワークショップ内容

  • 画像解析モデル(ResNet 18)による推論、Fine-tune
  • 自然言語解析モデル(BERT Base Multilingual Cased)による推論

画像解析モデル(ResNet 18)による推論

ワークショップの手順書に従ってAWS Consoleをポチポチしていくだけで、下記のようなNotebookができあがります。

ResNet 18 Notebook

このNotebookをもとに推論を実行します。

犬と猫の画像を入力して正しく推論できるか?

まず、犬と猫の画像を入力して正しく推論できるか試します。
実行は、Notebookの実行ボタンをポチポチ押していくだけです。

結果です。
細かい種類はおいておいて、犬と猫であることは正しく推論できています。

犬と猫の推論結果

鳥の画像を入力して正しく推論できるか?

続いて、鳥の画像を入力して正しく推論できるか試します。
私は下記のようなカラスの画像を使用しました。

結果です。
うーん、今後に期待しましょう。

カラスの推論結果

Fine-tuneして花の推論ができるようになるか?

続いて、S3にアップロードした画像でFine-tuneして花の画像が推論できるようになるかを試します。

Fine-tuneもボタンをポチっと押すだけです。
ラベル用テキストを更新後に保存するのを忘れないように注意してください。私はいつもVS Codeで自動保存している感覚で作業していて、推論結果が変わらなくて少し焦りました。

結果です。
kamedaさんがdandelionになってる( *´艸`)

花の推論結果

自然言語解析モデル(BERT Base Multilingual Cased)による推論

ワークショップの手順書に従ってAWS Consoleをポチポチしていくだけで、下記のようなNotebookができあがります。

Notebook

このNotebookをもとに推論を実行します。

2つの文章の相関を推論できるか?

2つの文章に相関があると推論される場合は[entailment]、相関がないと推論される場合[no-entailment]と出力されます。
私はこのような入力をしました。

入力

日本の首都は東京で鬼滅の刃ではないのでsentence_pair1は[entailment]、sentence_pair2は[no-entailment]が期待値です。

結果です。
期待値通りの結果になりました。おぉー!

推論結果

終わりに

AWSのAIサービスは触ったことがあるのですが、SageMakerと難しいイメージがありました。 本ワークショップで、JumpStartで簡単にSageMakerを始められることが体感できてよかったです。 次は、自分のサービスに組み込むにはどうすればいいのかを勉強していきたいです。