ドメイン固有および言語固有のカスタマイズ PlatoBlockchain Data Intelligence を使用して、多言語ドキュメント翻訳ワークフローを構築します。 垂直検索。 あい。

ドメイン固有および言語固有のカスタマイズを使用して、多言語ドキュメント翻訳ワークフローを構築します

デジタルの世界では、ローカル言語で情報を提供することは目新しいことではありませんが、退屈で費用のかかる作業になる可能性があります。 機械学習 (ML) と自然言語処理 (NLP) の進歩により、このタスクははるかに簡単になり、コストも削減されました。

多言語データおよびドキュメント処理ワークロードに ML の採用が増加しています。 企業や政府機関のお客様は、手動の翻訳ワークロードを移行して、自動 ML 翻訳サービスを利用しています。 アマゾン翻訳は、 ニューラル機械翻訳 同期 (リアルタイム) または非同期の翻訳タスクに使用できる数千の言語ペア間で、高速、高品質、手頃な価格の言語翻訳を提供するサービスです。 利用可能な翻訳ペアの完全なリストについては、次を参照してください。 サポートされている言語と言語コード.

翻訳ワークロードを移行およびモダナイズしているお客様は、ビジネス ドメインに合わせて翻訳をカスタマイズする機能が必要です。 翻訳ワークロードには、地域の言語の方言や使用法に適応する機能も必要になる場合があります。 たとえば、「高齢者」のスペイン語訳は anciano(a) ですが、プエルトリコでは envejeciente という言葉が好まれます。

この投稿では、Amazon Translate の Active Custom Translation (ACT) 機能を組み込む方法を示します。 結果を継続的に改善し、エンドユーザーを喜ばせるために必要に応じてレビューおよび拡張できる、ドメインおよび言語固有のカスタマイズを備えた多言語ドキュメント翻訳ワークフローを作成するソリューションを提案します。

ソリューションの概要

ACT は、カスタム翻訳モデルを構築および維持する必要なく、カスタム翻訳された出力を生成します。 ACT を使用すると、Amazon Translate は優先する翻訳例を並列データとして使用して翻訳結果をカスタマイズし、新しい機械学習モデルの構築とトレーニングに必要な時間とコストを削減します。

この投稿で取り上げるソリューションでは、次を使用して人間参加型ワークフローを作成する方法について説明します Amazon拡張AI (Amazon A2I) は、カスタマイズされた翻訳を継続的に改善します。 Amazon A2I は、ML の経験がなくても、人間による監視を ML ワークフローに統合する簡単な方法を提供します。 Amazon A2I を使用すると、AWS で実行されているか別のプラットフォームで実行されているかに関係なく、人間の判断と AI を任意の ML アプリケーションに簡単に統合できます。

詳細については、を参照してください。 Amazon TranslateとAmazon Augmented AIを使用した人間によるレビューワークフローの設計 役職。

次の図は、ソリューションのコマンド フローとデータ フローを示しています。 コマンド フローは、ワークフロー内のイベントの論理的な順序を示しています。 データ フローは、ソリューション内のさまざまなコンポーネントによってデータがどのように作成または使用されるかを示します。

ドメイン固有および言語固有のカスタマイズ PlatoBlockchain Data Intelligence を使用して、多言語ドキュメント翻訳ワークフローを構築します。 垂直検索。 あい。

次のシーケンス図は、ソリューションの XNUMX つの別個のプロセスを示しています。翻訳ワークフロー (A) と、並列データを更新するプロセス (B) です。

翻訳ワークフローは、 アマゾンクラウドウォッチ Translation Job Invoker を開始するスケジュールされたイベント AWSラムダ 関数。 この関数は、Amazon Translate で非同期翻訳ジョブを作成し、翻訳するドキュメントと、翻訳をカスタマイズするための並列データの場所を渡します。 翻訳ジョブは、並列データを読み取り、翻訳を実行し、翻訳結果を アマゾンS3 バケツ。 この記事の執筆時点では、非同期翻訳ジョブのみが並列データを使用できます。

翻訳ジョブが完了すると、翻訳ジョブ完了ハンドラ Lambda 関数をトリガーするイベントが生成されます。 この関数は、ワークフローの Amazon A2I 部分の主要コンポーネントであるヒューマン ワークフロー ループを作成します。

