研究紹介/コラム - Tacotron2+WaveGlow を動かす(音声合成)【前編】

Tacotron2+WaveGlow を動かす(音声合成)【前編】

音声認識と生成系AI

Tacotron2+WaveGlow

音声データにおける生成系AIといえば、音声合成があります。著名なものに、今回取り上げる、Tacotron2+WaveGlowがあります。
(論文:https://arxiv.org/abs/1712.05884

このモデルでは同一の話者が吹き込んだデータを用意し、モデル学習をすれば、その人物の特徴をモデルに取り込み、打ち込んだテキストから、本人そっくりの音声を生成させることができます。tacotronのサイトには、The LJ Speech Datasetで学習したデモが用意されています。
このモデルの良いところは、Tacotron2モデル でテキストからメルスペクトログラムを作成し、それを基にしてWaveGlowモデルで音声合成を行うという、2段階の処理になっているところだと思います。(下図 )

メルスペクトログラム

メルスペクトログラムは一言で言うならば、時間、周波数および信号強度からなる3次元データで、音声認識・音声合成を学ぶ者は必ず通る道であり、いってみれば基本中の基本といったデータで、プロットすることによって簡単に視覚化できます。
音声データからメルスペクトログラムを作るのはPythonで簡単に行えます。言ってみればモデルの動きを視覚的にとらえやすい。
最近の性能が高いといわれているE2E(End-to-end)型のモデルでは、このメルスペクトログラムを生成する工程をバイパスする構成になり、モデルがブラックボックス化します。個人的には、Tacotron2は、途中結果を視覚化できるという点で、一度は動かしておきたいモデルだと思います。

次回

今回はTacotron2の概要についてお伝えしました。次回は実際にTacotron2を動かす際の実装方法について解説します。

研究紹介/コラム ー Tacotron2+WaveGlow を動かす(音声合成)【前編】