はじめに & 記事概要

Amazon SageMaker Canvas(以下SageMaker Canvas)というノーコード簡単モデル生成サービスをご存知でしょうか?

今回はこのサービスを用いて、簡易に画像分析モデルを作ってみます。

作業の流れとしては
・画像とってくる

・S3にアップロード

・データセット指定

・モデルビルド

・モデル完成!
とすごく簡単に合計30分もかからず作れるので、サクッと構築してみることをお勧めします

以下の順で作業をすれば簡単に作れるので、興味がある方はぜひ参考にしてください。

以下構築手順

訓練画像集を集める

1ラベルあたり25枚の画像が必要となります。ここはフリー素材画像倉庫から頑張って集めましょう

画像をとってくるのにおすすめのサイト

特におすすめはPexels

アップロードするS3のデータ

以下のように画像をフォルダ以下に配置すると、cat dogのようにフォルダ以下の画像全てにラベル付が自動で行われます。

SageMaker Canvasの起動

この画面で左のcanvasを選択し、右上から起動をする形になります。
もしまだ作成してない方は作成が必要ですが、
ドメインの指定などは簡単にぽちぽちで動くようになります

データセット取り込み

SageMaker Canvasにログイン後、左のデータセットタブから移動し、データをインポートします。
animalsというデータセットで、S3のanimalsフォルダを指定します

モデル作成

左側のモデルタブをクリックし、右上のnew modelをクリックすることでモデルの作成を開始できます

ビルド時のAIモデル種類指定

ここで、さまざまなモデル指定ができます。
今回は画像分類をしたいので画像のようにImage analysisを指定ください

クイックビルド

アップロードしたデータセットを指定し、右上のクイックビルドを押すと、指定のデータセットでの学習が開始されます。

なんと10-20分待ったら完成!

実際の予測画面

テストしたい画像を置き、S3の場所を指定することで予測ができ、
その信頼度も確認ができます

モデル精度

上部のanalyzeタブにて、モデル精度が簡単にみることができます。
図では90%の精度でありcatを誤って判別していることがわかります

ヒートマップ

ヒートマップのトグルをオンにすると、モデルがどこに着目をしているかまで確認でき、
モデルの精度向上のヒントになります

まとめ

どうでしたでしょうか。
ぜひ皆さんも簡単に画像分析モデルを作って、感動してみてください。

最後に注意として、

タブ左下のSageMaker Canvasのログアウト操作で完了しないと
課金され続けるので、しっかりログアウトは忘れないようにしてください。

おまけ、モデルのデプロイもやってみた

モデルのデプロイ準備

モデルのデプロイには権限設定の追加が必要となります。
アプリケーションタグでデプロイ権限の付与をお願いします

モデルタグにてデプロイの実行

画面右のデプロイボタンがクリック可能となっていればデプロイ可能です

デプロイ設定

デプロイのタイプはリアルタイムに固定されます。
また、インスタンスタイプの指定と、インスタンス数を起動後の更新することも可能です。
とてもわかりやすいインターフェースです

エンドポイント設定の更新

デプロイ後にエンドポイント設定の更新も可能です

Canvasのエンドポイントの注意

ノーコードツールなので仕方ないものですが、
おそらくあくまで検証や開発用のデプロイという位置付けで、
以下の機能はありません。
そういった場合は、Canvas のモデルを Studio にエクスポートするなどが必要となります。
ただしあくまでCanvas の生成したモデルはブラックボックスのため
商用のものをデプロイするフェイズに来たら訓練データや検証の結果を用いて新しいモデルを作り直す形や、model registoryからデプロイする形になるかと思います。

・オートスケーリング
・細かいパラメータチューニング
・サーバーレス起動

登録されたAIモデル画面

モデルの登録を行うとSageMaker Studio上にて表示されるようになります

以上となります。