人間のレビュアーが翻訳を評価し、翻訳を承認または修正します。 すべての修正は、翻訳されたドキュメントを更新するために使用され、カスタマイズ ディクショナリにも追加されます。 レビューが完了すると、別のイベントが生成され、ワー​​クフロー完了ハンドラ関数がトリガーされます。 この関数は、最新の翻訳済みドキュメントを Amazon S3 に書き戻します。 カスタマイズ データは、 Amazon DynamoDB ソースと翻訳されたテキストのペアを含むテーブル。

ループを閉じるには、DynamoDB に保存されているこのカスタマイズ データを、Amazon S3 に保存されている並列データに組み込む必要があります。 これを達成するために、スケジュールされた CloudWatch イベントを使用して Parallel Data Refresher 関数をトリガーします。この関数は、DynamoDB テーブルからデータを読み取り、並列データとして再フォーマットし、S3 バケットを更新して並列データを保存します。

AWSCloudFormationを使用してソリューションをデプロイする

提供された AWS CloudFormation テンプレートを使用して、アカウントにソリューションをデプロイします。 このスタックは us-east-1 リージョンでのみ機能します。 このソリューションを他のリージョンにデプロイする場合は、次を参照してください。 GitHubレポ.

  1. 選択する 発射スタック:
    ドメイン固有および言語固有のカスタマイズ PlatoBlockchain Data Intelligence を使用して、多言語ドキュメント翻訳ワークフローを構築します。 垂直検索。 あい。
  2. 指示に従って、必要なパラメーターを設定します。 このスタックを初めて実行する場合は、 SNSメール が唯一の必須パラメーターです。
  3. ソフトウェア設定ページで、下図のように レビュー ページ、 機能 セクションで、チェックボックスを選択して選択します スタックを作成.

ドメイン固有および言語固有のカスタマイズ PlatoBlockchain Data Intelligence を使用して、多言語ドキュメント翻訳ワークフローを構築します。 垂直検索。 あい。

スタックは、次の主要コンポーネントを作成します。

  • カスタマイズデータ – DynamoDB テーブル (translate_parallel_data) カスタマイズ データを維持します。 既存のカスタマイズ データをこのテーブルに移行します。 このテーブルは、カスタマイズを継続的に追加および更新するために使用されます。
  • パラレル データ リフレッシャー – DynamoDB テーブルのカスタマイズデータを並列データ形式 (CSV、TSV、または TMX) に変換し、Amazon S3 に保存する Lambda 関数。 Amazon S3 の新しい並列データ ファイルを使用して、並列データを作成および更新します。
  • 翻訳ジョブの呼び出し元 – 並列データで Amazon Translate バッチジョブを開始する Lambda 関数。
  • 翻訳ジョブ完了ハンドラ – この Lambda 関数は、Amazon Translate バッチ ジョブが完了するとトリガーされます。 この関数は、ドキュメントごとに XNUMX つのヒューマン ループを作成します (今後これを改良して、処理されたドキュメントの選択された割合に対してのみヒューマン ループを作成します)。 元のドキュメントと翻訳されたドキュメントを使用して、ヒューマン ループを作成します。
  • Amazon A2I カスタマイズ テンプレート – このテンプレートは、人間によるレビュー用に翻訳ペアをレンダリングするために使用されます。 テンプレートには、 Add すべての翻訳セグメントのオプション。 ユーザーは、このオプションを選択して、カスタマイズ データに修正を追加できます。 新しいカスタマイズ データは、次のバッチ翻訳ジョブで使用されます。
  • ワークフロー完了ハンドラ – この Lambda 関数は、ヒューマン ワークフローが完了するとトリガーされます。 この関数は、翻訳されたドキュメントを修正して更新し、並列データ更新をチェックします。 新しい並列データが DynamoDB テーブルに追加されます。
  • Amazon A2I プライベートチーム – Amazon A2I プライベート チームは、提供された E メールを使用して人間の作業者で作成されます。 プライベート チームが正常に作成されると、最初の資格情報が電子メールで送信されます。 この E メールと認証情報を使用して、Amazon A2I ワーカー ポータルにログインします。

ソリューションをテストする

  sample_text.txt ファイルは、スタックによって作成された S3 バケットの入力プレフィックスの下に作成されます。 このファイルをテストに使用します。 次の内容が含まれます。

Life insurance companies have the freedom to charge different premiums based on risk
factors that predict mortality. Purchasing a life insurance policy often entails a health 
status check or medical exam, and asking for vaccination status is not banned.

