【AudioLDM】Latent Diffusionを用いたText-to-Audioの生成モデル
3つの要点
✔️ LDMの学習に音声のみのデータを用いることで計算効率が向上
✔️ CLAPを利用することで、ペアデータを用いず「テキストと音声の整合性」を担保
✔️ 微調整をせずに、学習済みAudioLDMだけで様々なゼロショットタスクが実行可能
AudioLDM: Text-to-Audio Generation with Latent Diffusion Models
written by Haohe Liu, Zehua Chen, Yi Yuan, Xinhao Mei, Xubo Liu, Danilo Mandic, Wenwu Wang, Mark D. Plumbley
(Submitted on 29 Jan 2023 (v1), last revised 9 Sep 2023 (this version, v3))
Comments: Accepted by ICML 2023. Demo and implementation at this https URL. Evaluation toolbox at this https URL
Subjects: Sound (cs.SD); Artificial Intelligence (cs.AI); Multimedia (cs.MM); Audio and Speech Processing (eess.AS); Signal Processing (eess.SP)
code:
本記事で使用している画像は論文中のもの、紹介スライドのもの、またはそれを参考に作成したものを使用しております。
はじめに
本研究では、テキストプロンプトの情報に即した高品質な音声を、単一のGPUで生成できる「AudioLDM」という生成モデルが、提案されました。AudioLDMを使うことで、例えば以下のような音声を、テキスト指示から生成することができます。
- 環境音
- 動物の鳴き声
- 人の話し声
- 音楽
AudioLDMは、高品質な画像生成に使われる潜在拡散モデル(LDM)を活用し、連続潜在表現による音声生成を行います。具体的には、メルスペクトログラムベースの変分オートエンコーダ(VAE)と、CLAP(Contrastive Language-Audio Pretraining)エンベディングに基づいた条件付けを組み合わせ、高度なテキスト条件による音声生成を可能にします。
そのようにして生成された音声は、以下のAudioLDMのプロジェクトページで視聴できます。
さらに、本研究では、学習済みのAudioLDMを用いることで、微調整なしでも以下のような音声操作を実行できることが示されています。
- 音声スタイル変換
- 超解像
- インペインティング
これらの実現方法を、AudioLDMのモデル構造の観点から見ていきましょう。
AudioLDMのモデル構造
AudioLDMの全体的な構造は、以下の図の通りです。
上図における実線が学習過程を表し、点線が推論過程を表します。
ここで特徴的なのは、学習と推論でCLAPが用いられており、学習時には音声データだけが、推論時にはテキストデータだけが用いられている点です。
CLAPを用いる効果
CLAP(Contrastive Language-Audio Pretraining)とは、音声とテキストの整合性を担保する対照学習モデルです。
出典:https://github.com/microsoft/CLAP
このCLAPを用いる主な効果として、音声とテキストの整合性を保つだけでなく、学習データの不足を補うことが挙げられます。というのも、Text-to-Dataの分野では、テキスト-データのペアデータが大量に必要になってきます。今回の場合、音声データに結びつけられたテキストがセットになったものが、必要になってくるのです。
しかし、そのような音声-テキストのペアデータセットを集めるのは難しく、音声生成の精度向上が困難であるというのが現状。そこで、あらかじめ大量のデータで学習されたCLAPを用いることで、自前のデータで改めて学習する必要が無く、効率的にクロスモーダル情報を得られるのです。
そして、CLAPによって獲得した音声埋め込み・テキスト埋め込みをもとに、LDMに条件付けしています。
LDMによる音声の潜在表現の獲得
LDM(Latent Diffusion Models)とは、データの潜在表現を生成する拡散モデルです。具体的には、データをあらかじめVAEのEncoderで潜在表現に変換し、拡散過程でその潜在表現にノイズを加えます。そして、デノイジング過程で潜在表現を再構成するよう学習します。
こうすることで、生データよりも次元の低い潜在表現を扱えるため、より効率的にデータを生成できるのが特徴的です。ちなみに、生成された潜在表現を、最後にVAEのDecoderに通すことで、生成されたデータを抽出できます。
本研究でも、学習時に音声データのメルスペクトログラムをVAEによって、潜在表現に圧縮しています。推論時には、VAEデコーダーによって潜在表現からメルスペクトログラムに変換します。そして、さらにそのメルスペクトログラムを、Vocoderと呼ばれるモジュールに通すことで、生の音声データを出力できます。
音声データの拡張
本研究では、音声データ不足を解消し、モデルの性能を上げるために、mixupによって音声データを拡張しています。
具体的には、以下の式に基づき、既存の音声データ$x_1$と$x_2$から、新たな音声データ$x_{1,2}$が生成されます。
ここで、$\lambda$はBeta分布$B(5, 5)$からサンプリングされます。また、拡張された音声データに結び付けられるテキストは、学習時には使われないため不要です。
その他の音声操作
一度AudioLDMを学習すれば、インペインティングなどの様々なタスクを、ゼロショットで解くことができます。そのようなタスクにおける推論過程は、以下の図の通りです。
(b)のインペインティングと超解像においては、音声の欠損部分の修復や、音声データの解像度の向上が可能です。
(c)のスタイル変換においては、例えば、「穏やかな音楽」から「エネルギッシュな音楽」への変換などが可能になります。
評価実験
データセット
AudioLDMの研究では、AudioSet (AS)、AudioCaps (AC)、Freesound (FS)、BBC Sound Effect library (SFX) の4つのデータセットが使用されました。
ASは大規模で527のラベルと5,000時間以上のオーディオを含み、ACは約49,000のオーディオクリップとテキスト記述を含む小規模なデータセットです。ただ、これらのデータセットは主にYouTubeからのオーディオで、品質は保証されていません。
そのため、高品質なオーディオデータを追加するために、FreeSoundとBBC SFXからデータを収集されました。
モデルの評価にはACとASが使用され、ACの各オーディオクリップには5つのテキストキャプションがあり、ランダムに1つをテキスト条件として選択されました。ASからはランダムに10%のオーディオサンプルを別の評価セットとして選択し、テキスト記述の代わりにラベルの連結を使用されています。
評価方法
本研究では、客観的評価と主観評価の両方を含む包括的な評価方法を採用し、AudioLDMの性能を評価しています。
客観的評価には、以下の評価指標が使用されています。
- frechet distance (FD)
- inception score (IS)
- kullback–leibler (KL) divergence
主観評価では、6人のオーディオ専門家による評価が行われました。具体的には、以下の質問用紙の「全体的な音声の品質(OVL)」と「テキストとの関連性(REL)」に関する質問に、答えるような実験が行われています。
モデルの比較には、同じText-to-AudioのDiffSoundとAudioGenが使用されています。
AudioLDMは小型モデル(AudioLDM-S)と大型モデル(AudioLDM-L)で学習されました。さらに、AudioLDM-L-Fullモデルは全てのデータセットで学習されたことを表し、学習データのサイズの影響が調査されています。
結果
比較評価の結果は、以下の表の通りです。
全体的に「AudioLDM-L-Full」が最も性能が高いです。つまり、パラメータ数が大きく、かつ全てのデータセットで学習されたAudioLDMが、最も精度の高いモデルであることを示しています。
条件付けに適切なデータ
以下の表は、AudioLDMの学習時の条件として、音声埋め込みだけを用いた場合と、テキスト埋め込みと音声埋め込み両方を用いた場合の、性能の差を調べたものです。
この結果より、テキスト情報よりも音声情報の方が、学習時の条件付けとして効果的であることが分かります。
この結果を踏まえて、実際のAudioLDMの学習でも、LDMへの条件付けに「CLAPの音声エンコーダによって得た音声埋め込み」のみを使用しています。
適切なサンプリングステップ数
AudioLDMでは、サンプリング手法にDDIMが用いられています。適切なDDIMステップ数は、以下の表から見て取れます。
上の表より、適切なサンプリングステップ数は、100から200の間であることが分かります。
まとめ
本研究では、テキストプロンプトから音声を生成できるAudioLDMが、提案されました。AudioLDMはText-to-Audio分野において、SOTAを達成しています。
本研究の課題としては、主に以下の3つが挙げられていました。
- 生成される音声のサンプリングレートが、音楽生成には不十分
- 各モジュールが別々に学習されるため、ずれが生じる可能性がある
- 偽の音声情報の生成によるフェイク情報の拡散
将来的には、サンプリングレートの向上や、End-to-Endの微調整などのアプローチを探求する必要があるとのこと。
最後に、AudioLDMのソースコードは、GitHubやHuggingFaceで公開されているため、興味がある方はローカル等で動かしてみてください。
この記事に関するカテゴリー