Amazon Transcribe

音声データをテキストに自動変換する音声認識サービスで、リアルタイムストリーミングとバッチ処理の両方に対応し、話者識別やカスタム語彙にも対応する

概要

Amazon Transcribe は、音声ファイルやリアルタイムの音声ストリームをテキストに変換する自動音声認識 (ASR) サービスです。100 以上の言語に対応し、話者識別 (Speaker Diarization)、カスタム語彙、自動句読点挿入、不適切語句のフィルタリング、PII (個人識別情報) の自動検出・マスキングを備えています。コールセンターの通話分析に特化した Transcribe Call Analytics と、医療分野に特化した Transcribe Medical も提供されています。

バッチ処理とストリーミング処理の設計パターン

Transcribe のバッチ処理は S3 に格納された音声ファイル (MP3、MP4、WAV、FLAC、OGG、AMR、WebM) を非同期で文字起こしします。StartTranscriptionJob API でジョブを開始し、完了通知を EventBridge または SNS で受け取ります。最大 4 時間、2 GB までの音声ファイルに対応し、結果は JSON 形式で S3 に出力されます。会議の録音、ポッドキャストのアーカイブ、講演の文字起こしなど、リアルタイム性が不要なケースに適しています。ストリーミング処理は WebSocket または HTTP/2 経由でリアルタイムの音声ストリームを送信し、数秒以内に文字起こし結果を受け取ります。ライブ字幕、リアルタイムの議事録作成、コールセンターのリアルタイム分析に使われます。ストリーミングでは部分結果 (Partial Results) が逐次返され、音声の認識が進むにつれて結果が更新されます。最終結果 (Final Results) は発話の区切りで確定します。日本語の認識精度は英語に比べて低い傾向があり、特に専門用語や固有名詞の認識率が下がります。カスタム語彙を登録することで、業界固有の用語や社内用語の認識精度を大幅に改善できます。

カスタム語彙と言語モデルのチューニング

カスタム語彙 (Custom Vocabulary) は、Transcribe の標準モデルが認識しにくい単語やフレーズを登録する機能です。テーブル形式で単語 (Phrase)、発音ヒント (SoundsLike)、表示形式 (DisplayAs) を指定します。たとえば、製品名「CloudHSM」を登録する場合、Phrase に「CloudHSM」、SoundsLike に「cloud-H-S-M」、DisplayAs に「CloudHSM」と設定します。最大 50,000 エントリまで登録可能で、ジョブ実行時にカスタム語彙を指定するだけで適用されます。カスタム言語モデル (Custom Language Model) はさらに高度なチューニング手段で、ドメイン固有のテキストデータ (マニュアル、議事録、メールなど) を学習データとして提供し、そのドメインに特化した言語モデルを構築します。カスタム語彙が個別の単語の認識を改善するのに対し、カスタム言語モデルは文脈を含めた認識精度を向上させます。医療、法律、金融など専門用語が多い分野では、カスタム語彙とカスタム言語モデルの併用が最も効果的です。語彙フィルター (Vocabulary Filter) は特定の単語をマスクまたは削除する機能で、不適切な表現や機密情報を文字起こし結果から自動的に除去します。

Call Analytics と医療向け Transcribe Medical

Transcribe Call Analytics はコールセンターの通話分析に特化した機能で、通話の文字起こしに加えて、感情分析 (Sentiment)、通話の問題検出 (Issue Detection)、通話の要約 (Call Summarization) を自動的に実行します。感情分析は発話ごとにポジティブ/ネガティブ/ニュートラル/混合を判定し、通話全体の感情推移をタイムラインで可視化できます。問題検出は「返品したい」「解約したい」「上司に代わってほしい」のような顧客の不満や要求を自動的に検出します。通話要約は通話の要点を自動的に抽出し、オペレーターが通話後に手動で入力していた対応記録の作成を自動化します。Transcribe Medical は医療分野に特化したモデルで、医学用語、薬品名、解剖学用語の認識精度が標準モデルより大幅に高くなっています。HIPAA 対応で、医師の口述記録 (ディクテーション) や患者との会話の文字起こしに使われます。料金はバッチ処理が音声 1 秒あたり約 0.00024 USD (1 時間あたり約 0.864 USD)、ストリーミングが音声 1 秒あたり約 0.00036 USD です。Call Analytics は追加料金が発生し、1 分あたり約 0.02 USD です。

共有するXB!