RevComm Tech Blog

コミュニケーションを再発明し 人が人を想う社会を創る

フェイク音声(偽音声)検出技術の現在

この記事はRevComm Advent Calendar 2023 7日目の記事です。

RevComm Researchの加藤 集平です。音声合成を中心に、音声信号処理の研究開発に携わっています。

昨今、生成AIを利用したフェイク動画(偽動画)が世の中を騒がせています。先日も、岸田首相のフェイク動画がSNSで話題となりました。この動画は内容が明らかに偽物であったこと、動画像が稚拙であったこと、合成音声の質がさほど高くなかったことなどから、視聴者が比較的簡単に偽物と見抜けるものでした。しかし、昨今の技術革新のスピードからすると、近い将来、簡単には偽物と見抜けない動画が出回ることは十分に考えられます。

このような状況に対して現在、国際的な法規制が検討されています。一方で、技術的な対抗手段の研究開発も目覚ましい発展を遂げています。本記事では、フェイク動画を構成する要素のうち、フェイク音声を検出する技術の現在について調査しました。

フェイク音声はどのようにして作られるのか

本題の検出技術の話題に入る前に、そもそもフェイク音声はどのようにして作られるのかについて説明します。なお、筆者自身は悪意を持ってフェイク音声を作ったことがなく、以下はあくまでフェイク音声検出の専門家が現時点で想定している事柄にとどまることにご注意ください。

フェイク音声に求められる条件

悪意を持ってフェイク音声を作ろうとした場合、フェイク音声に求められる条件とは何でしょうか。筆者の知る限り確立された見解はありませんが、筆者は以下のように考えます。

条件1: 声色・声の調子が本人に似ていること

フェイク音声の目的が特定の個人そっくりの声で偽の内容を話させることだとすれば、声色や声の調子が似ていることは必須の条件でしょう。少なくとも、人間の耳で本物の音声かどうかの判別が難しければ、悪意を持った作成者の意図に合致するでしょう。

条件2: 任意の内容を話すことができること、あるいは本物の音声の一部を改竄できること

任意の内容を話させることができれば、悪意を持った作成者に都合のよい、偽の内容を話させることができます。本物の音声の一部を改竄することでも、悪意を持った作成者の目的を達成できるかもしれません。

音声合成

上の2つの条件を満たすものの一つに、音声合成があります。音声合成のうち広く使われているのはテキスト音声合成 (text-to-speech; TTS) で、テキストを入力すると、テキストの内容を読み上げた音声が出力されます。テキスト音声合成は、電話の自動応答・公共交通機関の自動アナウンス・スマートスピーカーなど、すでに日常生活のさまざまな場面で利用されています。

テキスト音声合成はその半世紀以上にわたる歴史の中で、さまざまな手法が提案されてきました。中でもフェイク音声の文脈で重要なのは、深層学習(ディープラーニング)に基づく手法です。深層学習に基づく手法は従来の手法よりもより自然な声を合成することができます。音声合成が人間と同等の自然性を持つこと(=あたかも人間が話しているように聞こえる)については、2017年に発表されたTacotron 2という手法により、限られた条件下ではあるもののすでに達成されています。さらに、2023年には、目標話者(声を模倣したい話者)の音声をわずか3秒だけ用意すれば、その話者の声に類似した音声合成が可能となる手法も発表されています (VALL-E)。さらに、テキスト情報を手がかりに、音声の一部を編集できるような手法も提案されています (SpeechPainter)。

研究者は決して悪用するために研究をしているわけではありません。しかしながら、最新の手法はその自然性の高さから悪用が懸念されており、たとえばVALL-Eには誰でも試せるような公式のデモシステムや公式実装は存在しません。一方で、VALL-Eの論文は公開されていることから、再現実装や劣化版訓練済モデル*1は存在します。

音声変換(声質変換)

もう一つの方法に、音声変換(声質変換, voice conversion)があります。音声変換は多くの場合、ある話者の音声を入力とし、それを別の話者に類似した音声に変換したものを出力とします*2。音声変換の手法も深層学習の応用でめざましく発展しており、VTuberなどの分野で、すでに広く利用されています。

悪用の懸念としては、SNSなどに投稿された声(特に、有名人の声など)を訓練データとして音声変換モデルを訓練し、その人の声に類似した音声を出力できるようにして悪用することが想定されています。

最新の技術でフェイク音声はどの程度検出できるのか

結論から言うと、深層学習に基づく手法で作成されたフェイク音声のデータセット(後述)に対して人間の音声かフェイク音声かを判別するタスクにおいて、記事執筆時点(2023年12月時点)でおよそ3%〜4%の等価誤り率 (equal error rate; EER) が達成されています(論文: Automatic Speaker Verification Spoofing and Deepfake Detection Using wav2vec 2.0 and Data Augmentation)。このデータセットはASVspoof 2021という自動話者認証・なりすまし攻撃への対抗手段のチャレンジ(競技会)で提供されたものです。ASVspoof 2021の参加チームのうち最も優れた手法の性能はEER = 15%程度でしたから、わずか2年で劇的に性能が向上していることが分かります。

