(57)【特許請求の範囲】
【請求項１】
テキストから音声合成するための音声合成システムであって、
韻律情報をもつ音素片のデータを保持する音素片データベースと、
音声合成すべきテキストを入力する手段と、
韻律の変化量の統計モデルに基づき、少なくとも周波数傾き尤度コストを含む第１のコストを最小化するように、前記音素片データベースから、前記入力テキストに対応した音素片の列を決定する手段と、
前記決定された音素片の列に関して、韻律の変化量の統計モデルに基づき、少なくとも周波数傾き尤度コスト及び韻律修正コストを含む第２のコストを最小化するように韻律の修正量を決定する手段と、
前記決定した韻律の修正量を、前記決定された音素片の列に適用する手段とを有する、
音声合成システム。
【請求項２】
前記音素片の列中に、連続音素片が見出されることに応答して、所定の値より大きい傾き尤度をもつ該連続音素片の前記韻律修正コストに対して重みを乗算する手段を更に有する、請求項１の音声合成システム。
【請求項３】
前記音素片の列を決定するための前記第１のコストが、スペクトル連続性コスト、継続時間長誤差コスト、音量誤差コスト、絶対周波数尤度コスト、周波数傾き尤度コスト及び周波数線形近似誤差コストを含む、請求項１の音声合成システム。
【請求項４】
韻律の修正量を決定するための前記第２のコストが、絶対周波数尤度コスト、周波数傾き尤度コスト、周波数線形近似誤差コスト及び韻律修正コストを含む、請求項１の音声合成システム。
【請求項５】
前記統計モデルが、決定木と混合ガウス・モデルを利用する、請求項１の音声合成システム。
【請求項６】
テキストから音声合成するためのシステムであって、韻律情報をもつ音素片のデータを保持する音素片データベースを記憶するシステムに対して、
音声合成すべきテキストを入力するステップと、
韻律の変化量の統計モデルに基づき、少なくとも周波数傾き尤度コストを含む第１のコストを最小化するように、前記音素片データベースから、前記入力テキストに対応する音素片の列を決定するステップと、
前記決定された音素片の列に関して、韻律の変化量の統計モデルに基づき、少なくとも周波数傾き尤度コスト及び韻律修正コストを含む第２のコストを最小化するように韻律の修正量を決定するステップと、
前記決定した韻律の修正量を、前記決定された音素片の列に適用するステップとを実行させる、
コンピュータプログラム。
【請求項７】
連続音素片が見出されることに応答して、前記音素片の列中に、所定の値より大きい傾き尤度をもつ該連続音素片の前記韻律修正コストに対して重みを乗算するステップを更に有する、請求項６のコンピュータプログラム。
【請求項８】
前記音素片の列を決定するための前記第１のコストが、スペクトル連続性コスト、継続時間長誤差コスト、音量誤差コスト、絶対周波数尤度コスト、周波数傾き尤度コスト及び周波数線形近似誤差コストを含む、請求項６のコンピュータプログラム。
【請求項９】
韻律の修正量を決定するための前記第２のコストが、絶対周波数尤度コスト、周波数傾き尤度コスト、周波数線形近似誤差コスト及び韻律修正コストを含む、請求項６のコンピュータプログラム。
【請求項１０】
前記統計モデルが、決定木と混合ガウス・モデルを利用する、請求項６のコンピュータプログラム。
【請求項１１】
コンピュータ処理によって、テキストから音声合成するための音声合成方法であって、
音声合成すべきテキストを入力するステップと、
韻律の変化量の統計モデルに基づき、少なくとも周波数傾き尤度コストを含む第１のコストを最小化するように、韻律情報をもつ音素片データを含む音素片データベースから、前記入力テキストに対応する音素片の列を決定するステップと、
前記決定された音素片の列に関して、韻律の変化量の統計モデルに基づき、少なくとも周波数傾き尤度コスト及び韻律修正コストを含む第２のコストを最小化するように韻律の修正量を決定するステップと、
前記決定した韻律の修正量を、前記決定された音素片の列に適用するステップを有する、
音声合成方法。
【請求項１２】
連続音素片が見出されることに応答して、前記音素片の列中に、所定の値より大きい傾き尤度をもつ該連続音素片の韻律修正コストに対して重みを乗算するステップを更に有する、請求項１１の音声合成方法。
【請求項１３】
前記音素片の列を決定するための前記第１のコストが、スペクトル連続性コスト、継続時間長誤差コスト、音量誤差コスト、絶対周波数尤度コスト、周波数傾き尤度コスト及び周波数線形近似誤差コストを含む、請求項１１の音声合成方法。
【請求項１４】
韻律の修正量を決定するための前記第２のコストが、絶対周波数尤度コスト、周波数傾き尤度コスト、周波数線形近似誤差コスト及び韻律修正コストを含む、請求項１１の音声合成方法。
【請求項１５】
前記統計モデルが、決定木と混合ガウス・モデルを利用する、請求項１１の音声合成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、コンピュータ処理によって音声を合成するための音声合成技術に関し、特に高い音質の音声を合成するための技術に関するものである。
【背景技術】
【０００２】
音声合成では正確で自然なアクセントを持った音声を合成することが重要である。そこで、音声合成技術の一つとして、波形接続型音声合成技術が知られている。この技術は、韻律モデルで予測した目標韻律に近い韻律を持った音素片を、音素片データベースから選択して接続することで、合成音声を生成する。その第一の利点は、適切な音素片を選択できた箇所では、人間の声の録音と同等の高い音質と自然性を実現できることである。特に、話者の原音声において元々連続していた音素片（連続音素片）を、その接続順序のまま合成音声に使用できた箇所では、韻律の微調整（スムージング）が不要であるため、自然なアクセントをもつ最高の音質が実現する。
【０００３】
しかし、波形接続型音声合成は、正確で自然な韻律を常に合成できるとは限らない。それは、コスト最小化で選択された音素片を接続した結果として、韻律の一貫性が失われることがあるからである。特に日本語ではモーラ間の音高の関係がアクセントとして認識されるので、音素片が接続された結果として生じる韻律が、全体とし一貫していないと、合成された音声の自然さが損なわれてしまう。また、連続音素片を合成音声に使用すれば、必ず高い、アクセントなどの自然さが得られるわけでもない。それは、アクセントが文脈によって変化すること、たとえ同じアクセントでも文脈によって周波数としては異なること、連続音素片の外側の部分との一貫性が悪ければ全体として、アクセントの繋ぎなどの韻律が不自然になることなどが理由である。
【０００４】
特開２００５−２９２４３３は、音声合成すべき目標音声に対する韻律系列を、音声合成の合成単位である複数のセグメントそれぞれに対して取得し、同一の音声単位に対する複数の音声素片であって、かつ前記当該音声単位の韻律が互いに異なる複数の音声素片を融合して得られた融合音声素片と、当該融合音声素片の韻律を示す融合音声素片韻律情報とを対応付けて保持し、分割によって得られたセグメントの韻律を示すセグメント韻律情報と融合音声素片韻律情報との間の歪みの度合いを推定し、推定された歪みの度合いに基づいて、融合音声素片を選択し、各セグメントに対して選択された各融合音声素片を接続して合成音声を生成することを開示する。しかし、特開２００５−２９２４３３は、連続音素片を取り扱う技法について、示唆するものではない。
【０００５】
下記文献[1]は、波形接続型音声合成のための韻律モデルにおいて、基本周波数（F0）の絶対値と相対値に関する分布を学習して、尤度最大の音素片列を求めることを開示する。しかし、この文献の技術においても、音素片がなければ不自然な韻律が合成されてしまう。最尤のF0カーブを強制的に合成音声の韻律として使用することも可能であるが、それでは波形接続型音声合成ならではの自然性が損なわれてしまう。
【０００６】
一方、下記文献[2]は、連続音素片では決して不連続が生じないので、その箇所だけ、音素片韻律をそのまま使用することを開示する。この技術では、連続音素片以外では、音素片韻律をスムージングして使用する。
【特許文献１】特開２００５−２９２４３３
【非特許文献１】[1] Xijun Ma , Wei Zhang , Weibin Zhu , Qin Shi and Ling Jin, “PROBABILITY BASED PROSODY MODEL FOR UNIT SELECTION,” Proc. ICASSP, Montreal, 2004.
【非特許文献２】[2] E. Eide, A. Aaron, R. Bakis, P. Cohen, R. Donovan, W. Hamza, T. Mathes, M. Picheny, M. Polkosky, M. Smith, and M. Viswanathan, “Recent improvements to the IBM trainable speech synthesis system,” in Proc. of ICASSP, 2003, pp. I-708-I-711.
【発明の開示】
【発明が解決しようとする課題】
【０００７】
波形接続型音声合成では、その利点を活かして、音素片が大量にあるときは、アクセントが自然に繋がった高音質で合成する一方、そうでない場合でも正確なアクセントで合成できるのが望ましい。また別の言い方をすれば、収録した話者音声と内容が近い文章は高音質で合成する一方、そうでない文章でも正確なアクセントで合成できるのが望ましい。しかし、上記従来技術では、場合によって、自然な品質の音声を合成することが難しい。
【０００８】
従って、この発明の目的は、収録した話者音声と内容が近い文章は高音質で合成することを可能としつつ、収録した話者音声と内容が近くない文章に対しても、安定した品質の音声を合成することを可能とする音声合成技術を提供することにある。
【課題を解決するための手段】
【０００９】
本発明は、上記課題を解決するためになされたものであって、音素片探索と、韻律修正量の探索の、２パスの探索によって、正確性と高音質を両立する韻律を実現する。本発明の好適な実施例では、音素片選択と修正量探索の２パスの両方に、韻律の変化量（基本周波数の傾き）の統計モデルを用いて韻律の一貫性の評価を行って、正確なアクセントを確実にする。韻律修正量の探索では、修正韻律コストが最小となるような韻律修正量系列を探索する。これによって、なるべく小さい修正量で、韻律の絶対値や変化量の統計モデルに対する尤度をなるべく高くすることができるような修正量系列を探索する。連続音素片については同様に韻律の変化量の統計モデルで一貫性を保っているか評価を行って、正しい一貫性を持った連続音素片のみを優先的に扱う。優先的に扱うとは、第一に、その部分で微修正を行わないことで最高音質を実現する。さらに、その他の音素片がこの優先された連続音素片との関係において正しい一貫性を持つことを確実ならしめるように、修正量探索の際に優先連続音素片に特に重みをかけて他の音素片の韻律を修正する。基本周波数の一貫性は、基本周波数の傾きを統計モデルでモデル化し、このモデルに対する尤度を計算することで評価する。隣接モーラ内のある位置における基本周波数に対する差分ではなく、一定時間内の基本周波数を線形近似した傾きを用いることで、モーラ長によらない安定した数値の観測と、範囲内の基本周波数のすべてを考慮に入れた評価が可能になり、人が聴いて正確なアクセントの再現に寄与する。学習時の基本周波数の傾きの計算は、例えば、無声区間のピッチマークをまず線形補間で補ってから全体をスムージングして作った曲線を、好適には全モーラの３等分点から一定時間さかのぼった範囲で線形近似することで行う。
【発明の効果】
【００１０】
この発明によれば、連続音素片として、元の音素片が揃っている場合には、そのことを検出することによって、それを有利に利用して高い音質の合成音を達成するとともに、音素片が必ずしも揃っていなくても、韻律の変化量の統計モデルを用いて韻律の一貫性の評価を行って、正確なアクセントを確実にし、以って高い品質の音声を合成できる、という効果が得られる。
【発明を実施するための最良の形態】
【００１１】
以下、本発明の実施例を図面に基づいて詳細に説明する。以下、特に注記しない限り、以下の説明の全体を通じて、同じ要素には同じ番号を付すものとする。
【００１２】
図１は、本発明の前提となる、音声処理の全体像を示す概要ブロック図である。図１において、左側は、音声合成に必要な音素片ＤＢ、韻律モデルなどの必要な情報を用意する学習処理ステップを示す処理ブロック図である。また、右側は、音声合成処理ステップを示す処理ブロック図である。
【００１３】
学習処理において、収録スクリプト１０２は、様々な分野、状況に応じた、少なくとも数百の文をテキストファイルの形式で保持する。
【００１４】
収録スクリプト１０２は一方で、好適には男性・女性を含む複数人のナレーターに読み上げられ、その読み上げらた音声は、マイク（図示しない）によって、音声アナログ信号に変換され、さらにＡ／Ｄ変換されて、好適にはＰＣＭなどの形式でコンピュータのハードディスクに保存される。これが、収録処理１０４である。このようにハードディスクに保存されたディジタル音声信号が、音声コーパス１０６である。音声コーパス１０６は、収録した音声の分類などの分析データを含んでいてもよい。
【００１５】
収録スクリプト１０２は他方で、言語処理部１０８において、収録スクリプトの言語特有の処理を行われる。すなわち、入力されたテキストの、読み（音素）、アクセント、品詞を求める処理が行われる。日本語の場合は分かち書きされていないので、ここで、文を単語に分割する必要もある。このために、構文解析技法が必要に応じて用いられる。
【００１６】
テキスト解析結果ブロック１１０では、分割された個々の単語に対して、読みとアクセントを付与する処理が行われる。このことは、単語毎に読みとアクセントを関連付けられた、予め用意された辞書を参照して行われる。
【００１７】
波形編集合成部ビルド処理ブロック１１２では、音声を、音素片に分割すること（音素片のアライメントを求める）が行われる。
【００１８】
波形編集合成部１１４では、波形編集合成部ビルド処理ブロック１１２で作成された音素片データに基づき、好適には各モーラの３等分点において基本周波数を観測し、それを予測する決定木を構築する。さらに、決定木の各ノードに対して、混合ガウス・モデル（Gaussian Mixture Model = ＧＭＭ）で分布をモデル化する。すなわち、決定木により、入力特徴量をクラスタリングし、各クラスタに、混合ガウス・モデルによって決定される確率分布を対応づける。こうして構築された音素片ＤＢ１１６と、韻律モデル１１８を、コンピュータのハードディスクなどに保持する。このように用意された音素片ＤＢ１１６と、韻律モデル１１８のデータは、別の音声合成システムにコピーして、実際の音声合成処理に利用することができる。
【００１９】
尚、上記の、各モーラの３等分点において基本周波数を観測する処理は、日本語には相応しいが、英語、中国語などのその他の言語だと、音節その他の要素を考慮して観測点を決定する方が相応しいことがあることに留意されたい。
【００２０】
次に、図１において、音声合成処理について説明する。音声合成処理は、基本的に、ＴＴＳ(text to speech)で、テキストの形式で提供された文章を読み上げるものである。このような入力テキスト１２０は、典型的には、コンピュータのアプリケーション・プログラムによって生成される。例えば、一般的なコンピュータのアプリケーション・プログラムは、ユーザーに対して、ポップアップ・ウインドウの形式でメッセージを表示するが、このメッセージを入力テキストとすることができる。カーナビの場合、例えば、「２００ｍ先の交差点で地点で右折」のような指示を、読み上げテキストとする。
【００２１】
次に、言語処理部１２２は、このような入力テキストに対して、言語処理部１０８に関して上述したのと同様に、入力されたテキストの、読み（音素）、アクセント、品詞を求める処理を行う。入力テキストが日本語の場合、ここで、文を単語に分割する処理も行う。
【００２２】
次に、テキスト解析結果ブロック１２４では、言語処理部１２２の処理出力に対して、テキスト解析結果ブロック１１０と同様に、分割された個々の単語に対して、読みとアクセントを付与する処理が行われる。
【００２３】
波形編集合成部合成処理ブロック１２６では、典型的には、順次下記のような処理が行われる。
・韻律モデル１１８を用いて韻律修正量を求める。
・音素片ＤＢ１１６から音素片の候補を読み込む。
・音素片系列を求める。
・適宜、韻律修正を適用する。
・音素片を接続して合成音声を作成する。
【００２４】
こうして、合成音声１２８が得られる。合成音声１２８の信号は、Ｄ／Ａ変換によって、アナログ信号に変換され、スピーカから出力される。
【００２５】
図２は、本発明の音声合成システムの基本構成を示すブロック図である。この実施例では、図２の構成を、カーナビ・システムに適用する場合を想定して説明するが、本発明はこれには限定されず、自動販売機などの任意の組み込みデバイス、通常のパーソナル・コンピュータなど、音声合成機能を有する、任意の情報処理装置に適用可能であることを理解されたい。
【００２６】
さて、図２において、バス２０２には、ＣＰＵ２０４、主記憶（ＲＡＭ）２０６、ハードディスク・ドライブ（ＨＤＤ）２０８、ＤＶＤドライブ２１０、キーボード２１２、ディスプレイ２１４、及びＤ／Ａ変換器２１６が接続されている。Ｄ／Ａ変換器２１６には、スピーカ２１８が接続され、本発明の音声合成システムによって合成された音声は、スピーカ２１８から出力されることになる。また、図示しないが、カーナビ装置には、ＧＰＳ機能とＧＰＳアンテナが装備されている。
【００２７】
さらに図２において、ＣＰＵ２０４は、ＴＲＯＮ、Ｗｉｎｄｏｗｓ（Ｒ）  Ａｕｔｏｍｏｔｉｖｅ、Ｌｉｎｕｘ（Ｒ）などのオペレーティング・システムを実行することができる３２ビットまたは６４ビット・アーキテクチャをもつものである。
【００２８】
ＨＤＤ２０８には、図１の学習処理によって作成された音素片ＤＢ１１６のデータと、韻律モデル１１８のデータが保存されている。ＨＤＤ２０８にはさらに、オペレーティング・システム、ＧＰＳ機能によって検出した場所に関連する情報やその他の音声合成すべきテキスト・データを生成するためのプログラムや、本発明に従う音声合成処理プログラムが格納されている。なお、これらのプログラムは、ＥＥＰＲＯＭ（図示しない）に格納され、パワーオン時に、ＥＥＰＲＯＭから主記憶２０６にロードするようにしてもよい。
【００２９】
ＤＶＤドライブ２１０は、ナビゲーション用の地図情報をもつＤＶＤを装着するためのものである。ＤＶＤ自体に、音声合成機能で読み上げるためのテキスト・ファイルを格納してもよい。キーボード２１２は、実質的に、カーナビの前面に設けられた操作用のボタンである。
【００３０】
ディスプレイ２１４は、好適には、液晶ディスプレイであり、ＧＰＳ機能に連動して、ナビゲーション用の地図を表示するためのものである。ディスプレイ２１４はまた、キーボード２１２によって操作される、操作パネルや操作メニューを適宜表示する。
【００３１】
Ｄ／Ａ変換器２１６は、本発明の音声合成システムによって合成された音声のディジタル信号を、スピーカ２１８を駆動するためのアナログ信号に変換するためのものである。
【００３２】
図３は、本発明に係る音素片探索と、韻律修正量探索の処理を示すフローチャートである。この処理のための処理ジュールは、図１の構成では、波形編集合成部合成処理ブロック１２６に含まれる。また、図２では、ハードディスク２０８に格納され、実行可能に、ＲＡＭ２０６にロードされる。図３のフローチャートを説明する前に、処理時に扱う複数種類の韻律について説明する。
【００３３】
１．音素片韻律
これは、話者の原音声が元々持っていた韻律である。
２．目標韻律
従来手法のランタイムに、入力文に対して、韻律モデルによって予測した韻律である。一般に、従来手法は、この値に近い音素片韻律を持った音素片を選択する。ただし、本発明の手法は、基本的には、目標韻律を使用しない。すなわち、目標韻律に近いことで音素片を選択するのではなく、話者の韻律の特徴を確率的に表現したモデルに対して尤度が高い音素片韻律を持った音素片を選択する。
３．最終韻律
最終的に合成音声に持たせる韻律である。これに使う値には複数の選択肢がある。
３−１．音素片韻律をそのまま使用する
この場合、音素片を修正せずに使用するので、最高の音質を実現できる可能性がある。しかし、隣接する音素片との間に韻律の不連続が生じ、逆に音質が悪化することがある。連続音素片では決して不連続が生じないので、その箇所だけこの方法を用いる、ということが、従来手法で採られている。
３−２．音素片韻律をスムージングして使用する
この場合、近傍の音素片で音素片韻律のスムージングを行い最終韻律とする。すると、アクセント等の不連続がなくなり滑らかに聴こえるようになる。連続音素片以外では、従来手法は、通常この方法を使用する。ただし、その場合、目標韻律に近い音素片韻律を持った音素片が見つからなかった場合には、不正確なアクセントになってしまうことがある。
３−３．目標韻律を使用する
これは、目標韻律を強制的に使用するものである。上述のように、目標韻律は、入力文に対して、韻律モデルによって予測することによって決定される。この方法を使用すると、目標韻律に近い音素片韻律を持った音素片が見つからない箇所では、音素片に対して大きな修正をしなければならず、その箇所では音質が著しく劣化する。これも従来技術の一つであるが、波形接続型音声合成の高音質という利点が損なわれるため、望ましくない方法である。
３−４．部分的に修正を行って音素片韻律を使用する
これは、基本的に音素片韻律を使用するが、尤度を評価して部分部分で異なる最終韻律の計算を用いる。連続音素片で尤度が十分高い部分（優先連続音素片）については３−１．と同様に音素片韻律をそのまま使用する技法である。尤度が十分高い部分に、音素片韻律をそのまま使用すると、最高の音質が得られる。連続音素片で尤度が低い部分については、連続音素片ではないものとして次の処理に従う。すなわち、連続音素片以外については、尤度が相対的に高い部分については３−２．と同様に音素片韻律をスムージングして使用する。すると、音質はかなり高い。尤度が低い部分については、尤度が高くなるように、最小の修正量で韻律の修正を行って、修正した韻律を最終韻律として使用する。音質は、上記の場合ほどは、良くならない。これは、３−３．の場合に近いと言える。
【００３４】
さて、図３のフローチャートに戻って、ステップ３０２では、決定木によるＧＭＭ（混合ガウス・モデル）の決定処理が行われる。ここで、決定木とは、例えば、図４に示すようなもので、各ノードには質問事項が関連付けられており、入力特徴量に従って、YesまたはNoの判断に従って木を辿ることにより、終端に達する。図４は、音節の文内の位置に関する質問に基づく決定木の例である。このように、ＧＭＭの決定処理には、決定木が使用され、その終端には、ＧＭＭのＩＤ番号が関連付けられている。そのＩＤ番号を用いてテーブルを調べることでＧＭＭパラメータが得られる。ＧＭＭ、すなわち混合ガウス分布とは、重みの付いた複数の正規分布の重ね合わせであり、ＧＭＭパラメータは、平均、分散、重み係数からなる。
【００３５】
本発明によれば、決定木への入力特徴量は、品詞、音素の種類、音節の文内での位置などである。一方、出力パラメータとは、周波数傾きや絶対周波数のＧＭＭパラメータである。このような、決定木とＧＭＭの組み合わせで行いたいことは、入力特徴量に基づいた、出力パラメータの予測である。この関連技術自体は、従来から知られているので、これ以上の詳細な説明は省略する。例えば、上記文献[1]、本出願人に係る、特願２００６−３２０８９０号出願明細書などを参照されたい。
【００３６】
ステップ３０４で、ＧＭＭパラメータが得られると、次にステップ３０６で、そのＧＭＭパラメータを用いて、音素片の探索が行われる。音素片ＤＢ１１６には、音素片の一覧と、それぞれの音素片の実際の音声が含まれている。さらに、音素片ＤＢ１１６において、各音素片には、始端周波数、終端周波数、音量、長さ、始端・終端での音色（ケプストラムベクトル）などの情報が関連つけられている。ステップ３０６では、これらの情報を使って、最もコストが低い音素片の系列を得る処理が行われる。
【００３７】
その際に明確化する必要があるのは、どのようなコストを使用するかである。
典型的な従来技術では、次のコストの和を最小化するような音素片列を選択していた。この従来技術のコストは、基本的には、上記文献[2]の開示に基づく。
1. スペクトル連続性コスト
これは、音素片を選択するときに音色（スペクトル）が滑らかに接続されるように、スペクトルの差分に対して与えるコスト（ペナルティー）である。
2. 周波数連続性コスト
音素片を選択するときに基本周波数が滑らかに接続されるように、基本周波数の差分に対して与えるコストである。
3. 継続時間長誤差コスト
これは、音素片を選択するときに、音素片の継続時間長（長さ）が、韻律モデルで予測した継続時間長に近い継続時間長を持つように、目標継続時間長と音素片の継続時間長の差分に対して与えるコストである。
4. 音量誤差コスト
これは、目標の音量と音素片の音量の差分に対して与えるコストである。
5. 周波数誤差コスト
これは、目標周波数（目標韻律）を先に求め、音素片の周波数（音素片韻律）の目標周波数からの誤差に対して与えるコストである。
【００３８】
本発明においては、このような従来技術のコストを見直し、これらのコストのうち、周波数誤差コストと周波数連続性コストを使わないことにした。その代わりに、絶対周波数尤度コスト (Cla)と、周波数傾き尤度コスト (Cld)と、周波数線形近似誤差コスト (Cf)を導入した。
【００３９】
絶対周波数尤度コスト (Cla)に関しては、学習時には、日本語の場合には好適には、各モーラの３等分点において基本周波数を観測し、それを予測する決定木が構築される。さらに決定木の各ノードに対して、混合ガウス・モデル （ＧＭＭ）で分布がモデル化される。こうして、ランタイムにはこの決定木とＧＭＭを使用して、現在考慮中の音素片の音素片韻律の尤度を計算する。その対数尤度を正負反転させて、外部から与える重み係数をかけて、コストとする。ここで、目標周波数を用いるのではなく、周波数尤度を用いるのは、日本語のアクセントの実現においては、近傍と一貫性があればひとつの周波数に近いことは必ずしも必要ではないからである。そのためここでは音素片の選択肢を増やすことを目的としてＧＭＭが採用されている。
【００４０】
周波数傾き尤度コスト (Cld)に関しては、学習時には、好適には、各モーラの３等分点において基本周波数の傾きを観測し、それを予測する決定木が構築される。さらに決定木の各ノードに対してＧＭＭで分布がモデル化される。ランタイムにはこの決定木とＧＭＭを使用して、考慮中の音素片列の傾きの尤度を計算する。そうして、その対数尤度を正負反転させて、外部から与える重み係数をかけて、コストとする。学習時に傾きを計算するのは考慮中の位置から、例えば0.15秒さかのぼる範囲に対してである。ランタイムにおいても考慮中の音素片から、同様に0.15秒さかのぼる範囲の音素片の傾きを計算し、尤度を計算する対象とする。傾きの計算は最小自乗誤差を持つ近似直線を求めることで行う。
【００４１】
周波数線形近似誤差コスト (Cf)に関しては、周波数傾き尤度を計算する際には、上述した0.15秒の範囲の対数周波数の変化を直線で近似するが、その近似誤差に対して、外部から与える重み係数をかけて、コストとする。このコストを用いる理由は次の２つである。(1)近似誤差が大きすぎる場合には周波数傾きコストの計算に意味がなくなる。(2)接続した音素片の韻律は、その0.15秒という長くない期間の間には1次で近似可能な程度に滑らかに変化しているべきである、ということである。
【００４２】
纏めると、本発明のこの実施例では、音素片の系列の決定は、スペクトル連続性コスト、継続時間長誤差コスト、音量誤差コスト、絶対周波数尤度コスト 、周波数傾き尤度コスト及び周波数線形近似誤差コストが最小になるように、ビーム探索によって行われる。なお、ビーム探索とは、最良優先探索で、段数を限定することによって、探索空間を合理化するものである。このようにして、ステップ３０８では、音素片の列が決定される。
【００４３】
ところで、この実施例では、スペクトル連続性コスト、継続時間長誤差コスト、音量誤差コスト、絶対周波数尤度コスト 、周波数傾き尤度コスト及び周波数線形近似誤差コストは、それぞれ、異なる決定木を使う。しかし、例えば、音量、周波数、継続時間長を組み合わせたベクトルとして、１つの決定木で、そのベクトルの値を同時に推定するようにしてもよい。
【００４４】
ステップ３１０での尤度評価は、選択した音素片列の中で、外部から与えた閾値Tcを越える個数だけ連続した音素片を選択している連続音素片部分において、その部分の周波数傾き尤度コストCldと、外部から与えた別の閾値Tdの比較を行う。閾値を上回った箇所のみ以後の処理で、ステップ３１２で示すように、「優先連続音素片」として扱う。優先連続音素片の取り扱いについては、図５のフローチャートに関連して、後で説明する。
【００４５】
次に、ステップ３１４での韻律修正量探索について説明する。このステップでは、音素片韻律列に対する適切な修正量列をViterbiサーチで求める。すなわち、この場合、Viterbiサーチによって、動的計画法の技法により、音素片韻律列の尤度推定が最大になるように、韻律修正量の列を求める。ここでも、ステップ３０４で得られたＧＭＭパラメータが利用される。尚、Viterbiサーチの代わりに、ここでもビーム探索を用いて、韻律修正量の列を求めるようにしてもよい。一つの修正量は、あらかじめ定めた下限から上限までの範囲で離散的に決めた候補の中から選択する（例：-100Hzから10Hz刻みで+100Hzまで）。修正音素片韻律は、以下のコストの和である修正韻律コストで評価する。
1. 絶対周波数尤度コスト (Cla)
2. 周波数傾き尤度コスト (Cld)
3. 周波数線形近似誤差コスト (Cf)
4. 韻律修正コスト (Cm)
【００４６】
ここで、絶対周波数尤度コスト、周波数傾き尤度コスト及び周波数線形近似誤差コストという用語は、上記音素片探索との場合と同じ用語であるが、決定木としては、それぞれ、修正韻律コスト計算のために、音素片探索用コストの計算の場合とは別の決定木を用いる。但し、ただしそれらの決定木に使用する入力変数は、既存の周波数誤差コストの決定木に使用しているものと同じものを使う。なお、ここで、絶対周波数尤度コストと周波数傾き尤度コストを組み合わせた２次元ベクトルを１つの決定木で同時推定することも可能である。
【００４７】
韻律修正コストとは、音素片のF0を修正する修正量に対するコスト（ペナルティー）である。これをペナルティーと呼ぶのは、修正量が大きければ大きいほど音質が悪化してしまうからである。韻律修正コストは、韻律の修正量に対して、外部から与えた重みを乗じることで計算する。ただし優先連続音素片については、また別に外部から与えた大きな重みを乗じる、あるいはコストを極端に大きい定数にすることによって、修正量が0以外になることを禁じる。こうすることで、優先連続音素片の近傍では、優先連続音素片の韻律に一貫するような修正量が選択される。こうして、ステップ３１６で、音素片毎の韻律修正量が決定される。
【００４８】
なお、この実施例では、韻律修正コスト (Cm)の計算には、決定木は使っていない。その理由は、韻律修正はどの音素に対しても同様に、少量であるべきであるという考え方に基づく。しかし、韻律修正をしても音質が劣化しない音素と、韻律修正をすると著しく音質が劣化する音素があると考えられ、それらに対して異なる韻律修正を行うことが望ましい場合には、韻律修正コストに対しても決定木を使うことが妥当となる。
【００４９】
ステップ３１８では、ステップ３１６で得られた韻律修正量が各音素片に加えられて、スムージングが行われる。こうして、ステップ３２０で、最終的に合成音声に持たせる韻律が決定される。
【００５０】
図５は、図３の修正量探索３１４で使用される、修正量コストの重み決定のための処理のフローチャートである。図５において、ステップ５０２では、音素片を１つずつ調べていく。そうして、ステップ５０４では、連続音素片数が、予定の閾値Tcより大きいかどうかが判断される。連続音素片とは、話者の原音声において元々連続していた音素片を、その接続順序のまま合成音声に使用できるような音素片の列のことである。もし、連続音素片数が、予定の閾値Tcより小さいなら、直ちに、通常音素片５１０である、と判断される。
【００５１】
ステップ５０４で、連続音素片数が、予定の閾値Tcより大きいなら、ステップ５０６で、一応、連続音素片であると見なす。なお、Tcの値は、１つの例では、10である。しかし、これだけでその音素片列を特別扱いする訳ではなく、次に、ステップ５０８で、連続音素片の部分の傾き尤度Ldが、所定の閾値Tdより大きいかどうかが判断され、そうでなければ、ステップ５１０に行ってやはり通常音素片と見なし、ステップ５０８で傾きの尤度Ldが、所定の閾値Tdより大きいと判断されたとき初めて、その音素片列は、優先連続音素片と見なされる。なお、周波数傾き尤度コスト (Cld)は、傾きの尤度Ldの対数に、負の重みをつけたものである。このように優先連続音素片と見なされることは、図３では、ステップ３１２に示されている場合を示す。
【００５２】
優先連続音素片と見なされると、韻律修正量探索５１４で、ステップ５１６に示されるように、大きい重みが使用される。優先連続音素片に大きい重みが使用されることによって、優先連続音素片には、ほとんど、あるいは全く韻律修正が適用されないことになる。
【００５３】
一方、通常音素片であると見なされると、韻律修正量探索５１４で、ステップ５１８に示されるように、通常の重みが使用される。
【００５４】
この実施例では、通常の音素片の場合に1.0または2.0の重みを、優先連続音素片の場合にはその2倍〜10倍の重みを使用する。
【００５５】
ところで、この実施例では、基本周波数と周波数傾きの観測点として、上述のように、各モーラの３等分点を選んでいる。これは、ある程度、日本語特有の配慮であることを理解されたい。というのは、日本語ではモーラが単位であるが、別のある言語では、音節 (syllable)が単位になることがあり、そのまま使用すると各音節の３等分点になるが、それだとうまくいかない場合がある。
【００５６】
例えば、英語の場合、音節は、子音（Onset）＋母音（Nucleus = Vowel)＋子音（Coda）という構造をしている。このとき、OnsetやCodaはないこともある。それで、Codaに/s/や/t/といった無声子音があるときに音節の３等分点に観測点を置くと、３つめの点は無声子音であるCodaの後ろ側に来ることになる。しかし実際には無声子音には基本周波数は本来存在しないので、有意義でないことがありえる。さらに、Codaに観測点が来てしまう分、重要な母音の基本周波数をモデル化するための観測点が減ってしまうこともありえる。
【００５７】
一方、中国語の場合、Codaは有声子音だけなので英語と同じ問題はおきない。しかし中国語では四声という基本周波数の形状が非常に重要であるが、これは母音のみにおいて重要な意味を持つ。中国語においては、ほとんどの子音は無声子音あるいは破裂音であり基本周波数はないのでその部分でのモデル化は不必要である。また、中国語の基本周波数の起伏は非常に激しいので、３箇所では傾きのモデルがうまくつくれない。
【００５８】
日本語だと、Codaは存在せず、また、/m/, /n/, /r/, /w/, /y/など基本周波数がきちんとある有声子音がいくつもあるので、各モーラの３等分点に観測点を置く方法が、有効である、という次第である。
【００５９】
このように、言語の音声的特徴によって、上記した絶対周波数尤度コスト (Cla)と、周波数傾き尤度コスト (Cld)を計算するための、観測点の位置や個数を適宜変える必要があることを理解されたい。
【００６０】
図６は、本発明に従って、音素片韻律を修正する様子を示す図である。図６で、縦は周波数軸、横は時間軸である。グラフ６０２は、図３のフローチャートのステップ３０６の音素片探索によって決定された音素片を接続した状態の図であり、複数の縦線は、音素片の境界を示す。この時点では、もともとの音素片がもっていた韻律がそのまま示されている。
【００６１】
グラフ６０４は、図３のフローチャートのステップ３１４の韻律修正量探索で決定された、各音素片毎の韻律修正量を示すものである。また、グラフ６０６は、修正量６０４を適用した結果の修正音素片韻律を示す図である。
【００６２】
図７は、優先連続音素片韻律を含む場合の処理を示す図である。図７のグラフ７０２は、修正前の音素片韻律を示す。なお、図７で、修正前の音素片を破線で示し、修正後の音素片を実線で示す。特に、この音素片列は、連続音素片７０５を含む。それが連続音素片であることは、繋ぎ目で韻律の段差がないことから分かる。しかし、図５のフローチャートで示したように、連続音素片が即、優先連続音素片と見なされる訳ではなく、その連続音素片がもつ傾きの尤度Ldが、ある閾値Tdより大きくないと、優先連続音素片とは見なされない。結果として、連続音素片が優先連続音素片と見なされない場合は、連続音素片は、通常音素片として扱われるので、グラフ７０４に示すように、連続音素片７０５にも修正が施されて、７０５'となる。
【００６３】
一方、連続音素片が優先連続音素片と見なされた場合は、図５に示したように、その優先連続音素片の韻律修正量探索に大きい重みが付けられるので、グラフ７０６の波形７０７の箇所で示すように示すように、連続音素片には実質的に、韻律修正量が適用されない。但し、全体として傾きの尤度を最大化するように韻律修正量が適用されなくてはならないので、グラフ７０６では、優先連続音素片以外の箇所で、グラフ７０４よりも大きい韻律修正量が適用されていることが見て取れる。
【００６４】
さて、本発明の有効性を検証するために合成音声のアクセントの正確さの主観評価を行った。評価対象は本発明のほか、従来手法である「音素片韻律を使用」、従来技術のひとつである「目標韻律を使用」の３つで行った。評価に使ったサンプルはそれぞれ７５文（約２００呼気段落）の合成音声で、被験者は３人である。その結果、下表のアクセント精度のところに示すように著しい改善が見られた。また音質について客観的評価の結果を同じ表の右端に示す。この数値は音素片の韻律修正量を2乗平均平方根（Root Mean Square）によって示したものであり、値が大きいほど大きな韻律修正で音質が悪化していると考えられる。実験の結果、音素片韻律を使用する場合に比べれば韻律修正量がやや増加してしまっているが、目標韻律を使用する場合に比べて10Hz以上も修正量が小さく、高い音質で高いアクセント精度を実現していることが実証された。
【表１】
0005238205.tif 000002
【００６５】
次に本発明の構成要素の有効性を検証するために同様のアクセント精度主観評価を、異なる比較対象に対して行った。比較対象は本発明のほか、本発明の韻律修正を行わない場合と、本発明のTdを極めて小さい値にして連続音素片をすべて優先連続音素片として扱う場合の３つである。評価に使ったサンプルはそれぞれ７５文（約２００呼気段落）の合成音声で、被験者は１人である。その結果、以下のように韻律修正もTdもアクセント精度の向上に貢献していることが実証された。
【表２】
0005238205.tif 000003
【００６６】
最後に、本発明の基本周波数傾きを使ったモデルの、基本周波数差分を使ったモデル [1]に対する優位性を検証するために、両者を、韻律修正なしの同条件のもとで比較した。この評価は上の評価と同時に行ったので被験者数やサンプル数は上と等しい。その結果、以下のように本発明の傾きモデルの方がアクセント精度の高いことが実証された。
【表３】
0005238205.tif 000004
【００６７】
なお、上記実施例では、韻律修正量として、周波数を例として記述したが、継続時間長についても同様の方法を適用することができる。その場合、音素片探索のための１パス目は周波数の場合と共有し、修正量探索のための２パス目は、ピッチとは別に継続時間長だけについての修正量探索を行うことになる。
【００６８】
また、上記実施例では、統計モデルとして、ＧＭＭと決定木の組み合わせを用いたが、決定木の代わりに、数量化Ｉ類による重回帰分析を適用することも可能である。
【図面の簡単な説明】
【００６９】
【図１】本発明の前提となる学習処理と、音声合成処理全体を示す概要ブロック図である。
【図２】本発明を実施するためのハードウェアのブロック図である。
【図３】本発明の主要な処理のフローチャートの図である。
【図４】決定木の例を示す図である。
【図５】優先連続音素片を決定するための処理のフローチャートの図である。
【図６】音素片に韻律修正量を適用する様子を示す図である。
【図７】連続音素片が、優先連続音素片である場合と、そうでない場合での、処理の違いを示す図である。
【図１】
0005238205.tif 000005
【図２】
0005238205.tif 000006
【図３】
0005238205.tif 000007
【図４】
0005238205.tif 000008
【図５】
0005238205.tif 000009
【図６】
0005238205.tif 000010
【図７】
0005238205.tif 000011