Health insurers are a different story. A slew of state and federal regulations in the 
last three decades have heavily restricted their ability to use health factors in issuing 
or pricing polices. The use of health status in any group health insurance policy is 
prohibited by law. The Affordable Care Act, passed in 2014, prevents insurers from pricing 
plans according to health – with one exception: smoking status.

ソリューションをテストするには、次の手順を実行します。

  1. Translation Job Invoker 関数を手動で呼び出すか、指定した cron スケジュールに基づいて CloudWatch によってトリガーされるのを待ちます。
    この関数は、Amazon Translate バッチ ジョブをトリガーします。 Amazon Translate コンソールでジョブの進行状況を確認できます。
    ドメイン固有および言語固有のカスタマイズ PlatoBlockchain Data Intelligence を使用して、多言語ドキュメント翻訳ワークフローを構築します。 垂直検索。 あい。このバッチ ジョブは、完了するまでに約 30 分かかります。 完了すると、 TextTranslationJob 状態変更イベントは、翻訳ジョブ完了ハンドラー関数をトリガーします。 この関数は、翻訳されたドキュメントごとに XNUMX つのヒューマン ループを作成します。
  2. に移動します Amazon A2I の従業員 ページで見やすくするために変数を解析したりすることができます。
  3. 選択する プライベート タブには何も表示されないことに注意してください。
    ドメイン固有および言語固有のカスタマイズ PlatoBlockchain Data Intelligence を使用して、多言語ドキュメント翻訳ワークフローを構築します。 垂直検索。 あい。
  4. のリンクを選択して、Amazon A2I ワーカー ポータルにログインします。 ポータル サインイン URL のラベル付け.
  5. タスクを選択します Human review task ジョブリストで。
  6. 選択する 作業を開始する.
    ドメイン固有および言語固有のカスタマイズ PlatoBlockchain Data Intelligence を使用して、多言語ドキュメント翻訳ワークフローを構築します。 垂直検索。 あい。
    以下のページが表示されます。
    ドメイン固有および言語固有のカスタマイズ PlatoBlockchain Data Intelligence を使用して、多言語ドキュメント翻訳ワークフローを構築します。 垂直検索。 あい。
  7. 指示に従って、ドメイン固有および言語固有の修正を行います。
    前のスクリーンショットでは、「団体健康保険における健康状態の使用は法律で禁止されています」というフレーズは、「La ley prohíbe el uso del estado de salud en cualquier póliza de seguro médico de grupo.」に翻訳されています。 翻訳は正確ですが、フレーズは再配置されています。
  8. これを「El uso del estado de salud en cualquier póliza de seguro de salud grupal está prohibido por ley」に変更して、元の言い回しを反映したより直接的な翻訳にしましょう。
  9. 選択 Add これを辞書に追加します。
  10. 完了したら、を選択します 送信.
    ドメイン固有および言語固有のカスタマイズ PlatoBlockchain Data Intelligence を使用して、多言語ドキュメント翻訳ワークフローを構築します。 垂直検索。 あい。

これにより、ワークフロー完了ハンドラー関数がトリガーされ、DynamoDB テーブルでカスタマイズ データが更新されます。 この関数は、修正された翻訳を post-edits プレフィックスの下にも保存します。

カスタマイズが追加されていることを確認できます translate_parallel_data DynamoDB コンソールのテーブル。

ドメイン固有および言語固有のカスタマイズ PlatoBlockchain Data Intelligence を使用して、多言語ドキュメント翻訳ワークフローを構築します。 垂直検索。 あい。

コマンドの流れ

並列データ リフレッシャー機能は、CloudWatch のスケジュールされたイベントによって XNUMX 時間ごとにトリガーされます。 この関数は、 translate_parallel_data テーブルの下に、Amazon S3 に新しい並列データ TMX ファイルを作成します。 parallel_data プレフィックスを追加し、Amazon Translate 並列データ コンポーネントを更新します。 スケジュールされたイベント トリガーを待ちたくない場合は、この関数を手動でトリガーできます。

Amazon Translate コンソールで並列データが更新されていることを確認できます。

ドメイン固有および言語固有のカスタマイズ PlatoBlockchain Data Intelligence を使用して、多言語ドキュメント翻訳ワークフローを構築します。 垂直検索。 あい。