なお、同じデータセットに対して人間がどの程度フェイク音声を見抜けるかのデータは見つけることができませんでした。ただし、同じく深層学習に基づく手法で作成された別のデータセットに対して、全体的な正解率 (overall accuracy) が70%程度(つまり30%程度は間違えた)であるという研究があります。データセットが異なるので直接の比較はできませんが、最新の技術では人間が判別できないようなフェイク音声を見抜ける可能性があります。

最新の技術ではどのようにしてフェイク音声を見抜いているのか

ここでは、上述したAutomatic Speaker Verification Spoofing and Deepfake Detection Using wav2vec 2.0 and Data Augmentationという論文で提案されている、およそ3%〜4%のEERが達成されている手法を紹介します。

検出処理の流れ

検出処理の流れ
検出処理の流れ

システムに入力された音声は、wav2vec 2.0モデル*3で変換されたのち、RawNet2ベースのエンコーダーに通され、S \in \mathbb{R}^{\mathit{C}\times\mathit{F}\times\mathit{T}}の特徴表現となります(Cはチャネル数、Fはスペクトルのビン数、Tは時間方向のフレーム数)。

エンコーダーから出力された埋め込み表現は、2次元のself-attention (SA) から得られるattention mapを元に、周波数方向に着目した特徴表現 (f) と、時間方向に着目した特徴表現 (t) の2つに変換されます。

そして、fとtはgraph attention networkというグラフ構造で表現されるデータを処理できるネットワークで処理され、最終的に人間の音声か (real) フェイク音声か (fake) が出力されます。

なお、本論文ではwav2vec 2.0と2次元のself-attentionを用いていますが、本論文のベースとなっているAASISTというモデルでは、それぞれsinc layerとmax poolingを用いています。さらに、本論文ではRawBoostという手法を使って訓練データの拡張 (data augmentation; DA) を行っています。

評価実験

ASVspoof 2021で使用されたデータセットのうち、LA (logical access) データベースがモデルの訓練に用いられました。評価には、LAデータベースの評価セットのほか、DF (deep fake) データベースの一部も用いられました。

ここでは、フェイク音声を想定したDFデータベースによる評価結果を紹介します(EERのカッコ内は異なる3個のrandom seedによる結果の平均で、カッコ外は最もよい結果)。

評価結果
評価結果 (source)

まず、sinc-layerに代えてwav2vec 2.0を導入することにより、大幅にEERが改善しています。これは、wav2vec 2.0のような大規模な事前学習モデルを用いることにより、限られたデータセットだけで(特徴量抽出を含めた)モデル全体の訓練を行うよりも汎化性能がよいためだと推察されています。また、2次元のself-attention (SA) およびdata augmentation (DA) もEERの改善に寄与しています。

これからのフェイク音声検出

フェイク音声検出に関連するイベントとして、ASVspoofという自動話者認証・なりすまし攻撃への対抗手段のチャレンジ(競技会)が2015年より隔年で開催されています。本記事の冒頭で紹介したように、深層学習の発展により人間が見抜けないようなフェイク音声が登場するリスクはますます高まっています。一方で、フェイク音声を検出する技術もASVspoofのコミュニティを中心に劇的な発展を遂げています。

部分的に改竄された音声 (partially spoofed audio) の検出など、より難しいタスクの研究も進んでいます。また、音楽生成の分野ではありますが、AIによって生成された音楽に透かしを埋め込む手法など、生成AI側からの提案もなされています。このような手法は、AIによって生成された音楽や音声の判別をより簡単にするほか、作成者の意図に反した改竄を防ぐことにもつながると考えられます。

まとめ

本記事では、フェイク音声の検出技術の現在について簡単な解説を行いました。RevCommでフェイク音声に関連する機能は今のところ提供していませんが、筆者は音声合成の研究開発をする者としてフェイク音声のリスクに対して無関係ではありません。法規制・技術的対抗手段について、これからも関心を寄せていきたいと思います。

*1:VALL-Eの論文ではおよそ6万時間の訓練データを使用していますが、いくつかある再現実装ではおよそ600時間の訓練データが使用されているようです。

*2:より一般には、音声を入力として、何らかの変換を施した音声を出力とします。たとえば、構音障害(発音器官やその動きに問題があり発音がうまくできない障害)の人の音声を、健常者のような音声に変換する研究もあります。

*3:大規模な事前学習モデルであるwav2vec 2.0 XLS-R(人間の音声だけで訓練されている)を、フェイク音声を含む訓練データでファインチューニングしたモデルが使用されています。