Amazon MLS-C01: 自然言語処理と音声 — 学習ガイド
こちらの一部です: AWS Machine Learning Specialty MLS-C01 — 学習ガイド. 検証済みの解答で練習: Amazon試験ハブ, または時間制限付き模擬試験に挑戦: ExamRoll.io.
テキストの前処理、トークン化、サニタイズ
堅牢なテキスト前処理は、信頼性の高いNLPパイプラインの基盤です。まずUnicodeの正規化、HTMLの除去、制御文字の削除から始めます。スケーラブルなPythonまたはPySparkのクリーニングステップを実行するには、AWS GlueまたはSageMaker Processingジョブ(ml.m5.xlarge)を使用します。トークン化の選択は重要な決定点です。単語トークナイザーはシンプルですが、語彙外(OOV)トークンの問題に悩まされます。Byte-Pair EncodingやWordPiece(BERTで使用)などのサブワードトークナイザーは、OOVのリスクを低減し、多言語や製品名が多いコーパスに適しています。ユーザー生成コンテンツは、PIIの削除、日付と数値の正規化、感情を伝える絵文字やハッシュタグの正規形式へのマッピングによってサニタイズします。よくある落とし穴に注意してください。積極的なストップワードの除去はトピックモデルやシーケンスモデルに悪影響を与える可能性があり、小文字化は固有表現抽出に役立つ大文字・小文字の情報を失わせます。本番環境では、SageMaker ProcessingまたはLambdaレイヤーで決定論的な前処理を実装し、前処理コードとアーティファクトのバージョンをSageMaker Model Registryに記録して、Model Monitorが同じパイプラインに対してデータドリフトを計算できるようにします。数百万件の短いコメントを扱う場合は、トークン化された出力をS3上でparquet形式に圧縮し、下流の特徴量抽出にSageMaker Batch Transformを使用して、リクエストごとのトークン化レイテンシーを回避します。
埋め込みとセマンティック表現
タスクの複雑さと計算予算に基づいて埋め込みを選択します。高速でスケーラブルな埋め込みには、SageMakerのBlazingTextを介してWord2Vecをトレーニングまたは事前学習済みモデルを使用し(ml.c5.4xlargeで教師ありモードまたはskip-gramモードを使用)、単語の密なベクトルを取得します。トピックカウントのために、IDFで重み付けした平均化によって文ベクトルに集約します。セマンティック検索や文脈を考慮するタスクには、SageMaker TrainingでGPUインスタンス(スケールに応じてml.p3.2xlargeまたはml.p4d.24xlarge)を使用してHugging Faceフレームワークでtransformerモデル(BERT, DistilBERT, or Sentence-BERT)をファインチューニングし、レイテンシーに敏感なエンドポイントにはml.g4dnまたはml.p3で最適化された推論を使用します。埋め込みを生成し、S3またはSageMaker Feature Storeに保存します。近似最近傍探索には、専用の推論クラスターでFaissを使用するか、エンタープライズサーチにはAmazon Kendraを使用します。落とし穴に注意してください。多義語に静的な埋め込みを使用すると文脈が失われます。次元数が過剰になるとストレージが増加し、最近傍探索が遅くなります。PCA/UMAPや量子化を適用してください。下流のモデルが埋め込みのドリフトに敏感な場合は、Model Monitorを実装して埋め込み分布のシフトを追跡し、一貫したトークナイザーとモデルチェックポイントを使用して定期的に再埋め込みを行います。
シーケンスモデル、インテント/スロット処理、エンティティ抽出
シーケンスモデリングは、古典的なLSTM/GRUから、seq2seqタスクのためのtransformerエンコーダーデコーダーまで多岐にわたります。対話システムにおけるインテント検出とスロットフィリングには、Amazon Lexを活用してインテント、スロットタイプ、フルフィルメントフックを管理します。複雑なスロットの検証やコンテキストの拡充にはLambdaを統合します。カスタムモデルの場合、BERTの上に条件付き確率場(CRF)を使用してトークンレベルのNERをトレーニングするか、SageMakerでHugging Faceのトークン分類ファインチューニングを使用します(ml.p3.2xlargeでのGPUトレーニング)。要約や翻訳などのSequence-to-sequenceのユースケースでは、エンコーダーデコーダー型のtransformer(T5, BART)が好まれ、トレーニングにはより大きなGPUインスタンスが必要です。長いシーケンスを適合させるために、混合精度(AMP)と勾配累積を使用します。エンティティ抽出には、すぐに使える固有表現のためにAmazon Comprehendを使用できますが、ドメイン固有のエンティティ(製品SKU、化学物質名など)には、Comprehend Custom Entitiesを選択するか、独自のNERモデルをファインチューニングします。よくある落とし穴は、インテント分類とスロットの検証を混同することです。高いインテント精度が正しいスロット値を保証するわけではありません。スキーマ検証、信頼度のしきい値、フォールバックインテントを追加してください。本番環境では、コスト効率のためにマルチモデルエンドポイントを備えたSageMakerエンドポイントを介してモデルを公開し、高スループットのオフラインタスクには非同期推論またはBatch Transformを使用します。
音声:文字起こし、合成、エンドツーエンドの音声ソリューション
音声パイプラインでは、音響モデルと言語モデルの両方を考慮する必要があります。文字起こしには、Amazon Transcribeが一般的なユースケースに対応します。カスタムボキャブラリーやボキャブラリーフィルターなどの機能を使用して、ブランド名や製品名の認識精度を高めることができます。Transcribeのジョブ設定でカスタムボキャブラリーとボキャブラリーフィルターを有効にし、ボイスメールや複数話者のログが存在する場合は、チャネル識別や話者ダイアライゼーションを使用します。厳しいレイテンシー要件のある超短時間の音声には、低レイテンシーのWebSocket接続を使用するリアルタイムのTranscribe Streamingが適しています。また、専門用語にはTranscribeのカスタム言語モデルの利用を検討します。テキスト読み上げ(text-to-speech)には、Amazon PollyがニューラルボイスとSSMLをサポートしています。レキシコンとSSMLタグを使用して、発音、プロソディ、ポーズを制御し、自然なカスタマーエクスペリエンスを実現します。LexをTranscribeやPollyと統合して音声ボットを構築し、Amazon Connectに接続して電話機能を実現します。よくある落とし穴は、ドメイン固有の名称に対してデフォルトの言語モデルのみに依存することです。常にカスタムボキャブラリーを追加するか、モデルをファインチューニングしてください。オフラインやオンプレミスの要件には、SageMaker Neoを使用して軽量モデルをパッケージ化するか、より小さな音響モデルをエッジデバイスにデプロイします。一方で、負荷の高い言語モデルの更新はクラウドで一元管理し、SageMaker Model Registryでバージョニングします。
実践的な問題:ユースケースシナリオ
シナリオ: GlobalNews AnalyticsはAWS上で稼働しており、データパイプラインはS3、前処理はSageMaker Processingを使用しています。毎日数百万件の英語のユーザーコメントを取り込み、トピック分析のためにSageMakerエンドポイントを維持しています。
課題: ノイズが多く、しばしば短いコメントから、最も議論されているトピックを特定すること。同時に、スラング、絵文字、数千の固有名詞(製品名/地名)を処理する必要があります。
推奨アプローチ:
- SageMaker Processingジョブ(ml.m5.4xlarge)を使用して、決定論的なサニタイズ処理を実行します。具体的には、HTMLの除去、Unicode正規化、絵文字のトークンへのマッピング、適切な箇所での小文字化を行い、クリーンアップされたテキストをParquet形式でS3に保存します。
- SageMaker Trainingでml.p3.2xlargeを使用し、Hugging FaceのSentence-BERTモデルをファインチューニングして、文脈に応じた文埋め込みを生成します。生成した埋め込みはS3に永続化し、オプションでFeature Storeにも保存します。
- Faiss(CPUクラスターまたはGPUバックのノード)で埋め込みをクラスタリングしてトピックグループを発見し、SageMaker Processingジョブを実行してクラスターごとに上位n-gramと代表的な文を計算します。オプションで、UMAPを使用して次元削減を行い、クラスターをさらに洗練させます。
- 新しいコメントを埋め込むための軽量な推論エンドポイント(ml.g4dn.xlarge)を公開し、夜間の再クラスタリングにはバッチ変換を使用し、SageMaker Model Monitorを有効にして埋め込みのドリフトを検出し、分布シフトがしきい値を超えた場合に再トレーニングをトリガーすることで、本番環境に対応させます。
論理的根拠: このアプローチは、スケーラブルな前処理、短くノイズの多いテキストに対する文脈に応じた埋め込み、効率的な類似度ベースのトピック発見のバランスを取ります。同時に、SageMakerをトレーニング、推論、モニタリングに活用することで、再現性と運用の即応性を確保します。
← ディープラーニングとコンピュータビジョン · すべてのドメイン · 時系列と予測 →
これらの問題を練習する → · ExamRoll.ioで時間制限付き練習 →
Pass the whole exam — not just this question
You found this answer. Get every verified question and explanation in one place, and save hours of prep. Free to start.
試験に合格する →