◆ CNTK ( Microsoft Cognitive Toolkit ) 2.2 の Python API 解説第5弾です。
Sequence-to-Sequence Attention モデルによる、北米英語の書記素-音素変換を扱います。
CNTK Python API の解説が主眼ですが、(RNN の) Attention メカニズムについての解説記事としても参考になります。
書記素-音素変換は、入力シークエンスとして単語の文字群を取り、相当する音素を出力する翻訳タスクです。
換言すれば、システムは与えられた入力単語をどのように発音するかの明確な表現を生成することを目的とし、音声合成の基礎技術の一つにもなっています。
※ 書記素は (自然言語の) 筆記システムの最小のユニットで、音素は言語を構成する音のユニットです。
Sequence-to-Sequence の基礎から Attention モデルの基礎理論を説明した上で、CNTK Python API で Attention モデルを実装してトレーニングします。更に、対話的に入力シークエンスを音素に変換して評価し、attention のヒートマップへの可視化まで遂行します。
題材としては CMU Pronouncing Dictionary からの CMUDict データセットを使用します。これは北米英語のためのオープンソースのコンピュータ可読な発音辞書です。
詳細 : CNTK 2.2 Python API 解説 (5) – Seq2Seq Attention モデルによる、音声合成のための書記素-音素変換