完了すると、ジョブのステータスは次のようになります。 アクティブ との値 更新記録 追加したカスタマイズの数 (この場合は 1) を反映する必要があります。

ドメイン固有および言語固有のカスタマイズ PlatoBlockchain Data Intelligence を使用して、多言語ドキュメント翻訳ワークフローを構築します。 垂直検索。 あい。

これで、更新されたデータを使用して翻訳ジョブを再度実行できます。 Translation Job Invoker 関数を再度トリガーして、XNUMX 回目の反復でカスタマイズが翻訳に追加されることを確認します。 Amazon Translate は、提供された並列データを使用して翻訳をカスタマイズするようになりました。

ドメイン固有および言語固有のカスタマイズ PlatoBlockchain Data Intelligence を使用して、多言語ドキュメント翻訳ワークフローを構築します。 垂直検索。 あい。

ラベル付けポータルで翻訳出力の変化を確認できます。 デフォルトの翻訳の代わりに、カスタマイズされた翻訳が適用されていることがわかります。

ドメイン固有および言語固有のカスタマイズ PlatoBlockchain Data Intelligence を使用して、多言語ドキュメント翻訳ワークフローを構築します。 垂直検索。 あい。

このワークフローは、Amazon A2I と Amazon Translate のカスタマイズ機能を使用して、翻訳出力を継続的に改善する好循環を生み出すのに役立ちます。

費用

Amazon Translate と Amazon A2I を使用すると、処理したテキスト文字数と人間がレビューした各オブジェクトに基づいて従量課金制になります。 この例では、DynamoDB オンデマンド モードを使用します。 DynamoDB は、テーブルで実行された読み取りと書き込みに対して料金を請求します。 価格ページを参照してください Amazon翻訳, アマゾンA2I, Amazon DynamoDB 実際の費用。

クリーンアップ

このソリューションの実験が終了したら、AWS CloudFormation コンソールを使用してリソースをクリーンアップし、この例でデプロイされたすべてのリソースを削除します。 これにより、アカウントでの継続的なコストを回避できます。

まとめ

この記事で紹介したソリューションを使用して、ドメイン固有のカスタマイズを段階的に使用および強化する多言語翻訳ワークフローを構築し、翻訳結果を継続的に改善できます。 既存のカスタマイズ資産を Amazon Translate や Amazon A2I などのマネージド AI サービスと統合して、アプリケーション用の堅牢な翻訳サービスを構築するためのシンプルなメカニズムを提供しました。 Amazon Translate は、このソリューションを拡張して、5,550 を超える翻訳ペアをすぐにサポートできるようにするのに役立ちます。 Amazon A2I は、社内の言語専門家と簡単に統合したり、外部の労働力を利用してソリューションを拡張したりするのに役立ちます。

Amazon Translate の詳細については、こちらをご覧ください。 Amazon翻訳リソース ビデオ リソースとブログ投稿を検索し、参照するには AWS 翻訳に関するよくある質問. コメント セクションまたはプロジェクトの問題セクションで、ご意見をお寄せください。 Githubリポジトリ.


著者について

ドメイン固有および言語固有のカスタマイズ PlatoBlockchain Data Intelligence を使用して、多言語ドキュメント翻訳ワークフローを構築します。 垂直検索。 あい。サティア・バラクリシュナン AWS のプロフェッショナル サービス チームのシニア カスタマー デリバリー アーキテクトであり、データ/ML ソリューションを専門としています。 彼は、米国連邦政府の金融クライアントと協力しています。 彼は、顧客のビジネス上の問題を解決するための実用的なソリューションを構築することに情熱を注いでいます。 余暇には、映画鑑賞や家族とのハイキングを楽しんでいます。

ドメイン固有および言語固有のカスタマイズ PlatoBlockchain Data Intelligence を使用して、多言語ドキュメント翻訳ワークフローを構築します。 垂直検索。 あい。ポール・W・ジョワールマン は、AW​​S のプロフェッショナル サービスのシニア カスタマー デリバリー アーキテクトであり、アプリケーションの移行を専門とし、米国連邦政府の金融クライアントと協力しています。 Paul は、テクノロジー ソリューションの作成、家族との旅行、シェナンドー国立公園でのハイキングを楽しんでいます。ハイキングの最後は地元のクラフト ビール醸造所です。

タイムスタンプ:

より多くの AWS機械学習