[セッションレポート] 「AWSがF1TVのファンエンゲージメントを高めるためにどのような支援をしているか」というセッションに参加しました。(SPT101) #reinvent

Formula 1 のコンテンツを配信するF1TVが、AWS Transcriptを利用して実況内容の字幕をリアルタイムで生成する事例を紹介します。
2022.12.09

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

AWS認定トレーニング講師の平野@おんせん県おおいたです。

Formula One社の動画配信の字幕自動生成に関するセッションに参加しましたのでレポートします。

背景

Formula One社ではF1TVの再構築を進めています

  • 安定性と品質を最優先し、機能を迅速に提供
    • 規模に合わせた設計
    • 平均以上のQoS指標で高品質の動画をストリーミング配信
    • 最新のUX/UIと、より多くの独占コンテンツおよびライブ番組
    • クローズドキャプション(字幕)の自動化ソリューション
  • 続いて
    • コネクテッドTVの展開
    • F1ライブ専用チャンネルと解説チーム
    • より充実した再生機能と強化されたUX/UI

このセッションのテーマ

クローズドキャプション(字幕)の自動生成についてのセッションです

クローズドキャプションを自動生成することで次のようなメリットがあります

  • 自動化されたクローズドキャプションにより、作業時間が57%短縮される
  • 自動化されたクローズドキャプションに必要なリソースは、専門家よりも少ない(したがって低コスト)

そこで、我々はライブ音声からの字幕生成をAmazon Transcribeを利用して自動化しました

F1の世界では、(世界各国出身の)ドライバーの発音はまちまちだったり、数字の表現が特殊だったりするため、日常会話用に設計されているAmazon Transcribeでは限界があります。そこで、カスタムボキャブラリーの機能を利用して、Amazon Transcribeのトレーニングを行いました

カスタム・ボキャブラリーは次のように利用しました。

コメンテーターのアクセントが異なる場合、同じボードに複数のエントリーを追加して、アクセントや発音の違いをカスタム語彙に反映させることができます。つまり、将来、異なる場所のシナリオについて話すときに使えるように、発音を書き写しました。

また、異なる言語で誤解される可能性のある用語については、ファイルを分割して、カスタムボキャブラリーに最適なシナリオを反映させるようにしています。例えば、バルセロナで開催されるスペインのレースについて話す場合、バルセロナ用のカスタムボキャブラリーが用意されます。一方、ブラジルの場合は、ブラジルとインターロックのカスタム・ボキャブラリーを用意します。さらに、このファイルに加えたすべての変更が、実際にトランスクリプションを向上させ、より質の高いトランスクリプションを提供できるようにしました。

F1もAWSも非常にデータ駆動型なので、F1ボキャブラリーの変更をすべて追跡し、それがトランスクリプションにどのように役立っているかを評価しています。

また、後処理を行うことでさらにクオリティを上げました。

数字については、Amazon transcribe は言語によって異なる動作をします。例えば英語では、0から7までの数字がある場合、単語として転写されるのに対して、F1では数字として転写されます。ラップタイムを表す場合は、分:秒:ミリ秒の表記に変換します。

そして、これらの作業をどのように評価するかです。ここで重要なのは、F1(でのテキスト表現)ではすべてのミスが同じ重要性を持つわけではない、ということです。私が話しているとき、あなたは英語のネイティブスピーカーではないので、文法の間違いを見逃す可能性は非常に高いのですが、それでも私の話を理解してほしいのです。

私たちの脳は、文脈を理解した上で、言われたことの意味を汲み取ることができますから、寛容です。しかし、私があるドライバーの大ファンである場合、例えば、私がルイス・ハミルトンの大ファンであるとして、彼の名前が誤って書き起こされた場合、ファンの寛容さは同じではありません。

ですから、私たちは、F1のさまざまな用語に対して、異なるインポータンスを与えているのです。ドライバー、エンジニア、ティム・プリンシプルなど、F1用語の正確さを評価し、スポンサー、コンストラクター、ロケーション、タイヤ、スピードなど、F1に関する用語の正確さも評価しています。つまり、ミスが少なく、かつ全体的に良い書き起こしができるようにしたいのです。

そのために、ワードエラーレートを使って、トランスクリプションの品質を評価しています。ワードエラーレートというのは、エラーをできるだけ少なくしたいということです。一方、正確さについては、可能な限り正確なトランスクリプションを実現したいと考えます。そのため、できる限り正確な文字にしたいのです。ですから、精度を最大限に高めたいのです。

では、このプロジェクトはどうだったのか。英語のトランスクリプションを評価した場合、スペイン語とフランス語は非常に似ていますが、全体的な精度が向上していることがわかります。つまり、単語の誤差を減らしているのです。

Amazon Transcribeは日常的な言語に対して非常によく機能するため、全体としてすでにかなり良いパフォーマンスを示していたとも言えます。ですから、単語エラー率が減少していることは重要です。なぜなら、国際的な用語や非常に特殊なドメインの用語は、最初はあまり書き写されませんでしたが、カスタム語彙と後処理スクリプト、そして最後に行うモデレーションによって、これらの出現率が大きく上昇したからです。

我々は、すべてのレース終了後に、モデレーションによって拒否されたすべての単語を取得し、ダメージショーを使用し、ボキャブラリーに新しい単語を含めるためにモデルを再トレーニングしています。

まとめ

音声から自動的に字幕を生成する事例を紹介しました。 カスタムボキャブラリ、後処理、ワードエラーレートなど、Amazon Transcribeを実プロジェクトで運用する際の参考にして頂ければと思います。

追記

このセッションはYoutubeで公開されています。ご興味あればご視聴ください。