Cloud Service
Amazon Augmented AI (A2I)
機械学習の予測に人のレビューを組み込む仕組みを、自前で作らず実現できる。低信頼度の結果だけ人手確認へ回す Human-in-the-loop を AWS でフルマネージドに構築。
- 1.ML 予測の結果に人のレビューを差し込む Human-in-the-loop ワークフローをマネージドに構築する。
- 2.信頼度スコアなどの条件で、確認が必要なケースだけ人手レビューへ自動で振り分けられる。
- 3.Textract や Rekognition との組み込み連携に加え、独自の ML モデルにも適用できる。
解決する課題
機械学習の予測は多くのケースで十分な精度を出しますが、信頼度の低い結果や重要度の高い判断をそのまま自動処理に流すと、誤りがそのまま業務に影響します。かといって全件を人手で確認すると自動化の意味が薄れます。Amazon Augmented AI(A2I)は、ML 予測に人のレビューを組み込む Human-in-the-loop の仕組みをフルマネージドで提供します。
- 信頼度が一定未満の予測だけを人のレビューに回し、それ以外は自動処理する振り分け
- レビュー担当者に表示する**作業画面(ワーカー UI)**の用意と、結果の集約
- レビュー結果を後段の業務システムやモデル改善へ流し込むワークフロー
レビュー用の画面づくり、タスク配布、結果集約といった周辺の仕組みを自前で実装せずに済む点が中心的な価値です。
主要概念と用語
- Human-in-the-loop(人間参加型): ML の予測フローの一部に人の判断を組み込み、自動化と正確性を両立させる考え方。A2I の中核
- ヒューマンレビューワークフロー(フロー定義): どの条件でレビューを発生させ、誰に、どの画面で確認させるかを定義したもの。Flow Definition とも呼ぶ
- ヒューマンループ: 個々のレビュー案件の単位。予測ひとつに対して人手確認が必要と判定されたとき生成される作業の塊
- トリガー条件(アクティベーション条件): 人手レビューを発生させる判定基準。代表例は予測の信頼度スコアのしきい値
- ワーカー(レビュー担当者): 実際に確認・修正を行う人。社内チーム、外部委託、Amazon Mechanical Turk のいずれかを指定できる
- ワークチーム / ワークフォース: ワーカーをまとめた単位。プライベート(自社)、ベンダー、パブリックの種類がある
- ワーカータスクテンプレート: レビュー担当者に見せる作業画面のレイアウト定義。Textract や Rekognition 向けには組み込みテンプレートがある
- 組み込み連携: Amazon Textract(文書抽出)と Amazon Rekognition(画像のコンテンツ管理)には A2I を直接呼び出せる組み込みのタスクタイプが用意されている
- カスタムタスクタイプ: 任意の ML モデルの出力に対し、独自の作業画面と条件でレビューを差し込む方式
仕様・制限・クォータ
- レビュー対象は、組み込み連携(Textract、Rekognition)と、任意モデル向けのカスタムの二系統で扱える
- ワーカーには**プライベート(自社チーム)/ベンダー/パブリック(Mechanical Turk)**の三種類を割り当てられる
- 人手レビューを発生させる条件は、信頼度スコアのしきい値などで指定する。Textract・Rekognition の組み込み連携では条件設定が用意されている
- レビュー結果は構造化データ(JSON)として S3 などへ出力され、後段で参照できる
- ワークフロー数、同時実行のヒューマンループ数などにアカウント単位のクォータがあり、引き上げ申請が可能
- ワーカー UI はテンプレートでカスタマイズでき、組み込みタスクタイプには既定のテンプレートが用意されている
対応リージョン・連携サービス・上限値は更新されるため、最新の公式ドキュメントで確認してください。
内部の仕組み
利用者から見ると、ML 予測に対して「条件を満たしたら人のレビュー画面を出し、結果を集めて返す」マネージドな仕組みとして扱えます。
- フロー定義: トリガー条件、ワーカー UI(テンプレート)、レビューを担当するワークチーム、結果の出力先などをまとめて定義する
- ヒューマンループの生成: 予測が条件(信頼度スコアが一定未満など)に該当すると、その案件についてヒューマンループが作られ、担当ワーカーの作業キューに並ぶ
- 組み込み連携: Textract や Rekognition では、API 呼び出し時に A2I のフロー定義を指定するだけで、条件に合致した結果が自動でレビューへ回る
- カスタム連携: 任意のモデルの場合、推論後に自分で
start-human-loopを呼び、条件判定と画面提示を A2I に任せる - 結果の集約: ワーカーが確認・修正した内容は集約され、構造化データとして出力先(S3 など)に書き出される
ワーカー UI の配信、タスク配布、結果の集約といった基盤は AWS 側が担います。なお A2I のワークフォース・タスク配布の基盤は Amazon SageMaker のグラウンドトゥルース系の仕組みと共通する部分があります。
設計パターン / ベストプラクティス
- しきい値で全件確認を避ける: 信頼度スコアが低い予測だけをレビューに回し、高信頼の予測は自動処理する。レビュー量とコストを抑えつつ品質を担保する
- 組み込み連携を優先する: 文書抽出は Textract、画像のコンテンツ管理は Rekognition の組み込みタスクタイプを使うと、UI とトリガーを自前で組まずに済む
- 疎結合パイプライン化: 推論からヒューマンループ生成、結果取得までを Lambda や EventBridge でつなぎ、レビュー完了を非同期で受け取る
- レビュー結果を学習に還元: 人が修正した正解データを蓄積し、モデルの再学習やしきい値の見直しに活用する
- ワークフォースの選定: 機微データは社内のプライベートチーム、大量で機微度の低い作業はベンダーやパブリックといった使い分けをする
文書抽出や画像のコンテンツ管理が対象なら、A2I を一から組むより Textract・Rekognition の組み込みタスクタイプを使うほうが、作業画面もトリガーも用意されていて実装が簡単です。
運用・監視
- ヒューマンループの開始・完了・失敗などの状態は CloudWatch や API で監視する
- 状態変化を EventBridge で受け取り、レビュー完了後の後続処理や通知を自動化する
- API 操作の監査証跡は CloudTrail に記録される
- レビューの滞留や処理時間が増えていないかを確認し、ワーカー数やしきい値を調整する
- 失敗したループはエラー理由(テンプレート不備、権限不足、出力先の問題など)を確認し、定義と IAM を見直す
人手レビューは人の作業時間に依存し、即時には完了しません。結果を同期的に待つ作りにせず、完了通知やポーリングで受け取る非同期設計にしてください。
コスト
- 課金は基本的に人手レビューを行ったオブジェクト(案件)数に対する従量制で、レビューが発生しない予測には A2I の費用はかからない
- パブリックワークフォース(Mechanical Turk)やベンダーを使う場合は、別途その作業への支払いが伴う
- しきい値を適切に設定して不要なレビューを減らすことが、そのままコスト最適化につながる
- 連携先(Textract、Rekognition、独自モデルの推論基盤)の費用は A2I とは別に発生する
具体的な単価は変動するため、料金は公式の料金ページで確認してください。少量のサンプルで検証してから本番ボリュームを見積もるのが安全です。
セキュリティ
- アクセス制御は IAM で行い、入出力に使う S3 バケットへの最小権限のみを付与する
- 保存データは S3 側の暗号化(KMS 管理鍵を含む)、転送は TLS で保護する
- レビュー対象には個人情報や機微な文書・画像が含まれやすいため、誰がレビューできるかをワークチームで厳密に管理する
- 機微データを外部のパブリックワークフォースに出さない運用を徹底し、プライベートチームに限定することを検討する
- ワーカーの認証・アクセスは ID プロバイダーと連携して管理できる
個人情報や機密文書をパブリックワークフォース(Mechanical Turk)に流すと、不特定の作業者が内容を閲覧できてしまいます。機微データは必ず社内のプライベートチームに限定してください。
関連サービス・比較
データのラベル付けを目的とする Amazon SageMaker Ground Truth と混同しやすいため比較します。Ground Truth は学習用データの作成(アノテーション)が主目的で、A2I は本番推論に人のレビューを差し込むのが目的です。
| 観点 | Amazon A2I | SageMaker Ground Truth |
|---|---|---|
| 主目的 | 本番予測への人手レビュー | 学習用データのラベル付け |
| 使う場面 | 推論結果の確認・修正 | モデル学習前のデータ作成 |
| トリガー | 信頼度などの条件で発生 | ラベル付けジョブとして実行 |
| 連携 | Textract・Rekognition と組み込み | 学習データセット生成が中心 |
ハンズオン / CLI例
# レビュー対象案件(ヒューマンループ)を開始する
# 事前に作成済みのフロー定義(flow-definition-arn)を指定する
aws sagemaker-a2i-runtime start-human-loop \
--human-loop-name my-review-001 \
--flow-definition-arn arn:aws:sagemaker:ap-northeast-1:123456789012:flow-definition/my-flow \
--human-loop-input '{"InputContent":"{\"text\":\"レビュー対象のデータ\"}"}'
# 開始したヒューマンループの状態を確認する(Completed になったら結果を参照)
aws sagemaker-a2i-runtime describe-human-loop \
--human-loop-name my-review-001
# レビュー結果も含め、ヒューマンループの一覧を確認する
aws sagemaker-a2i-runtime list-human-loops \
--flow-definition-arn arn:aws:sagemaker:ap-northeast-1:123456789012:flow-definition/my-flow
AWS Service
Amazon Augmented AI (A2I)を実務で読む
TL;DRは入口です。実際に選ぶ・使う段階では、何を解決するか、何と比較するか、導入後にどこで詰まるかまで見る必要があります。
解決すること
AI / 機械学習
比較で見る軸
クラウド: AWS / カテゴリ: AI / 機械学習 / 難易度: intermediate
導入後に効く点
信頼度スコアなどの条件で、確認が必要なケースだけ人手レビューへ自動で振り分けられる。
先に潰すリスク
サービス単体ではなく、権限、ネットワーク、監視、課金、バックアップを含めて設計する必要がある。
- クラウド
- AWS
- カテゴリ
- AI / 機械学習
- 難易度
- intermediate
- 関連資格
- AIF-C01 / MLA-C01
- 設計柱
- operational / reliability
判断チェックリスト
- 自社の用途が「AI / 機械学習 / operational」に近いか確認する。
- 強みである「ML 予測の結果に人のレビューを差し込む Human-in-the-loop ワークフローをマネージドに構築する。」が本当に評価軸になるか確認する。
- 注意点の「サービス単体ではなく、権限、ネットワーク、監視、課金、バックアップを含めて設計する必要がある。」を運用で吸収できるか確認する。
- 公開値や仕様値は、対象プラン・対象機種・対象リージョンまで確認する。
- 既存システム、ID、ネットワーク、監視、バックアップとの接続方法を先に洗い出す。
- 小さく試してから、本番移行、権限設計、障害時手順、コスト監視を決める。