ヤマムギ

growing hard days.

*

「Label Training Data for Machine Learning」チュートリアルの記録

   

Label Training Data for Machine Learningをやった記録です。

SageMaker Ground Truthを使用して、飛行機、車、フェリー、ヘリコプター、バイクなどの乗り物の画像セットにラベルを付けます。

環境

SageMakerドメインとユーザープロファイルは、すでに構築済みで使用していたものを使いました。
JupyterLabのスペースは新規で作成しました。

ラベリングジョブを作成する

Python3ノートブックを新規に作成して、次のコードを実行しました。

自分のアカウントのS3バケットに対象の画像がコピーされました。
このチュートリアルでノートブックの出番これだけだったので、わざわざJupyterLab使わなくても、CloudShellでCLIでコピーしてもよいですね。

Amazon SageMaker AIコンソールで、[Ground Truth]-[ラベリングジョブ]で[ラベリングジョブの作成]をクリックしました。

ジョブ名を入力して、「自動化されたデータセットアップ」を選択しました。
指定したS3バケットプレフィックス内のデータを自動で対象としてくれます。

入力データセットのS3の場所: サンプルデータをコピーしたバケットとプレフィックス
出力データセットのS3の場所: 同じバケットで新規プレフィックス(例: s3://bucket/ground-truth-demo/labeled-data/)
データタイプ: 画像
IAMロール: 新規作成して対象のS3バケットを許可

上記設定して[データセットアップの完了]をクリックすると、「入力データ接続に成功しました」と表示されました。

タスクカテゴリ: Image
タスクの選択: ImageClassfication(単一ラベル)

上記設定で[次へ]をクリックしました。

ワーカータイプでAmazon Mechanical Turkを選択しました。
アダルトコンテンツ、機密情報、個人情報、保護対象医療情報を含んでいないことにチェックしました。
タスクあたりの料金($0.012)やタイムアウトはデフォルトのままです。

Amazon Mechanical Turk、初めて使用します。
世界中の50万人以上の独立系請負業者の24時間年中無休のオンデマンドワーカーに作業を依頼できるサービスです。

依頼するタスクの説明を入力します。
「Please select the label that best matches the image below. You can choose only 1 label per image.(以下の画像に最も一致するラベルを選択してください。画像ごとにラベルは1つだけ選択できます。)」

として、飛行機、車、フェリー、ヘリコプター、バイクを設定しました。

下の追加の手順に指示された内容「If there are multiple vehicles in a single image, choose the most prominent vehicle in the image.(1枚の画像に複数の車両が写っている場合は、画像の中で最も目立つ車両を選択してください。)」を追加しました。

最終的にこうなりました。

  1. Read the task carefully and inspect the image.
  2. Read the options and review the examples provided to understand more about the labels.
  3. Choose the appropriate label that best suits the image.If there are multiple vehicles in a single image, choose the most prominent vehicle in the image.

  4. タスクをよく読み、画像を調べてください。

  5. 選択肢を読み、提供されている例を確認して、ラベルについてより深く理解してください。
  6. 画像に最も適したラベルを選択してください。1枚の画像に複数の車両が写っている場合は、画像の中で最も目立つ車両を選択してください。

[作成]をクリックしました。

[進行中]になりました。
世界中の誰かに作業が依頼されているのでしょうか。

ラベル付ジョブの結果を確認する

結果を確認しました。
船にAirplaneのラベルがついていたり、ちょっと間違えてますね。

出力先のS3バケットを見ると、output.manifestがありました。

全部”human-annotated”: “yes”なので、人がラベル付けしてくれたようですね。

手動でもやってみました

ジョブをクローンしてプライベートを選択して、メールアドレスを入力しました。

入力したメールアドレスにメールが届きました。

ログインするとタスクが表示されています。
[Start working]をクリックしました。

写真に写っているラベルを選択します。

10枚完了したらタスクが消えました。


最後までお読みいただきましてありがとうございました!

「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル 改訂第2版」という本を書きました。

「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー 改訂第3版」という本を書きました。

「ポケットスタディ AWS認定 デベロッパーアソシエイト [DVA-C02対応] 」という本を書きました。

「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。

「AWSではじめるLinux入門ガイド」という本を書きました。

 - AWS , ,

ad

ad

  関連記事

JAWS FESTA 2019 Sapporo 参加&当日スタッフ&企業サポーターで!

2019年のJAWS FESTA は札幌です! 今回もありがたいことに、所属して …

Amazon Location Service入門ワークショップ-ルート計算

Amazon Location Service入門ワークショップのアプリで、ルー …

AWS 認定クラウドプラクティショナーのサンプル問題

AWS認定クラウドプラクティショナのサンプル問題2018年9月25日現在で、英語 …

Amazon EC2 Auto ScalingのVPCは変更できる

EC2 Auto ScalingのVPCは変更できたっけ??と思いまして試しまし …

RedmineをELB(ALB)でAutoScalingグループへ負荷分散

高可用なRedmineを作るためのELBの設定です。 高可用なRedmine R …

Amazon VPCにオンプレミス検証環境想定プライベートDNSサーバー(BIND)をEC2で起動する

オンプレミス想定の検証で使うために、Amazon VPCにプライベート向けDNS …

slackのbotに天気を教えてもらう(Python on AWS Lambda + API Gateway)

slackのbotにAPIの定番ともいえる天気情報を教えてもらいました。 環境は …

AWS Control TowerにOUを追加する

AWS Control TowerにOUを追加する 管理アカウントでAWS Co …

AWS CloudHSMを起動してみました

なかなか触る機会のないサービス、CloudHSM。 起動してみました。 手順はユ …

Amazon CloudWatch Anomaly Detectionをダッシュボードに設定

Amazon CloudWatch クロスリージョンクロスアカウントダッシュボー …