AWS機械学習サービスTips
KyotoLT(Online) 第26回
2021/08/27@オンライン
あっきー
自己紹介
● 株式会社KYOSO勤務
○ IoTのワンストップサービスなど
● 業務では主に、AWS、SORACOM、
AIカメラを使ったサービスを提供
● バックエンド、フロントエンド両方好き
● 推し言語はPythonとTypeScript
● VTuber好き、Dead by Daylight好き
本日お話しする内容
これまで自分で触ったことがある、調査したことがあるAWSの機械学習サービスに
ついて軽く紹介、Tipsを紹介します
個々のサービスについての詳細な解説は含みません
ざっくりと内容を理解頂くことを目的としています
Amazon Rekognition
メリット
● MLの専門知識不要
○ API呼び出しをするだけで簡単に利用可能
○ 内部の仕組み(機械学習の難しいアルゴリズム)は理解する必要はなく、使い方
のみ理解すればよい
● マネージドで従量課金
○ マネージドサービスなのでサーバーのメンテナンス等は不要
○ 従量課金なので利用した分の料金のみ
Amazon Rekognition
メリット
● 料金体系がわかりやすい
https://aws.amazon.com/jp/rekognition/pricing/
Amazon Rekognition
できること
● カスタムラベル
● ラベル検出
● 画像の節度
○ 画像内に成年向けコンテンツが含まれているかどうか
● 顔の分析
● 有名人の認識
● コレクション内の顔を検索する
● イメージ内のテキスト
● PPE検出
Amazon Rekognition -ラベルの検出-
Amazon Rekognition -ラベルの検出-
画像内にどのようなものが映っているのか、をアバウトに判定したいとき
バウンディングボックスが判定されるラベルは239個、判定される属性は2580個
汎用的なモデルのため、個別の属性の判定の認識精度は低い印象
Amazon Rekognition -顔の分析-
Amazon Rekognition -顔の分析-
Amazon Rekognition -顔の分析-
顔の座標、年齢、性別、眼鏡をかけているかどうかなどがわかる
年齢推定の精度は体感でそこそこ高い
Amazon Rekognition -コレクション内の顔を検索する-
事前に登録済みの顔画像と一致するラベル情報を検索
いわゆる顔認証
画像内の人が事前登録済みの人であれば、誰かわかる
ビジネスでの利用適用が一番しやすい機能だと思う
Amazon Lookout for Vision
● モデルの学習、作成まで完全に自動でやってくれるAutoMLサービス
● 画像が正常か異常かを判断できる(判断は正常、異常の2値のみ)
● 学習用、テスト用の画像枚数が少なくてもモデルの作成が可能
○ 必要な画像は最低10個
● 作成したモデルの継続的な改善にも対応
○ 画像を追加する場合はモデルを一から作り直すのではなく、既存のモデルをアッ
プデートする形で更新可能
● 常に利用するためには推論エンドポイントを起動しておく必要があるため、料
金面で課題あり
Amazon Lookout for Vision
1日8時間稼働とする場合の月額費用(稼働日22日の場合)
8 hour * 22 day * 4 USD = 約7万7千円
なので、現状は工場ラインの検査などで利用する常時稼働での利用は厳しい
利用ユースケースが限定されるサービスだと思う
Amazon SageMaker
AWSでの機械学習といえば、SageMakerというくらい重要なサービス
AWSの力の入れようも半端ではなくいろんなサービス、アップデートがどんどん出
ている
機能が多すぎで全部把握できてないので、内容を絞って紹介
https://aws.amazon.com/jp/sagemaker/
https://www.slideshare.net/AmazonWebServicesJapan/20190206-aws-black-belt-online-seminar-a
mazon-sagemaker-basic-session-130777850
Amazon SageMaker
メリット
● Notebook起動インスタンスと学習用インスタンスが分かれているので、学習
時のみ高費用のインスタンスを使うことができる
○ つまりGPUを使った時間だけ課金される形なので、コストパフォーマンスがよい
● カスタムコンテナが使える
○ Tensorflowなどはライブラリ側(SageMaker SDK)で提供されているがそれ以外
(Darknetなど)も、自分でコンテナ作れば学習インスタンスへの切り離しが可能
Amazon SageMaker
注意事項
● Notebook等は起動しっぱなしだとずっと料金がかかる
○ SageMaker Studioはライブラリを追加することで、任意の時間で自動でインスタン
スを停止させることが可能
● サンプルNotebookを動かしていると、推論エンドポイントが作成され、放置す
るとめちゃくちゃ料金かかることがあるので注意
○ 推論エンドポイントがすごく高いインスタンスで作られ、常時稼働で料金めっちゃ
かかる、、、
Amazon SageMaker -SageMaker Jumpstart-
有名なモデルの推論エンドポイントをノーコードで作成できるサービス
ファインチューニングもほぼノーコードで実現可能
ファインチューニングは画像を用意するだけなので、非常に簡単
ただ、商用で利用できる程度の精度ができるかは検討が必要
ファインチューニングとは、既存のモデルを改良して自分が欲しい出力に修正する
イメージ
Amazon SageMaker Neo
● フレームワークのモデル形式から汎用的なモデル形式変換し、共通プラット
フォームで動作するように
○ 例えば、TensorflowのモデルをNeoでコンパイルして、動かす、PyTorchのモデルを
neoでコンパイルして動かす。その場合、Neoのランタイムがあれば、Tensorflowと
PyTorch両方のモデルが動かせる、というイメージ
● Neoのコンパイル時にプラットフォーム向けの最適化が実施され、パフォーマ
ンスが向上する
Amazon SageMaker Neo
個人的な所感
● 正しくコンパイルできなかった場合の解決が難しい

KyotoLT(Online) 第26回