並列テキスト生成による低遅延ゲーム音声実況システム

ゲーム実況は、進行中のゲームに対して実況者が状況や展開を言語化し、視聴者に向けて発信する行為である。実況者による状況描写や補足説明を通じて、視聴者がゲーム内容を理解しやすくなるほか、実況者の巧みな話術によりゲーム実況そのものを娯楽として楽しむことができる[1,2]。ゲーム実況は高度な話術や分野知識が必要であり、誰しもが容易に行えるものではない。そのため、自然言語処理技術を用いて、ゲーム映像から実況を自動生成する研究が行われている[3]。従来、実況生成に関する研究は、テキスト生成と音声合成の分野で独立して発展している。テキスト生成の分野では、サッカーやゲーム等を対象に、刻一刻と変化する状況を正確に言語化することに主眼が置かれてきた[4,5,6]。一方、音声合成においてGamesourceVideoframesequence……………………CaptureboardBaselineCommentarytextLLMTTSLLMTTSCommentaryspeechDropframeswhileprocessing&nocommentaryforalongtimeVideoframesequence……………………ParallelLLMLLMLLMLLMLLMLLMLLMLLMChooseone(Latest,Oldest,Random)Chooseone(Latest,Oldest,Random)TTSTTSCommentaryspeechDecodetextsfromstackedframes&chooseoneafterTTS→Immediatesynthesisofspeechステム（図中Baseline）は、映像取得、テキスト生成、音声合成を順次実行する。対して提案システム（図中Parallel）は、テキスト生成を並列化し、生成された実況文をテキストバッファに蓄積する。は、例えば、Iuraら[7]は戦況の盛り上がりを反映した抑揚制御について提案している。これらを統合する研究は少なく、例えば、Ishigakiら[8]はBART[9]によるテキスト生成と音声合成を接続した単純な直列構成を提案している。このような直列構成では各モジュールの推論時間が蓄積し、音声実況の出力までの待ち時間が問題となる。この待ち時間は長い沈黙時間を含む実況を生み出し、不自然な実況の要因の一つとなる。本稿では待ち時間を軽減するため、並列処理可能なテキスト生成機構を持つリアルタイム音声実況システムを提案する。提案システムでは待ち時間低減のためにテキスト生成の並列化を行う。複数のテキスト生成処理を非同期に動作させることで、前の発話が終わるのを待たずに次の発話生成を開始し、待ち時間を軽減する。SMASHコーパス[10]を用いた評価実験より、並列生成を行わないベースラインは許容可能な音声遅延（約3.71秒）[11]を大きく超えることを確認しThisworkispublishedwithoutpeerreviewandislicensedbytheauthor(s)underCCBY4.0(https://creativecommons.org/licenses/by/4.0/).org/licenses/by/4.0/).影響を比較する。テキスト生成と音声合成にかかる処理時間を0にすることは原理的に不可能である。そこで、少なからず遅延が発生するという前提のもと、映像の送出をあえて遅延させユーザに提示することで、自動生成実況音声と映像を同期させる機構もすべての比較手法に実装する。具体的には、映像をバッファリングし、最初のフレーム列に対応する実況音声の再生開始時刻に合わせて、対応する映像の再生を開始することで同期を図る。つまり、映像を最初の発話の生成と音声合成にかかる時間だけ遅延させる。4.2データセット実験には、大乱闘スマッシュブラザーズSPECIALを対象としたデータセットを用いた。本タイトルはゲームの進行ペースが速く、遅延の影響がより顕著である。具体的には、映像データとしてSMASHコーパス[10]に収録されているゲームプレイ映像を使用した。一方で、実況音声については同コーパスのものではなく、当該映像に対してプロの実況者が行った実況音声を独自に収集したものを用いた。データセット全体から8本のゲーム映像を評価対象として無作為に選択した。4.3比較手法以下の5つの手法を比較する。ただし、4.1節で述べたようにいずれの手法も映像放出を遅延させ、できる限り実況と映像が同期するよう実装した：•BaselineAfter-Audio:音声再生完了を待機してから次の実況生成を開始する逐次的手法。既存の実装手法である[8]。•BaselineAfter-Text:テキスト生成終了時に音声再生を待たずに次フレームの実況生成を開始する半逐次的手法。•ParallelLatest:音声再生終了時点でテキストバッファ内の最新の発話を選択する並列手法。•ParallelOldest:音声再生終了時点でテキストバッファ内の最も古い発話を選択する並列手法。•ParallelRandom:音声再生終了時点でテキストバッファ内の任意の発話を選択する並列手法。4.4評価指標自動評価および人間の評価者による採点により、1)発話と沈黙の繰り返し傾向の自然性に加え、2)発話内容の妥当性を評価する。提案手法が特に発話と沈黙の繰り返し傾向の自然性の向上に寄与することを期待している。自動評価：発話時間や沈黙時間、その繰り返し傾向がプロの実況者に類似していれば、より自然な実況であると仮定する。この考えのもと、発話・沈黙時間の累積および平均、実況文長を計測し、プロの実況者の値と比較する。加えて、発話状態を1、沈黙を0とし、サンプリング間隔が1秒の時系列ベクトルとして実況の発話-沈黙パターンを表現する。このベクトルを用いて、人間のプロ実況とのmeanIntersectionoverUnion(mIoU)を算出する。すなわち、プロ実況が発話している時刻に自動生成実況も発話し、プロ実況が沈黙する時刻に自動生成実況も沈黙していれば高いスコアを得る。これにより、発話と沈黙の繰り返し規則の一致度を定量化する。発話内容に関しては、正解実況文に対するROUGEスコアによる自動評価を行った。なお、ROUGEの算出にあたっては、時系列のズレを考慮し、10秒単位のセグメントごとに評価を実施した2）。人手評価：評価者120名に対し、5つの手法を5通りのmaxnewtokensパラメータを設定した計25通りの音声実況付き動画を無作為に提示した。なお、評価者の負担を考慮し、約3分の元映像から共通のタイミングで30秒切り出したクリップを評価事例とした。評価対象のシーンは計20種類用意した。各評価事例を以下の3つの観点から採点者に5段階で評価させた：•Q1.発話リズムの自然さ：実況の内容ではなく、喋りのリズムや間の取り方•Q2.映像との一致度：実況の内容が映像（ゲームの状況）と正しく合っているか•Q3.実況としての全体的な質：リズム、内容、雰囲気などを含めた実況解説としての総合評価評価者はクラウドソーシング(Lancers3）)で募集した。一般向けのゲーム実況を想定しているため、評2）BERTScoreによる意味空間上での距離による評価は多くのテキスト生成研究において用いられているが、予備実験において本研究では手法間の差を観測しなかった。発話はすべて同一分野を対象にしたものであり、意味ベクトル空間上で近い場所に分布したためと考えている。3）https://www.lancers.jp/org/licenses/by/4.0/).mIoU。ここではmaxnewtokensを20に固定した。括弧内の数値は標準偏差を表す。手法累積平均mIoUHuman59.7(±11.3)1.7(±0.4)–After-Audio134.0(±5.2)9.5(±0.9)0.01(±0.06)After-Text125.5(±5.8)6.8(±0.9)0.10(±0.08)Latest24.7(±6.6)0.4(±0.1)0.59(±0.04)Oldest18.9(±3.1)0.3(±0.1)0.60(±0.04)Random19.1(±3.6)0.3(±0.1)0.60(±0.03)および発話長の統計量。ここでは実況文生成手法にLatestを用いた。括弧内の数値は標準偏差を表す。maxnewtokens発話時間の平均発話長Human