(57)【要約】【課題】従来の波形接続型の音声合成装置において、処理が高速にできなかった。【解決手段】波形接続型の音声合成装置であり、閉じた音響空間に関する事前知識により、接続コストの上界値をもとめておくことにより、接続コストの上界値を利用して、ビタビサーチにおける局所最大化処理を、結果を変えることなく途中で打ち切ることにより高速化する第１の高速化法、接続コストの上界値を利用して、ビタビビームサーチにおけるビーム幅までの仮説を生成する処理を、結果を変えることなく途中で打ち切ることにより高速化する第２の高速化法の２つの高速化法を採用することにより、処理を高速化できる。【選択図】図１
2009237422.tif 000002
【特許請求の範囲】
【請求項１】
音の要素である音要素と当該音要素の１以上の特徴量を示すスペクトル特徴量情報と当該音情報を示す波形の情報である波形情報とを有する音声合成単位情報を複数格納している音声合成単位情報格納部と、
２つの音要素の接続の適切さの度合いを示す接続スコアの最大値または当該最大値より大きい値である接続スコアの値である上界値を、２つの音要素ごとに格納している上界値格納部と、
テキストを受け付けるテキスト受付部と、
前記テキスト受付部が受け付けたテキストを区切り、当該テキストに対応する繋がりを有する２以上の音要素を取得し、当該２以上の音要素ごとに、当該各音要素に対応する２以上のターゲットであり、音の要素である音要素と音要素の長さを示す継続時間長情報と音要素の音の高さを示す音高情報と音要素の１以上のスペクトルの概形に関する特徴を表すスペクトル特徴量情報とを有する２以上のターゲットの繋がりであるターゲット系列を取得するテキスト処理部と、
前記テキスト処理部が取得した２以上のターゲットごとに、当該各ターゲットに含まれる音要素と同一の音要素を含む１以上の音声合成単位情報の全部または一部を、前記音声合成単位情報格納部から取得する音声合成単位情報取得部と、
前記ターゲットごとに、前記音声合成単位情報取得部が取得した音声合成単位情報の全部または一部と前記テキスト処理部が取得したターゲットの全部または一部を用いて、音声合成単位情報とターゲットとの類似の度合いを示すターゲットスコアを算出するターゲットスコア算出部と、
前記音声合成単位情報取得部が取得した２以上の音声合成単位情報の全部または一部を用いて、２つの音声合成単位情報の接続の適切さの度合いを示す接続スコアを、音要素の接続ごとに算出する接続スコア算出部と、
前記テキスト処理部が取得した繋がりを有する２以上の音要素の音要素ごとに、最初の音要素から順に、音要素に対応する１以上の音声合成単位情報のうちの、各音声合成単位情報が選択された場合の総合的なスコアである第二総合スコアを、前記ターゲットスコア算出部が算出したターゲットスコアと、前記接続スコア算出部が算出した接続スコアを用いて算出し、前記第二総合スコアが最大になる最終の音要素に対応する音声合成単位情報、および当該最終の音要素に対応する音声合成単位情報が選択されるまでの最大の第二総合スコアを構成するためのすべての音声合成単位情報を決定し、当該最初の音要素に対応する音声合成単位情報から最後の音要素に対応する音声合成単位情報に含まれる２以上の波形情報を取得する単位選択部と、
前記単位選択部が取得した２以上の波形情報を、前記テキスト受付部が受け付けたテキストに対応する２以上の音要素の順に出力する音声出力部とを具備する音声合成装置であって、
前記単位選択部は、
（ｉ−１）番目の音要素とｉ番目の音要素との接続スコアの最大値または当該最大値より大きい値である上界値を、前記上界値格納部から取得し、
ｉ番目の音要素に到着するまでの第一総合スコアを算出する場合に、（ｉ−１）番目の音要素に到着するまでの第二総合スコアを降順にソートし、
（ｉ−１）番目の音要素に到着するまでの第二総合スコアの大きい音声合成単位情報から順に、ｉ番目の音要素に対応する音声合成単位情報との接続スコアを、前記接続スコア算出部に算出させて、取得し、
当該接続スコアと（ｉ−１）番目の音要素に到着するまでの第二総合スコアを用いて、次の総合的なスコアである第一総合スコアを算出し、今までに算出した第一総合スコアの最大値を記憶し、
次に大きな（ｉ−１）番目の音要素に到着するまでの第二総合スコアに対応する音声合成単位情報を処理する場合に、当該第二総合スコアと前記取得した上界値を用いて算出した上限のスコアが、前記今までに算出した第一総合スコアの最大値より大きくないか否かを判断し、
前記算出した上限のスコアが、前記今までに算出した第一総合スコアの最大値より大きくないと判断した以降の、（ｉ−１）番目の音要素に到着するまでの第二総合スコアの小さい音声合成単位情報に対する処理は行わない音声合成装置。
【請求項２】
音の要素である音要素と当該音要素の１以上の特徴量を示すスペクトル特徴量情報と当該音情報を示す波形の情報である波形情報とを有する音声合成単位情報を複数格納している音声合成単位情報格納部と、
２つの音要素の接続の適切さの度合いを示す接続スコアの最大値または当該最大値より大きい値である上界値を、２つの音要素ごとに格納している上界値格納部と、
テキストを受け付けるテキスト受付部と、
前記テキスト受付部が受け付けたテキストを区切り、当該テキストに対応する繋がりを有する２以上の音要素を取得し、当該２以上の音要素ごとに、当該各音要素に対応する２以上のターゲットであり、音の要素である音要素と音要素の長さを示す継続時間長情報と音要素の音の高さを示す音高情報と音要素の１以上のスペクトルの概形に関する特徴を表すスペクトル特徴量情報とを有する２以上のターゲットの繋がりであるターゲット系列を取得するテキスト処理部と、
前記テキスト処理部が取得した２以上のターゲットごとに、当該各ターゲットに含まれる音要素と同一の音要素を含む１以上の音声合成単位情報の全部または一部を、前記音声合成単位情報格納部から取得する音声合成単位情報取得部と、
前記ターゲットごとに、前記音声合成単位情報取得部が取得した音声合成単位情報の全部または一部と前記テキスト処理部が取得したターゲットの全部または一部を用いて、音声合成単位情報とターゲットとの類似の度合いを示すターゲットスコアを算出するターゲットスコア算出部と、
前記音声合成単位情報取得部が取得した２以上の音声合成単位情報の全部または一部を用いて、２つの音声合成単位情報の接続の適切さの度合いを示す接続スコアを、音要素の接続ごとに算出する接続スコア算出部と、
前記テキスト処理部が取得した繋がりを有する２以上の音要素の音要素ごとに、最初の音要素から順に、音要素に対応する１以上の音声合成単位情報のうちの、各音声合成単位情報が選択された場合の総合的なスコアである第二総合スコアを、前記ターゲットスコア算出部が算出したターゲットスコアと、前記接続スコア算出部が算出した接続スコアを用いて算出し、前記第二総合スコアが最大になる最終の音要素に対応する音声合成単位情報、および当該最終の音要素に対応する音声合成単位情報が選択されるまでの最大の第二総合スコアを構成するためのすべての音声合成単位情報を決定し、当該最初の音要素に対応する音声合成単位情報から最後の音要素に対応する音声合成単位情報に含まれる２以上の波形情報を取得する単位選択部と、
前記単位選択部が取得した２以上の波形情報を、前記テキスト受付部が受け付けたテキストに対応する２以上の音要素の順に出力する音声出力部とを具備する音声合成装置であって、
前記単位選択部は、
ｉ番目の音要素に到着するまでの音声合成単位情報の候補を、第二総合スコアが大きい順にθ個までに絞って取得するものであり、
（ｉ−１）番目の音要素とｉ番目の音要素との接続スコアの最大値または当該最大値より大きい値である上界値を、前記上界値格納部から取得し、
ｉ番目の音要素に対応する各ターゲットのターゲットスコアを、ｉ番目の音要素に対応するすべての音声合成単位情報に対して、前記ターゲットスコア算出部に取得させ、
当該取得させた１以上のターゲットスコアを降順にソートし、
ターゲットスコアのスコアの大きい順に、（ｉ−１）番目の音要素とｉ番目の音要素に対応する音声合成単位情報との接続スコアを、前記接続スコア算出部に算出させて、取得し、
ターゲットスコアのスコアの大きい順に、（ｉ−１）番目の音要素に到着するまでの第一総合スコアと当該ターゲットスコアと前記接続スコアとを用いて、次の第二総合スコアを算出し、
当該次の第二総合スコアを降順にソートし、
θ番目に大きい次の第二総合スコアを記憶し、
θ番目以降の音声合成単位情報について、（ｉ−１）番目の音要素に到着するまでの最大の第一総合スコアとターゲットスコアと上界値とを用いて第二総合スコアの上界値を算出し、
当該第二総合スコアの上界値が前記θ番目の次の総合スコアと比べて、大きくなくなった以降の音声合成単位情報の処理を行わない音声合成装置。
【請求項３】
前記単位選択部は、さらに、
ｉ番目の音要素に到着するまでの音声合成単位情報の候補を、第二総合スコアが大きい順にθ個までに絞って取得するものであり、
（ｉ−１）番目の音要素とｉ番目の音要素との接続スコアの最大値または当該最大値より大きい値である上界値を、前記上界値格納部から取得し、
ｉ番目の音要素に対応する各ターゲットのターゲットスコアを、ｉ番目の音要素に対応するすべての音声合成単位情報に対して、前記ターゲットスコア算出部に取得させ、
当該取得させた１以上のターゲットスコアを降順にソートし、
ターゲットスコアのスコアの大きい順に、（ｉ−１）番目の音要素とｉ番目の音要素に対応する音声合成単位情報との接続スコアを、前記接続スコア算出部に算出させて、取得し、
ターゲットスコアのスコアの大きい順に、（ｉ−１）番目の音要素に到着するまでの第一総合スコアと当該ターゲットスコアと前記接続スコアとを用いて、次の第二総合スコアを算出し、
当該次の第二総合スコアを降順にソートし、
θ番目に大きい次の第二総合スコアを記憶し、
θ番目以降の音声合成単位情報について、（ｉ−１）番目の音要素に到着するまでの最大の第一総合スコアとターゲットスコアと上界値とを用いて上限のスコアを算出し、
当該上限のスコアが前記θ番目の次の総合スコアと比べて、大きくなくなった以降の音声合成単位情報の処理を行わない請求項１記載の音声合成装置。
【請求項４】
ターゲットモデルを１以上格納しているターゲットモデル格納部をさらに具備し、
前記テキスト処理部は、
前記テキスト受付部が受け付けたテキストを区切り、当該テキストに対応する繋がりを有する２以上の音要素を取得し、当該２以上の音要素ごとに、各音要素を前記ターゲットモデル格納部のターゲットモデルに入力し、ターゲット系列を得る請求項１から請求項３いずれか記載の音声合成装置。
【請求項５】
テキスト受付部、テキスト処理部、音声合成単位情報取得部、ターゲットスコア算出部、接続スコア算出部、単位選択部および音声出力部により実現される音声合成方法であって、
記憶媒体に、音の要素である音要素と当該音要素の１以上の特徴量を示すスペクトル特徴量情報と当該音情報を示す波形の情報である波形情報とを有する２以上の音声合成単位情報と、
２つの音要素の接続の適切さの度合いを示す接続スコアの最大値または当該最大値より大きい値である上界値を、２つの音要素ごとに格納しており、
前記テキスト受付部により、テキストを受け付けるテキスト受付ステップと、
前記テキスト処理部により、前記テキスト受付ステップで受け付けたテキストを区切り、当該テキストに対応する繋がりを有する２以上の音要素を取得し、当該２以上の音要素ごとに、当該各音要素に対応する２以上のターゲットであり、音の要素である音要素と音要素の長さを示す継続時間長情報と音要素の音の高さを示す音高情報と音要素の１以上のスペクトルの概形に関する特徴を表すスペクトル特徴量情報とを有する２以上のターゲットの繋がりであるターゲット系列を、前記記憶媒体から取得するテキスト処理ステップと、
前記音声合成単位情報取得部により、前記テキスト処理ステップで取得した２以上のターゲットごとに、当該各ターゲットに含まれる音要素と同一の音要素を含む１以上の音声合成単位情報の全部または一部を、記憶媒体から取得する音声合成単位情報取得ステップと、
前記ターゲットスコア算出部により、前記ターゲットごとに、前記音声合成単位情報取得ステップで取得された音声合成単位情報の全部または一部と前記テキスト処理ステップで取得されたターゲットの全部または一部を用いて、音声合成単位情報とターゲットとの類似の度合いを示すターゲットスコアを算出するターゲットスコア算出ステップと、
前記接続スコア算出部により、前記音声合成単位情報取得ステップで取得された２以上の音声合成単位情報の全部または一部を用いて、２つの音声合成単位情報の接続の適切さの度合いを示す接続スコアを、音要素の接続ごとに算出する接続スコア算出ステップと、
前記単位選択部により、前記テキスト処理ステップで取得された繋がりを有する２以上の音要素の音要素ごとに、最初の音要素から順に、音要素に対応する１以上の音声合成単位情報のうちの、各音声合成単位情報が選択された場合の総合的なスコアである第二総合スコアを、前記ターゲットスコア算出ステップで算出されたターゲットスコアと、前記接続スコア算出ステップで算出された接続スコアを用いて算出し、前記第二総合スコアが最大になる最終の音要素に対応する音声合成単位情報、および当該最終の音要素に対応する音声合成単位情報が選択されるまでの最大の第二総合スコアを構成するためのすべての音声合成単位情報を決定し、当該最初の音要素に対応する音声合成単位情報から最後の音要素に対応する音声合成単位情報に含まれる２以上の波形情報を取得する単位選択ステップと、
前記音声出力部により、前記単位選択ステップで取得された２以上の波形情報を、前記テキスト受付ステップで受け付けられテキストに対応する２以上の音要素の順に出力する音声出力ステップとを具備する音声合成方法であって、
前記単位選択ステップは、
（ｉ−１）番目の音要素とｉ番目の音要素との接続スコアの最大値または当該最大値より大きい値である上界値を、前記上界値格納部から取得し、
ｉ番目の音要素に到着するまでの第一総合スコアを算出する場合に、（ｉ−１）番目の音要素に到着するまでの第二総合スコアを降順にソートし、
（ｉ−１）番目の音要素に到着するまでの第二総合スコアの大きい音声合成単位情報から順に、ｉ番目の音要素に対応する音声合成単位情報との接続スコアを、前記接続スコア算出部に算出させて、取得し、
当該接続スコアと（ｉ−１）番目の音要素に到着するまでの第二総合スコアを用いて、次の総合的なスコアである第一総合スコアを算出し、今までに算出した第一総合スコアの最大値を記憶し、
次に大きな（ｉ−１）番目の音要素に到着するまでの第二総合スコアに対応する音声合成単位情報を処理する場合に、当該第二総合スコアと前記取得した上界値を用いて算出した上限のスコアが、前記今までに算出した第一総合スコアの最大値より大きくないか否かを判断し、
前記算出した上限のスコアが、前記今までに算出した第一総合スコアの最大値より大きくないと判断した以降の、（ｉ−１）番目の音要素に到着するまでの第二総合スコアの小さい音声合成単位情報に対する処理は行わない音声合成方法。
【請求項６】
テキスト受付部、テキスト処理部、音声合成単位情報取得部、ターゲットスコア算出部、接続スコア算出部、単位選択部および音声出力部により実現される音声合成方法であって、
記憶媒体に、音の要素である音要素と当該音要素の１以上の特徴量を示すスペクトル特徴量情報と当該音情報を示す波形の情報である波形情報とを有する２以上の音声合成単位情報と、
２つの音要素の接続の適切さの度合いを示す接続スコアの最大値または当該最大値より大きい値である上界値を、２つの音要素ごとに格納しており、
前記テキスト受付部により、テキストを受け付けるテキスト受付ステップと、
前記テキスト処理部により、前記テキスト受付ステップで受け付けたテキストを区切り、当該テキストに対応する繋がりを有する２以上の音要素を取得し、当該２以上の音要素ごとに、当該各音要素に対応する２以上のターゲットであり、音の要素である音要素と音要素の長さを示す継続時間長情報と音要素の音の高さを示す音高情報と音要素の１以上のスペクトルの概形に関する特徴を表すスペクトル特徴量情報とを有する２以上のターゲットの繋がりであるターゲット系列を、前記記憶媒体から取得するテキスト処理ステップと、
前記音声合成単位情報取得部により、前記テキスト処理ステップで取得した２以上のターゲットごとに、当該各ターゲットに含まれる音要素と同一の音要素を含む１以上の音声合成単位情報の全部または一部を、記憶媒体から取得する音声合成単位情報取得ステップと、
前記ターゲットスコア算出部により、前記ターゲットごとに、前記音声合成単位情報取得ステップで取得された音声合成単位情報の全部または一部と前記テキスト処理ステップで取得されたターゲットの全部または一部を用いて、音声合成単位情報とターゲットとの類似の度合いを示すターゲットスコアを算出するターゲットスコア算出ステップと、
前記接続スコア算出部により、前記音声合成単位情報取得ステップで取得された２以上の音声合成単位情報の全部または一部を用いて、２つの音声合成単位情報の接続の適切さの度合いを示す接続スコアを、音要素の接続ごとに算出する接続スコア算出ステップと、
前記単位選択部により、前記テキスト処理ステップで取得された繋がりを有する２以上の音要素の音要素ごとに、最初の音要素から順に、音要素に対応する１以上の音声合成単位情報のうちの、各音声合成単位情報が選択された場合の総合的なスコアである第二総合スコアを、前記ターゲットスコア算出ステップで算出されたターゲットスコアと、前記接続スコア算出ステップで算出された接続スコアを用いて算出し、前記第二総合スコアが最大になる最終の音要素に対応する音声合成単位情報、および当該最終の音要素に対応する音声合成単位情報が選択されるまでの最大の第二総合スコアを構成するためのすべての音声合成単位情報を決定し、当該最初の音要素に対応する音声合成単位情報から最後の音要素に対応する音声合成単位情報に含まれる２以上の波形情報を取得する単位選択ステップと、
前記音声出力部により、前記単位選択ステップで取得された２以上の波形情報を、前記テキスト受付ステップで受け付けられテキストに対応する２以上の音要素の順に出力する音声出力ステップとを具備する音声合成方法であって、
前記単位選択ステップは、
ｉ番目の音要素に到着するまでの音声合成単位情報の候補を、第二総合スコアが大きい順にθ個までに絞って取得するものであり、
（ｉ−１）番目の音要素とｉ番目の音要素との接続スコアの最大値または当該最大値より大きい値である上界値を、前記上界値格納部から取得し、
ｉ番目の音要素に対応する各ターゲットのターゲットスコアを、ｉ番目の音要素に対応するすべての音声合成単位情報に対して、前記ターゲットスコア算出部に取得させ、
当該取得させた１以上のターゲットスコアを降順にソートし、
ターゲットスコアのスコアの大きい順に、（ｉ−１）番目の音要素とｉ番目の音要素に対応する音声合成単位情報との接続スコアを、前記接続スコア算出部に算出させて、取得し、
ターゲットスコアのスコアの大きい順に、（ｉ−１）番目の音要素に到着するまでの第一総合スコアと当該ターゲットスコアと前記接続スコアとを用いて、次の第二総合スコアを算出し、
当該次の第二総合スコアを降順にソートし、
θ番目に大きい次の第二総合スコアを記憶し、
θ番目以降の音声合成単位情報について、（ｉ−１）番目の音要素に到着するまでの最大の第一総合スコアとターゲットスコアと上界値とを用いて上限のスコアを算出し、
当該上限のスコアが前記θ番目の次の総合スコアと比べて、大きくなくなった以降の音声合成単位情報の処理を行わない音声合成方法。
【請求項７】
記憶媒体に、音の要素である音要素と当該音要素の１以上の特徴量を示すスペクトル特徴量情報と当該音情報を示す波形の情報である波形情報とを有する２以上の音声合成単位情報と、
２つの音要素の接続の適切さの度合いを示す接続スコアの最大値または当該最大値より大きい値である上界値を、２つの音要素ごとに格納しており、
コンピュータを、
テキストを受け付けるテキスト受付部と、
前記テキスト受付部が受け付けたテキストを区切り、当該テキストに対応する繋がりを有する２以上の音要素を取得し、当該２以上の音要素ごとに、当該各音要素に対応する２以上のターゲットであり、音の要素である音要素と音要素の長さを示す継続時間長情報と音要素の音の高さを示す音高情報と音要素の１以上のスペクトルの概形に関する特徴を表すスペクトル特徴量情報とを有する２以上のターゲットの繋がりであるターゲット系列を取得するテキスト処理部と、
前記テキスト処理部が取得した２以上のターゲットごとに、当該各ターゲットに含まれる音要素と同一の音要素を含む１以上の音声合成単位情報の全部または一部を、前記音声合成単位情報格納部から取得する音声合成単位情報取得部と、
前記ターゲットごとに、前記音声合成単位情報取得部が取得した音声合成単位情報の全部または一部と前記テキスト処理部が取得したターゲットの全部または一部を用いて、音声合成単位情報とターゲットとの類似の度合いを示すターゲットスコアを算出するターゲットスコア算出部と、
前記音声合成単位情報取得部が取得した２以上の音声合成単位情報の全部または一部を用いて、２つの音声合成単位情報の接続の適切さの度合いを示す接続スコアを、音要素の接続ごとに算出する接続スコア算出部と、
前記テキスト処理部が取得した繋がりを有する２以上の音要素の音要素ごとに、最初の音要素から順に、音要素に対応する１以上の音声合成単位情報のうちの、各音声合成単位情報が選択された場合の総合的なスコアである第二総合スコアを、前記ターゲットスコア算出部が算出したターゲットスコアと、前記接続スコア算出部が算出した接続スコアを用いて算出し、前記第二総合スコアが最大になる最終の音要素に対応する音声合成単位情報、および当該最終の音要素に対応する音声合成単位情報が選択されるまでの最大の第二総合スコアを構成するためのすべての音声合成単位情報を決定し、当該最初の音要素に対応する音声合成単位情報から最後の音要素に対応する音声合成単位情報に含まれる２以上の波形情報を取得する単位選択部と、
前記単位選択部が取得した２以上の波形情報を、前記テキスト受付部が受け付けたテキストに対応する２以上の音要素の順に出力する音声出力部として機能させるためのプログラムであって、
前記単位選択部は、
（ｉ−１）番目の音要素とｉ番目の音要素との接続スコアの最大値または当該最大値より大きい値である上界値を、前記上界値格納部から取得し、
ｉ番目の音要素に到着するまでの第一総合スコアを算出する場合に、（ｉ−１）番目の音要素に到着するまでの第二総合スコアを降順にソートし、
（ｉ−１）番目の音要素に到着するまでの第二総合スコアの大きい音声合成単位情報から順に、ｉ番目の音要素に対応する音声合成単位情報との接続スコアを、前記接続スコア算出部に算出させて、取得し、
当該接続スコアと（ｉ−１）番目の音要素に到着するまでの第二総合スコアを用いて、次の総合的なスコアである第一総合スコアを算出し、今までに算出した第一総合スコアの最大値を記憶し、
次に大きな（ｉ−１）番目の音要素に到着するまでの第二総合スコアに対応する音声合成単位情報を処理する場合に、当該第二総合スコアと前記取得した上界値を用いて算出した上限のスコアが、前記今までに算出した第一総合スコアの最大値より大きくないか否かを判断し、
前記算出した上限のスコアが、前記今までに算出した第一総合スコアの最大値より大きくないと判断した以降の、（ｉ−１）番目の音要素に到着するまでの第二総合スコアの小さい音声合成単位情報に対する処理は行わないように、コンピュータを機能させるためのプログラム。
【請求項８】
記憶媒体に、音の要素である音要素と当該音要素の１以上の特徴量を示すスペクトル特徴量情報と当該音情報を示す波形の情報である波形情報とを有する２以上の音声合成単位情報と、
２つの音要素の接続の適切さの度合いを示す接続スコアの最大値または当該最大値より大きい値である上界値を、２つの音要素ごとに格納しており、
コンピュータを、
テキストを受け付けるテキスト受付部と、
前記テキスト受付部が受け付けたテキストを区切り、当該テキストに対応する繋がりを有する２以上の音要素を取得し、当該２以上の音要素ごとに、当該各音要素に対応する２以上のターゲットであり、音の要素である音要素と音要素の長さを示す継続時間長情報と音要素の音の高さを示す音高情報と音要素の１以上のスペクトルの概形に関する特徴を表すスペクトル特徴量情報とを有する２以上のターゲットの繋がりであるターゲット系列を取得するテキスト処理部と、
前記テキスト処理部が取得した２以上のターゲットごとに、当該各ターゲットに含まれる音要素と同一の音要素を含む１以上の音声合成単位情報の全部または一部を、前記音声合成単位情報格納部から取得する音声合成単位情報取得部と、
前記ターゲットごとに、前記音声合成単位情報取得部が取得した音声合成単位情報の全部または一部と前記テキスト処理部が取得したターゲットの全部または一部を用いて、音声合成単位情報とターゲットとの類似の度合いを示すターゲットスコアを算出するターゲットスコア算出部と、
前記音声合成単位情報取得部が取得した２以上の音声合成単位情報の全部または一部を用いて、２つの音声合成単位情報の接続の適切さの度合いを示す接続スコアを、音要素の接続ごとに算出する接続スコア算出部と、
前記テキスト処理部が取得した繋がりを有する２以上の音要素の音要素ごとに、最初の音要素から順に、音要素に対応する１以上の音声合成単位情報のうちの、各音声合成単位情報が選択された場合の総合的なスコアである第二総合スコアを、前記ターゲットスコア算出部が算出したターゲットスコアと、前記接続スコア算出部が算出した接続スコアを用いて算出し、前記第二総合スコアが最大になる最終の音要素に対応する音声合成単位情報、および当該最終の音要素に対応する音声合成単位情報が選択されるまでの最大の第二総合スコアを構成するためのすべての音声合成単位情報を決定し、当該最初の音要素に対応する音声合成単位情報から最後の音要素に対応する音声合成単位情報に含まれる２以上の波形情報を取得する単位選択部と、
前記単位選択部が取得した２以上の波形情報を、前記テキスト受付部が受け付けたテキストに対応する２以上の音要素の順に出力する音声出力部として機能させるためのプログラムであって、
前記単位選択部は、
ｉ番目の音要素に到着するまでの音声合成単位情報の候補を、第二総合スコアが大きい順にθ個までに絞って取得するものであり、
（ｉ−１）番目の音要素とｉ番目の音要素との接続スコアの最大値または当該最大値より大きい値である上界値を、前記上界値格納部から取得し、
ｉ番目の音要素に対応する各ターゲットのターゲットスコアを、ｉ番目の音要素に対応するすべての音声合成単位情報に対して、前記ターゲットスコア算出部に取得させ、
当該取得させた１以上のターゲットスコアを降順にソートし、
ターゲットスコアのスコアの大きい順に、（ｉ−１）番目の音要素とｉ番目の音要素に対応する音声合成単位情報との接続スコアを、前記接続スコア算出部に算出させて、取得し、
ターゲットスコアのスコアの大きい順に、（ｉ−１）番目の音要素に到着するまでの第一総合スコアと当該ターゲットスコアと前記接続スコアとを用いて、次の第二総合スコアを算出し、
当該次の第二総合スコアを降順にソートし、
θ番目に大きい次の第二総合スコアを記憶し、
θ番目以降の音声合成単位情報について、（ｉ−１）番目の音要素に到着するまでの最大の第一総合スコアとターゲットスコアと上界値とを用いて上限のスコアを算出し、
当該上限のスコアが前記θ番目の次の総合スコアと比べて、大きくなくなった以降の音声合成単位情報の処理を行わないように、コンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、音声合成装置等に関するものである。また、本発明は、通常、波形接続型の音声合成装置等に関するものである。
【背景技術】
【０００２】
従来の音声合成装置において、波形を接続することにより音声合成を行う波形接続型音声合成装置があった（例えば、非特許文献１参照）。かかる波形接続型音声合成装置において、ビタビビームサーチ（適宜「Viterbiビームサーチ」とも言う。）というアルゴリズムを用いた音声合成単位の選択を行うことにより、音声合成処理を行う。
【非特許文献１】A. Hunt and A. Black, Unit selection in a concatenative speech synthesis system using a large speech database, In Proc. ICASSP '96, 1996, pp. 373.376.
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、従来の音声合成装置においては、処理が高速にできなかった。
【課題を解決するための手段】
【０００４】
本第一の発明の音声合成装置は、音の要素である音要素と当該音要素の１以上の特徴量を示すスペクトル特徴量情報と当該音情報を示す波形の情報である波形情報とを有する音声合成単位情報を複数格納している音声合成単位情報格納部と、２つの音要素の接続の適切さの度合いを示す接続スコアの最大値または当該最大値より大きい値である接続スコアの値である上界値を、２つの音要素ごとに格納している上界値格納部と、テキストを受け付けるテキスト受付部と、前記テキスト受付部が受け付けたテキストを区切り、当該テキストに対応する繋がりを有する２以上の音要素を取得し、当該２以上の音要素ごとに、当該各音要素に対応する２以上のターゲットであり、音の要素である音要素と音要素の長さを示す継続時間長情報と音要素の音の高さを示す音高情報と音要素の１以上のスペクトルの概形に関する特徴を表すスペクトル特徴量情報とを有する２以上のターゲットの繋がりであるターゲット系列を取得するテキスト処理部と、前記テキスト処理部が取得した２以上のターゲットごとに、当該各ターゲットに含まれる音要素と同一の音要素を含む１以上の音声合成単位情報の全部または一部を、前記音声合成単位情報格納部から取得する音声合成単位情報取得部と、前記ターゲットごとに、前記音声合成単位情報取得部が取得した音声合成単位情報の全部または一部と前記テキスト処理部が取得したターゲットの全部または一部を用いて、音声合成単位情報とターゲットとの類似の度合いを示すターゲットスコアを算出するターゲットスコア算出部と、前記音声合成単位情報取得部が取得した２以上の音声合成単位情報の全部または一部を用いて、２つの音声合成単位情報の接続の適切さの度合いを示す接続スコアを、音要素の接続ごとに算出する接続スコア算出部と、前記テキスト処理部が取得した繋がりを有する２以上の音要素の音要素ごとに、最初の音要素から順に、音要素に対応する１以上の音声合成単位情報のうちの、各音声合成単位情報が選択された場合の総合的なスコアである第二総合スコアを、前記ターゲットスコア算出部が算出したターゲットスコアと、前記接続スコア算出部が算出した接続スコアを用いて算出し、前記第二総合スコアが最大になる最終の音要素に対応する音声合成単位情報、および当該最終の音要素に対応する音声合成単位情報が選択されるまでの最大の第二総合スコアを構成するためのすべての音声合成単位情報を決定し、当該最初の音要素に対応する音声合成単位情報から最後の音要素に対応する音声合成単位情報に含まれる２以上の波形情報を取得する単位選択部と、前記単位選択部が取得した２以上の波形情報を、前記テキスト受付部が受け付けたテキストに対応する２以上の音要素の順に出力する音声出力部とを具備する音声合成装置であって、前記単位選択部は、（ｉ−１）番目の音要素とｉ番目の音要素との接続スコアの最大値または当該最大値より大きい値である上界値を、前記上界値格納部から取得し、ｉ番目の音要素に到着するまでの第一総合スコアを算出する場合に、（ｉ−１）番目の音要素に到着するまでの第二総合スコアを降順にソートし、（ｉ−１）番目の音要素に到着するまでの第二総合スコアの大きい音声合成単位情報から順に、ｉ番目の音要素に対応する音声合成単位情報との接続スコアを、前記接続スコア算出部に算出させて、取得し、当該接続スコアと（ｉ−１）番目の音要素に到着するまでの第二総合スコアを用いて、次の総合的なスコアである第一総合スコアを算出し、今までに算出した第一総合スコアの最大値を記憶し、次に大きな（ｉ−１）番目の音要素に到着するまでの第二総合スコアに対応する音声合成単位情報を処理する場合に、当該第二総合スコアと前記取得した上界値を用いて算出した上限のスコアが、前記今までに算出した第一総合スコアの最大値より大きくないか否かを判断し、前記算出した上限のスコアが、前記今までに算出した第一総合スコアの最大値より大きくないと判断した以降の、（ｉ−１）番目の音要素に到着するまでの第二総合スコアの小さい音声合成単位情報に対する処理は行わない音声合成装置である。
【０００５】
かかる構成により、接続スコアの上界値を用いて、いわゆる局所最大化処理を途中で打ち切りことにより、処理を高速化できる。
【０００６】
また、本第二の発明の音声合成装置は、音の要素である音要素と当該音要素の１以上の特徴量を示すスペクトル特徴量情報と当該音情報を示す波形の情報である波形情報とを有する音声合成単位情報を複数格納している音声合成単位情報格納部と、２つの音要素の接続の適切さの度合いを示す接続スコアの最大値または当該最大値より大きい値である上界値を、２つの音要素ごとに格納している上界値格納部と、テキストを受け付けるテキスト受付部と、前記テキスト受付部が受け付けたテキストを区切り、当該テキストに対応する繋がりを有する２以上の音要素を取得し、当該２以上の音要素ごとに、当該各音要素に対応する２以上のターゲットであり、音の要素である音要素と音要素の長さを示す継続時間長情報と音要素の音の高さを示す音高情報と音要素の１以上のスペクトルの概形に関する特徴を表すスペクトル特徴量情報とを有する２以上のターゲットの繋がりであるターゲット系列を取得するテキスト処理部と、前記テキスト処理部が取得した２以上のターゲットごとに、当該各ターゲットに含まれる音要素と同一の音要素を含む１以上の音声合成単位情報の全部または一部を、前記音声合成単位情報格納部から取得する音声合成単位情報取得部と、前記ターゲットごとに、前記音声合成単位情報取得部が取得した音声合成単位情報の全部または一部と前記テキスト処理部が取得したターゲットの全部または一部を用いて、音声合成単位情報とターゲットとの類似の度合いを示すターゲットスコアを算出するターゲットスコア算出部と、前記音声合成単位情報取得部が取得した２以上の音声合成単位情報の全部または一部を用いて、２つの音声合成単位情報の接続の適切さの度合いを示す接続スコアを、音要素の接続ごとに算出する接続スコア算出部と、前記テキスト処理部が取得した繋がりを有する２以上の音要素の音要素ごとに、最初の音要素から順に、音要素に対応する１以上の音声合成単位情報のうちの、各音声合成単位情報が選択された場合の総合的なスコアである第二総合スコアを、前記ターゲットスコア算出部が算出したターゲットスコアと、前記接続スコア算出部が算出した接続スコアを用いて算出し、前記第二総合スコアが最大になる最終の音要素に対応する音声合成単位情報、および当該最終の音要素に対応する音声合成単位情報が選択されるまでの最大の第二総合スコアを構成するためのすべての音声合成単位情報を決定し、当該最初の音要素に対応する音声合成単位情報から最後の音要素に対応する音声合成単位情報に含まれる２以上の波形情報を取得する単位選択部と、前記単位選択部が取得した２以上の波形情報を、前記テキスト受付部が受け付けたテキストに対応する２以上の音要素の順に出力する音声出力部とを具備する音声合成装置であって、前記単位選択部は、ｉ番目の音要素に到着するまでの音声合成単位情報の候補を、第二総合スコアが大きい順にθ個までに絞って取得するものであり、（ｉ−１）番目の音要素とｉ番目の音要素との接続スコアの最大値または当該最大値より大きい値である上界値を、前記上界値格納部から取得し、ｉ番目の音要素に対応する各ターゲットのターゲットスコアを、ｉ番目の音要素に対応するすべての音声合成単位情報に対して、前記ターゲッ���スコア算出部に取得させ、当該取得させた１以上のターゲットスコアを降順にソートし、ターゲットスコアのスコアの大きい順に、（ｉ−１）番目の音要素とｉ番目の音要素に対応する音声合成単位情報との接続スコアを、前記接続スコア算出部に算出させて、取得し、ターゲットスコアのスコアの大きい順に、（ｉ−１）番目の音要素に到着するまでの第一総合スコアと当該ターゲットスコアと前記接続スコアとを用いて、次の第二総合スコアを算出し、当該次の第二総合スコアを降順にソートし、θ番目に大きい次の第二総合スコアを記憶し、θ番目以降の音声合成単位情報について、（ｉ−１）番目の音要素に到着するまでの最大の第一総合スコアとターゲットスコアと上界値とを用いて第二総合スコアの上界値を算出し、当該第二総合スコアの上界値が前記θ番目の次の総合スコアと比べて、大きくなくなった以降の音声合成単位情報の処理を行わない音声合成装置である。
【０００７】
かかる構成により、接続スコアの上界値を用いて、Viterbiビームサーチにおけるビーム幅までの仮説を生成する処理を途中で打ち切りことにより、処理を高速化できる。
【０００８】
また、本第三の発明の音声合成装置は、第一の発明に対して、前記単位選択部は、さらに、ｉ番目の音要素に到着するまでの音声合成単位情報の候補を、第二総合スコアが大きい順にθ個までに絞って取得するものであり、（ｉ−１）番目の音要素とｉ番目の音要素との接続スコアの最大値または当該最大値より大きい値である上界値を、前記上界値格納部から取得し、ｉ番目の音要素に対応する各ターゲットのターゲットスコアを、ｉ番目の音要素に対応するすべての音声合成単位情報に対して、前記ターゲットスコア算出部に取得させ、当該取得させた１以上のターゲットスコアを降順にソートし、ターゲットスコアのスコアの大きい順に、（ｉ−１）番目の音要素とｉ番目の音要素に対応する音声合成単位情報との接続スコアを、前記接続スコア算出部に算出させて、取得し、ターゲットスコアのスコアの大きい順に、（ｉ−１）番目の音要素に到着するまでの第一総合スコアと当該ターゲットスコアと前記接続スコアとを用いて、次の第二総合スコアを算出し、当該次の第二総合スコアを降順にソートし、θ番目に大きい次の第二総合スコアを記憶し、θ番目以降の音声合成単位情報について、（ｉ−１）番目の音要素に到着するまでの最大の第一総合スコアとターゲットスコアと上界値とを用いて第二総合スコアの上界値を算出し、当該第二総合スコアの上界値が前記θ番目の次の総合スコアと比べて、大きくなくなった以降の音声合成単位情報の処理を行わない音声合成装置である。
【０００９】
かかる構成により、接続スコアの上界値を用いて、いわゆる局所最大化処理を途中で打ち切り、かつ、Viterbiビームサーチにおけるビーム幅までの仮説を生成する処理を途中で打ち切りことにより、処理をより高速化できる。
【発明の効果】
【００１０】
本発明による音声合成装置によれば、処理を高速化できる。
【発明を実施するための最良の形態】
【００１１】
以下、音声合成装置等の実施形態について図面を参照して説明する。なお、実施の形態において同じ符号を付した構成要素は同様の動作を行うので、再度の説明を省略する場合がある。
【００１２】
（実施の形態）
本実施の形態において、接続スコアの上界値を用いて、音声合成処理を高速化できる音声合成装置について説明する。本音声合成装置は、いわゆる波形接続型音声合成を行う。そして、本音声合成装置は、以下の２つの高速化法により、高速に音声合成処理を行えるものである。つまり、本音声合成装置は、閉じた音響空間に関する事前知識により、接続スコアの上界値を求めておくことにより、Viterbiビームサーチの最大化処理を、結果をかえることなく、早めに打ち切り、高速化をはかるものである。第１の高速化法においては、接続スコアの上界値を利用して、Viterbiサーチにおける局所最大化処理を、結果を変えることなく途中で打ち切ることにより高速化する。また、第２の高速化法においては、接続スコアの上界値を利用して、Viterbiビームサーチにおけるビーム幅までの仮説を生成する処理を、結果を変えることなく途中で打ち切ることにより高速化する。
【００１３】
図１は、本実施の形態における音声合成装置のブロック図である。音声合成装置は、ターゲットモデル格納部１０１、音声合成単位情報格納部１０２、上界値格納部１０３、テキスト受付部１０４、テキスト処理部１０５、音声合成単位情報取得部１０６、ターゲットスコア算出部１０７、接続スコア算出部１０８、単位選択部１０９、音声出力部１１０を具備する。なお、ここで、ターゲットモデル格納部１０１は、いわゆるターゲットモデルとも言われる。また、音声合成装置は、２以上のターゲットモデル格納部１０１を有しても良い。
【００１４】
ターゲットモデル格納部１０１は、ターゲットモデルを１以上格納し得る。ターゲットモデルとは、例えば、ペクトル的特徴に関するターゲットモデルの場合、テキストから得られる情報により、スペクトル特徴量情報、Ｆ０などの確率分布(あるいは代表値)を計算する仕組み（例えば、ソフトウェア）である。ターゲットモデルへの入力は、音声合成単位の対応する音素と、前後の音素コンテキスト、その音素が、句、単語の何番目にあらわれるか等のさまざまな属性値を有する情報である。また、ターゲットモデルからの出力は、入力された属性値集合から決定木などの仕組みで検索されて得られるガウス分布(平均と分散からなる)などである。ターゲットモデル格納部１０１は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。ターゲットモデル格納部１０１にターゲットが記憶される過程は問わない。例えば、記録媒体を介してターゲットがターゲットモデル格納部１０１で記憶されるようになってもよく、通信回線等を介して送信されたターゲットがターゲットモデル格納部１０１で記憶されるようになってもよく、あるいは、入力デバイスを介して入力されたターゲットがターゲットモデル格納部１０１で記憶されるようになってもよい。
【００１５】
音声合成単位情報格納部１０２は、音声合成単位情報を複数格納し得る。音声合成単位情報とは、音要素と当該音要素の特徴量情報と当該音要素を示す波形の情報である波形情報とを有する。波形情報とは、音声出力の元になる情報である。後述する音声出力部１１０は、波形情報を用いて、音声出力する。音声合成単位情報格納部１０２は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。音声合成単位情報格納部１０２に音声合成単位情報が記憶される過程は問わない。例えば、記録媒体を介して音声合成単位情報が音声合成単位情報格納部１０２で記憶されるようになってもよく、通信回線等を介して送信された音声合成単位情報が音声合成単位情報格納部１０２で記憶されるようになってもよく、あるいは、入力デバイスを介して入力された音声合成単位情報が音声合成単位情報格納部１０２で記憶されるようになってもよい。
【００１６】
上界値格納部１０３は、上界値を、２つの音要素ごとに格納している。上界値とは、２つの音要素の接続の適切さの度合いを示す接続スコアの最大値か、それより大きい値である。接続の適切さとは、音の流暢さ、とも言える。接続スコアとは、例えば、２つの特徴量情報から得られる情報であり、２つのケプストラムのユーグリッド距離に−１をかけた値などである。上界値格納部１０３は、例えば、２つの音要素と上界値を有する上界値情報を、２以上格納している。上界値は、例えば、音声合成単位データベース（音声合成単位情報格納部１０２）中での、２つの音要素に該当するすべての音声合成単位情報の組における接続スコアの最大値として算出することができる。なお、上界値の算出方法は、公知技術であるので、それ以上の詳細な説明は省略する。上界値格納部１０３は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。上界値格納部１０３に上界値が記憶される過程は問わない。例えば、記録媒体を介して上界値が上界値格納部１０３で記憶されるようになってもよく、通信回線等を介して送信された上界値が上界値格納部１０３で記憶されるようになってもよく、あるいは、入力デバイスを介して入力された上界値が上界値格納部１０３で記憶されるようになってもよい。
【００１７】
テキスト受付部１０４は、テキストを受け付ける。ここで受付とは、手入力での受け付け、外部装置からの受信、他の処理部からのテキストの引き受けなどを含む。テキストの入力手段は、キーボードやマウスやメニュー画面によるもの等、何でも良い。テキスト受付部１０４は、キーボード等の入力手段のデバイスドライバーや、メニュー画面の制御ソフトウェア等で実現され得る。また、テキスト受付部１０４は、音声でテキストを受け付けても良い。かかる場合、図示しない音声認識処理部により、音声がテキストに変換される。
【００１８】
テキスト処理部１０５は、テキスト受付部１０４が受け付けたテキストから、ターゲット系列を取得する。テキスト処理部１０５は、ターゲットモデル格納部１０１のターゲットモデルを参照して、ターゲット系列を生成する。ターゲット系列とは、２以上のターゲットが繋がった情報である。ターゲットとは、音要素、継続時間長情報、音高情報、およびスペクトル特徴量情報を有する。音要素とは、音の要素である。音要素は、例えば、音素である。また、音要素は、例えば、音素の中でも、コンテキスト付音素である。ただし、音要素は、音素以外の単位である、半音素、音節、半音節、音素片などで良い。継続時間長情報とは、音要素の長さを示す情報であり、その単位は、例えば、ミリ秒（ｍｓ）や秒（ｓ）などである。音高情報とは、音要素の音の高さを示す情報である。音高情報とは、例えば、基本周波数（Ｆ０）である。スペクトル特徴量情報（以下、適宜、特徴量情報とも言う。）とは、音要素の１以上の特徴量を示す情報であり、特徴ベクトル系列と言っても良い。特徴量情報は、音要素の１以上のスペクトルの概形に関する特徴を表す。特徴量情報とは、例えば、ケプストラムである。特徴ベクトル系列は、各フレームの特徴ベクトルの集合である。また、特徴ベクトルは、例えば、３６次のメルケプストラムや、三角型フィルタを用いたチャネル数２４のフィルタバンク出力を離散コサイン変換したＭＦＣＣであり、その静的パラメータ、デルタパラメータおよびデルタデルタパラメータをそれぞれ１２次元、さらに正規化されたパワーとデルタパワーおよびデルタデルタパワー（３９次元）を有するもの等である。テキスト処理部１０５は、例えば、以下のような処理を行う。つまり、まず、テキスト受付部１０４が受け付けたテキストを区切り、当該テキストに対応する繋がりを有する２以上の音要素を取得する。次に、テキスト処理部１０５は、２以上の音要素ごとに、当該各音要素に対応する２以上のターゲットであり、音要素と継続時間長情報と音高情報と特徴量情報とを有する２以上のターゲットの繋がりであるターゲット系列を取得する。なお、テキスト処理部１０５は、テキストを区切って取得した２以上の各音要素を用いて、２以上のターゲットを、ターゲットモデル格納部１０１から取得しても良い。テキスト処理部１０５は、公知技術であるので、詳細な説明を省略する。なお、上記の「２以上の音要素の取得」とは、音素列の取得、アクセント句推定ルールを用いたアクセント句取得、呼気段落分けルールを用いたアクセント決定などの処理がある。かかる処理も公知技術であるので、詳細な説明を省略する。テキスト処理部１０５は、通常、ＭＰＵやメモリ等から実現され得る。テキスト処理部１０５の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。但し、ハードウェア（専用回路）で実現しても良い。
【００１９】
音声合成単位情報取得部１０６は、テキスト処理部１０５が取得した２以上のターゲットごとに、当該各ターゲットに含まれる音要素と同一の音要素を含む１以上の音声合成単位情報の全部または一部を、音声合成単位情報格納部１０２から取得する。ここで、音声合成単位情報の全部または一部とは、通常、音声合成単位情報の特徴量情報である。音声合成単位情報取得部１０６は、通常、多数の音声合成単位情報の全部または一部を取得する。音声合成単位情報取得部１０６は、通常、ＭＰＵやメモリ等から実現され得る。音声合成単位情報取得部１０６の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。但し、ハードウェア（専用回路）で実現しても良い。
【００２０】
ターゲットスコア算出部１０７は、ターゲットごとに、音声合成単位情報取得部１０６が取得した音声合成単位情報の全部または一部とテキスト処理部１０５が取得したターゲットの全部または一部を用いて、音声合成単位情報とターゲットとの類似の度合いを示すターゲットスコアを算出する。ここで、音声合成単位情報の全部または一部とは、通常、音声合成単位情報の特徴量情報である。また、ターゲットの全部または一部とは、通常、ターゲットの特徴量情報である。また、ターゲットスコアは、２つの特徴量情報のユーグリッド距離に−１をかけた値でも良いし、特徴量による重み付けを行い、２つの特徴量情報の各特徴量の差の絶対値と重み付けを用いるなどして算出されても良いである。また、ガウス分布（正規分布）でターゲットが表されている場合、ターゲットスコア算出部１０７は、音声合成単位の特徴量の、その確率分布から出現する確率の対数（対数確率、俗に対数尤度ともよばれる）を用いて、ターゲットスコアを算出しても良い。
なお、ターゲットスコアを算出する技術は公知技術である。ターゲットスコア算出部１０７は、通常、ＭＰＵやメモリ等から実現され得る。ターゲットスコア算出部１０７の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。但し、ハードウェア（専用回路）で実現しても良い。
【００２１】
接続スコア算出部１０８は、音声合成単位情報取得部１０６が取得した２以上の音声合成単位情報の全部または一部を用いて、２つの音声合成単位情報の接続の適切さの度合いを示す接続スコアを、音要素の接続ごとに算出する。ここで、音声合成単位情報の全部または一部とは、特徴量情報、音高情報などである。また、接続スコアは、例えば、一の音声合成単位情報の特徴量情報と、当該一の音声合成単位情報に対応する音要素に接続される音要素に対応する音声合成単位情報の特徴量情報とのユーグリッド距離に−１をかけた値である。なお、接続スコアを算出する技術も公知技術である。接続スコア算出部１０８は、通常、ＭＰＵやメモリ等から実現され得る。接続スコア算出部１０８の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。但し、ハードウェア（専用回路）で実現しても良い。
【００２２】
単位選択部１０９は、テキスト処理部１０５が取得した繋がりを有する２以上の音要素の音要素ごとに、波形情報を取得する。この取得される２以上の波形情報は、後述する第二総合スコアが最大となる波形情報の列である。さらに、詳細には、単位選択部１０９は、テキスト処理部１０５が取得した繋がりを有する２以上の音要素の音要素ごとに、最初の音要素から順に、音要素に対応する１以上の音声合成単位情報のうちの、各音声合成単位情報が選択された場合の第二総合スコアを、ターゲットスコア算出部１０７が算出したターゲットスコアと、接続スコア算出部１０８が算出した接続スコアを用いて算出し、第二総合スコアが最大になる最終の音要素に対応する音声合成単位情報、および当該最終の音要素に対応する音声合成単位情報が選択されるまでの最大の第二総合スコアを構成するためのすべての音声合成単位情報を決定し、当該最初の音要素に対応する音声合成単位情報から最後の音要素に対応する音声合成単位情報に含まれる２以上の波形情報を取得する。なお、第二総合スコアとは、ある音声合成単位情報に到達するまでの総合的なスコアであり、当該音声合成単位情報のターゲットスコアを含むスコアである。また、後述する第一総合スコアとは、ある音声合成単位情報に到達するまでの総合的なスコアであり、当該音声合成単位情報のターゲットスコアを含まないスコアである。つまり、第一総合スコアは、ある音声合成単位情報の前の音声合成単位情報の第二総合スコアと、ある音声合成単位情報とその前の音声合成単位情報との接続スコアを用いて算出された総合的なスコアである。第二総合スコアは、当該音声合成単位情報の第一総合スコアと当該音声合成単位情報のターゲットスコアを用いて算出された総合的なスコアである。
【００２３】
また、以下のように、単位選択部１０９は、接続スコアの上界値を利用して、Viterbiサーチにおける局所最大化処理を、結果を変えることなく途中で打ち切ることは好適である。かかる場合、単位選択部１０９は、以下のような処理を行う。まず、単位選択部１０９は、（ｉ−１）番目の音要素とｉ番目の音要素との接続スコアの最大値または当該最大値より大きい値である上界値を、上界値格納部１０３から取得する。そして、単位選択部１０９は、音声合成単位情報ごとに、ｉ番目の音要素に到着するまでの第一総合スコアを算出する場合に、音声合成単位情報ごとの（ｉ−１）番目の音要素に到着するまでの第二総合スコアを降順にソートする。次に、単位選択部１０９は、（ｉ−１）番目の音要素に到着するまでの第二総合スコアの大きい音声合成単位情報から順に、ｉ番目の音要素に対応する音声合成単位情報との接続スコアを、接続スコア算出部１０８に算出させて、取得する。ここで、「接続スコア算出部１０８に算出させる」とは、接続スコア算出部１０８に対応する処理を呼び出す程度の意味でも良く、結果として、接続スコアが得られれば良い。次に、単位選択部１０９は、得られた接続スコアと（ｉ−１）番目の音要素に到着するまでの第二総合スコアを用いて、次の第一総合スコアを算出する。ここで、通常、単位選択部１０９は、「次の第一総合スコア＝得られた接続スコア＋（ｉ−１）番目の音要素に到着するまでの第二総合スコア」により、次の総合スコアを算出する。なお、次の第一総合スコアを算出する式は、上記の和であるとは限らず、重み付けを行った和でも良い。つまり、単位選択部１０９は、「次の第一総合スコア＝０．３×（得られた接続スコア）＋０．７×（（ｉ−１）番目の音要素に到着するまでの第二総合スコア）」などにより、次の第一総合スコアを算出しても良い。
【００２４】
そして、単位選択部１０９は、記憶媒体に記憶している次の第一総合スコアの最大値と、算出した次の第一総合スコアを比較し、算出した次の第一総合スコアが、今までに算出した次の第一総合スコアの最大値より大きければ、当該算出した次の第一総合スコアを、今までに算出した次の第一総合スコアの最大値として、記憶媒体に書き込む。
【００２５】
そして、単位選択部１０９は、次に大きな（ｉ−１）番目の音要素に到着するまでの第二総合スコアに対応する音声合成単位情報を処理する場合に、当該第二総合スコアと取得した上界値を用いて算出した上限のスコア（例えば、両値の和）が、今までに算出した次の第一総合スコアの最大値より大きくないか否か（「小さいか否か」の判断でも良い）を判断する。そして、前記スコアが、今までに算出した次の第一総合スコアの最大値より大きくないと判断した以降の、（ｉ−１）番目の音要素に到着するまでの第二総合スコアの小さい音声合成単位情報に対する処理は行わないようにする。かかる処理により、Viterbiサーチにおける局所最大化処理を、結果を変えることなく途中で打ち切ることができ、単位選択処理の高速化が図れる。なお、ｉは、２以上の自然数である。
【００２６】
さらに、以下のように、単位選択部１０９は、接続スコアの上界値を利用して、Viterbiビームサーチにおけるビーム幅までの仮説を生成する処理を、結果を変えることなく途中で打ち切ることは好適である。かかる場合、単位選択部１０９は、以下のような処理を行う。ここで、単位選択部１０９は、ｉ番目の音要素に到着するまでの音声合成単位情報の候補を、第二総合スコアが大きい順にθ個までに絞って取得するものである、とする。このθは、いわゆるビーム幅である。そして、まず、単位選択部１０９は、（ｉ−１）番目の音要素とｉ番目の音要素との接続スコアの最大値または当該最大値より大きい値である上界値を、上界値格納部１０３から取得する。次に、単位選択部１０９は、ｉ番目の音要素に対応する各ターゲットのターゲットスコアを、ｉ番目の音要素に対応するすべての音声合成単位情報に対して、ターゲットスコア算出部１０７に算出させる。そして、単位選択部１０９は、ｉ番目の音要素に対応する各音声合成単位情報のターゲットスコアを得る。
【００２７】
次に、単位選択部１０９は、当該取得させた１以上のターゲットスコアを降順にソートする。そして、単位選択部１０９は、ターゲットスコアのスコアの大きい順に、（ｉ−１）番目の音要素とｉ番目の音要素に対応する音声合成単位情報との接続スコアを、接続スコア算出部１０８に算出させて、取得する。
【００２８】
次に、単位選択部１０９は、ターゲットスコアのスコアの大きい順に、（ｉ−１）番目の音要素に到着するまでの第二総合スコアと当該ターゲットスコアと接続スコアとを用いて、次の第二総合スコアを算出し（例えば、３つの値の和を算出し）、当該次の第二総合スコアを降順にソートする。そして、単位選択部１０９は、θ個の次の第二総合スコアまでは、少なくとも算出し、θ番目に大きい次の第二総合スコアを記憶しておく。
【００２９】
そして、次に、単位選択部１０９は、θ番目以降の音声合成単位情報について、（ｉ−１）番目の音要素に到着するまでの最大の第二総合スコアとターゲットスコアと上界値とを用いて、上限のスコアを算出する（例えば、３つの値の和を算出する）。そして、単位選択部１０９は、当該上限のスコアがθ番目の次の第二総合スコアより大きくなくなった以降（「小さくなった以降」でも良い）の音声合成単位情報の処理を行わないようにする。かかる処理により、接続スコアの上界値を利用して、Viterbiビームサーチにおけるビーム幅までの仮説を生成する処理を、結果を変えることなく途中で打ち切ることができ、単位選択処理の高速化が図れる。単位選択部１０９は、通常、ＭＰＵやメモリ等から実現され得る。単位選択部１０９の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。但し、ハードウェア（専用回路）で実現しても良い。
【００３０】
音声出力部１１０は、単位選択部１０９が選択した２以上の波形情報を、テキスト受付部１０４が受け付けたテキストに対応する２以上の音要素の順に出力する。この音声出力部１１０の処理により、音声合成の結果が得られる。なお、出力とは、通常、スピーカーを用いた音出力であるが、記録媒体への蓄積、外部の装置への送信、他の処理装置や他のプログラム等への処理結果の引渡し等を含む概念である。音声出力部１１０は、スピーカー等の出力デバイスを含むと考えても含まないと考えても良い。音声出力部１１０は、出力デバイスのドライバーソフトまたは、出力デバイスのドライバーソフトと出力デバイス等で実現され得る。
【００３１】
次に、音声合成装置の動作について図２のフローチャートを用いて説明する。
【００３２】
（ステップＳ２０１）テキスト受付部１０４は、テキストを受け付けたか否かを判断する。テキストを受け付ければステップＳ２０２に行き、テキストを受け付けなければステップＳ２０１に戻る。
【００３３】
（ステップＳ２０２）テキスト処理部１０５は、ステップＳ２０１で受け付けられたテキストを区切り、当該テキストに対応する繋がりを有する２以上の音要素を取得する。
【００３４】
（ステップＳ２０３）テキスト処理部１０５は、ステップＳ２０２で取得した２以上の各音要素を用いて、ターゲットモデルを参照して、２以上のターゲットの列を生成する。この２以上のターゲットの列がターゲット系列である。ターゲット系列は、順序性を有するターゲットの集合である。なお、ここで取得されるターゲットは、ターゲットの一部の情報（後の処理で利用する情報のみ）でも良い。
【００３５】
（ステップＳ２０４）音声合成単位情報取得部１０６は、ステップＳ２０３で取得されたターゲット系列に含まれる１番目のターゲットに対応する２以上の音声合成単位情報を、音声合成単位情報格納部１０２から取得する。なお、ここで取得される音声合成単位情報は、音声合成単位情報の一部の情報（例えば、波形情報を除く情報など）でも良い。また、取得され得る音声合成単位情報の数は、一般的に多く、例えば、数千に及ぶこともある。
【００３６】
（ステップＳ２０５）ターゲットスコア算出部１０７は、カウンタｊに１を代入する。
【００３７】
（ステップＳ２０６）ターゲットスコア算出部１０７は、ステップＳ２０４で取得された２以上の音声合成単位情報の中に、ｊ番目の音声合成単位情報が存在するか否かを判断する。ｊ番目の音声合成単位情報が存在すればステップＳ２０７に行き、ｊ番目の音声合成単位情報が存在しなければステップＳ２０９に行く。
【００３８】
（ステップＳ２０７）ターゲットスコア算出部１０７は、ｊ番目の音声合成単位情報と、１番目のターゲットを用いて、ｊ番目の音声合成単位情報に対応するターゲットスコア（Lｔ（ｕ１（ｊ）））を算出し、メモリに配置する。なお、メモリ上では、ｊ番目の音声合成単位情報とターゲットスコア（Lｔ（ｕ１（ｊ）））が対応付くように格納される。
【００３９】
（ステップＳ２０８）ターゲットスコア算出部１０７は、カウンタｊを１、インクリメントする。ステップＳ２０６に戻る。
【００４０】
（ステップＳ２０９）単位選択部１０９は、ステップＳ２０７で算出されたターゲットスコアを降順にソートする。この場合、音声合成単位情報も、ターゲットスコアの降順にソートされることは言うまでもない。
【００４１】
（ステップＳ２１０）単位選択部１０９は、最終的な第二総合スコアが最大となるような波形情報を取得する処理である単位選択処理を行う。単位選択処理について、図３のフローチャートを用いて説明する。
【００４２】
（ステップＳ２１１）音声出力部１１０は、ステップＳ２１０で取得された２以上の波形情報を、テキスト受付部１０４が受け付けたテキストに対応する２以上の音要素の順に出力する。ここでの出力は、通常、音声出力である。ステップＳ２０１に戻る。
【００４３】
なお、図２のフローチャートにおいて、電源オフや処理終了の割り込みにより処理は終了する。
【００４４】
次に、ステップＳ２１０の単位選択処理について、図３のフローチャートを用いて説明する。
【００４５】
（ステップＳ３０１）単位選択部１０９は、カウンタｉに２を代入する。
【００４６】
（ステップＳ３０２）単位選択部１０９は、ビーム幅θを取得する。なお、ビーム幅θは、図示しない記憶媒体に予め格納されている、とする。
【００４７】
（ステップＳ３０３）単位選択部１０９は、取得されているターゲット系列の中に、ｉ番目のターゲットが存在するか否かを判断する。ｉ番目のターゲットが存在すればステップＳ３０４に行き、ｉ番目のターゲットが存在しなければステップＳ３０７に行く。
【００４８】
（ステップＳ３０４）単位選択部１０９は、（ｉ−１）番目のターゲットに対応する音要素とｉ番目のターゲットに対応する音要素との上界値を、上界値格納部１０３から取得する。
【００４９】
（ステップＳ３０５）単位選択部１０９は、高速選択処理を行い、ｉ番目ターゲットに対応する各音声合成単位情報の第二総合スコアを取得する。
【００５０】
（ステップＳ３０６）単位選択部１０９は、カウンタｉを１、インクリメントする。ステップＳ３０３に戻る。
【００５１】
（ステップＳ３０７）単位選択部１０９は、第二総合スコアを最大にする最後のターゲットに対応する音声合成単位情報を取得する。
【００５２】
（ステップＳ３０８）単位選択部１０９は、ステップＳ３０７で取得した音声合成単位情報に到達するまでのパス（経路）の情報を取得する。
【００５３】
（ステップＳ３０９）単位選択部１０９は、ステップＳ３０８で取得したパスに対応する全ての音声合成単位情報が有する波形情報を取得する。上位処理にリターンする。
【００５４】
次に、ステップＳ３０５の高速選択処理について図４のフローチャートを用いて説明する。
【００５５】
（ステップＳ４０１）音声合成単位情報取得部１０６は、ｉ番目のターゲットに対応する全ての音声合成単位情報を、音声合成単位情報格納部１０２から取得する。
【００５６】
（ステップＳ４０２）ターゲットスコア算出部１０７は、ステップＳ４０１で取得された音声合成単位情報ごとに、当該各音声合成単位情報の全部または一部と、ｉ番目のターゲットの全部または一部を用いて、音声合成単位情報とターゲットとの類似の度合いを示すターゲットスコアを算出する。ここでは、通常、２以上のターゲットスコアが算出される。
【００５７】
（ステップＳ４０３）単位選択部１０９は、ステップＳ４０２で取得された２以上のターゲットスコアをキーとして、音声合成単位情報を降順にソートする。
【００５８】
（ステップＳ４０４）単位選択部１０９は、カウンタｊに１を代入する。
【００５９】
（ステップＳ４０５）単位選択部１０９は、ステップＳ４０３でソートされた音声合成単位情報の中で、ｊ番目の音声合成単位情報が存在するか否かを判断する。ｊ番目の音声合成単位情報が存在すればステップＳ４０６に行き、ｊ番目の音声合成単位情報が存在しなければステップＳ４１２に行く。
【００６０】
（ステップＳ４０６）単位選択部１０９は、「ビーム幅θ>＝ｊ」を満たすか否かを判断する。「ビーム幅θ>＝ｊ」を満たせばステップＳ４０７に行き、「ビーム幅θ>＝ｊ」を満たさなければステップＳ４１０に行く。
【００６１】
（ステップＳ４０７）単位選択部１０９は、ｊ番目の音声合成単位情報について、パスを決定する処理を行う。このパス決定処理について、図５のフローチャートを用いて説明する。
【００６２】
（ステップＳ４０８）単位選択部１０９は、ステップＳ４０７で決定されたパスの情報を用いて、ｊ番目の音声合成単位情報について、第二総合スコアを算出し、ｊ番目の音声合成単位情報と対応付けて、メモリ上に蓄積する。単位選択部１０９は、第二総合スコアを算出する場合に、ステップＳ４０２で取得したターゲットスコアを使用する。このターゲットスコアは、ｊ番目の音声合成単位情報についてのターゲットスコアである。また、ここで、第二総合スコアをキーとして、降順に、音声合成単位情報をソートしておくことは好適である。θ番目に大きい第二総合スコアを有する音声合成単位情報を高速に取得するためである。
【００６３】
（ステップＳ４０９）単位選択部１０９は、カウンタｊを１、インクリメントする。ステップＳ４０５に戻る。
【００６４】
（ステップＳ４１０）単位選択部１０９は、ビーム幅処理を行う。ビーム幅処理について、図６のフローチャートを用いて説明する。
【００６５】
（ステップＳ４１１）単位選択部１０９は、処理を終了するか否か（終了フラグがＯＮであるか否か）を判断する。処理を終了するとの判断の場合はステップＳ４１２に行き、処理を終了しないとの判断の場合はステップＳ４０９に戻る。
【００６６】
（ステップＳ４１２）単位選択部１０９は、第二総合スコアをキーとして、音声合成単位情報をソートする。上位処理にリターンする。
【００６７】
次に、ステップＳ４０７のパス決定処理について、図５のフローチャートを用いて説明する。
【００６８】
（ステップＳ５０１）単位選択部１０９は、初期化処理を行う。初期化処理とは、カウンタｋに１を代入し、最大値に０を代入する処理である。なお、最大値とは、本フローチャートでは、今まで算出された第一総合スコアの最大値である。
【００６９】
（ステップＳ５０２）単位選択部１０９は、ｋ番目の前の音声合成単位情報が存在するか否かを判断する。ここで、ｉ番目のターゲットに対応する音声合成単位情報を処理している場合、前の音声合成単位情報とは、（ｉ−１）番目のターゲットに対応する音声合成単位情報である。
【００７０】
（ステップＳ５０３）単位選択部１０９は、上界値と、ｋ番目の前の音声合成単位情報（（ｉ−１）番目のターゲットに対応するｋ番目の音声合成単位情報）に対応する第二総合スコアを用いて、次の上限の第一総合スコアを算出する。単位選択部１０９は、例えば、「次の上限の第一総合スコア＝上界値＋ｋ番目の前の音声合成単位情報の第二総合スコア」により、次の上限の第一総合スコアを算出する。次の上限の第一総合スコアとは、ｉ番目のターゲットに対応する音声合成単位情報の第一総合スコアの上限の値である。なお、単位選択部１０９は、「次の上限の第一総合スコア＝ｆ（上界値，ｋ番目の前の音声合成単位情報の第二総合スコア）」により、次の上限の第一総合スコアを算出するが、関数ｆは、和であるとは限らず、２つのパラメータに重みを付けた和でも良いし、他の関数でも良い。ただし、関数ｆは、上界値、ｋ番目の前の音声合成単位情報の第二総合スコアのそれぞれをパラメータとする増加関数である。なお、（ｉ−１）番目のターゲットに対応する音声合成単位情報は、第一総合スコアをキーとして、降順にソートされている。
【００７１】
（ステップＳ５０４）単位選択部１０９は、「最大値<次の上限の第一総合スコア」を満たすか否かを判断する。かかる条件を満たせばステップＳ５０５に行き、満たさなければステップＳ５１０に行く。
【００７２】
（ステップＳ５０５）接続スコア算出部１０８は、ｋ番目の前の音声合成単位情報とｊ番目の音声合成単位情報（着目している音声合成単位情報）とを用いて、接続スコアを算出する。
【００７３】
（ステップＳ５０６）単位選択部１０９は、ｋ番目の前の音声合成単位情報に対応する第一総合スコアと、ステップＳ５０５で算出した接続スコアを用いて、次の第一総合スコアを算出する。次の第一総合スコアとは、ｊ番目の音声合成単位情報（着目している音声合成単位情報）の第一総合スコアである。
【００７４】
（ステップＳ５０７）単位選択部１０９は、「次の第一総合スコア>最大値」を満たすか否かを判断する。かかる条件を満たせばステップＳ５０８に行き、満たさなければステップＳ５０９に行く。なお、次の第一総合スコアとは、ステップＳ５０６で算出した第一総合スコアである。
【００７５】
（ステップＳ５０８）単位選択部１０９は、ステップＳ５０６で算出した次の第一総合スコアを、最大値として更新する。
【００７６】
（ステップＳ５０９）単位選択部１０９は、カウンタｋを１、インクリメントする。ステップＳ５０２に戻る。
【００７７】
（ステップＳ５１０）単位選択部１０９は、スコアが最大となる第一総合スコアに対応する前の音声合成単位情報を、ｊ番目の音声合成単位情報（着目している音声合成単位情報）へのパスとして登録する。上位処理にリターンする。パスとして登録した場合、バスの情報が蓄積される。なお、パスの情報は、例えば、音声合成単位情報のＩＤ列である。また、パスの情報は、例えば、音声合成単位情報の系列（集合）などでも良い。
【００７８】
次に、ステップＳ４１０のビーム幅処理について、図６のフローチャートを用いて説明する。
【００７９】
（ステップＳ６０１）単位選択部１０９は、θ番目に大きい第二総合スコアを取得する。
【００８０】
（ステップＳ６０２）単位選択部１０９は、前のターゲットについての音声合成単位情報の最大の第一総合スコアを取得する。処理中のターゲットがｉ番目のターゲットである場合、前のターゲットとは、（ｉ−１）番目のターゲットである。
【００８１】
（ステップＳ６０３）単位選択部１０９は、着目している音声合成単位情報について、ターゲットスコアを取得する。
【００８２】
（ステップＳ６０４）単位選択部１０９は、上界値と、ステップＳ６０２で取得した最大の第一総合スコアと、ステップＳ６０３で取得したターゲットスコアを用いて、上限となる第二総合スコアを算出する。
【００８３】
（ステップＳ６０５）単位選択部１０９は、「ステップＳ６０４で算出した上限の第二総合スコア>ステップＳ６０１で取得したθ番目に大きい第二総合スコア」を満たすか否かを判断する。かかる条件を満たせばステップＳ６０６に行き、満たさなければステップＳ６０９に行く。
【００８４】
（ステップＳ６０６）単位選択部１０９は、着目している音声合成単位情報について、パス決定処理を行う。
【００８５】
（ステップＳ６０７）単位選択部１０９は、θ番目に大きい第二総合スコアを、必要に応じて更新する。ステップＳ６０６で決定したパスに対応する第二総合スコアが、θ番目に大きい第二総合スコアより大きい場合、θ番目に大きい第二総合スコアが更新される。
【００８６】
（ステップＳ６０８）単位選択部１０９は、ｊを１、インクリメントする。上位処理にリターンする。
【００８７】
（ステップＳ６０９）単位選択部１０９は、終了フラグにＯＮを代入する。上位処理にリターンする。
【００８８】
以下、本実施の形態における音声合成装置の具体的な動作について説明する。
【００８９】
ターゲットモデル格納部１０１には、ターゲットモデルが格納されている。ターゲットモデルは、上述したように、例えば、テキストから得られる情報により、スペクトル、Ｆ０などの確率分布(あるいは代表値)を計算するしくみである。
【００９０】
また、音声合成単位情報格納部１０２は、図７に示す音声合成単位情報管理表を保持している。音声合成単位情報管理表は、１以上の音声合成単位情報を格納しており、「ＩＤ」「コンテキスト付音素」「特徴量情報（メルケプストラム）」「波形情報」の属性を有する。
【００９１】
さらに、上界値格納部１０３は、図８に示す上界値管理表を保持している。上界値管理表は、上界値情報を２以上格納しており、「ＩＤ」「前音素」「後音素」「上界値」の属性を有する。上界値情報は、「前音素」の属性値で示される音要素と、「後音素」の属性値で示される音要素が接続される場合の最大の接続スコアが、「上界値」の属性値である、ということを意味する。
【００９２】
かかる状況において、音声合成装置に対して、ユーザは、例えば、テキスト「おはよう」を入力した、とする。そして、音声合成装置のテキスト受付部１０４は、テキスト「おはよう」を受け付ける。
【００９３】
次に、テキスト処理部１０５は、テキスト受付部１０４が受け付けたテキスト「おはよう」を区切り、当該テキストに対応する繋がりを有する２以上のコンテキスト付音素（「ｓｉｌ−ｓｉｌ−ｏ」「ｓｉｌ−ｏ−ｈ」「ｏ−ｈ−ａ」「ｈ−ａ−ｙ」「ａ−ｙ−ｏ」「ｙ−ｏ−ｏ」「ｏ−ｏ−ｓｉｌ」「ｏ−ｓｉｌ−ｓｉｌ」）を取得する。なお、２以上のコンテキスト付音素をコンテキスト付音素列ということとする。また、コンテキスト付音素列は、順序の情報を有する２以上のコンテキスト付音素である。
【００９４】
次に、テキスト処理部１０５は、ターゲットモデルを参照して、図９に示すような構造を有するターゲット系列を取得する。ターゲット系列は、１以上のターゲットの集合であり、ここでは、「ＩＤ」「コンテキスト付音素」「時間長情報（ｍｓ）」「音高情報Ｆ０（Ｈｚ）」「特徴量情報（メルケプストラム）」の属性を有する。「ＩＤ」は、レコードを識別する情報である。「コンテキスト付音素」は、コンテキスト付きの音素が管理される属性である。なお、コンテキスト付きの音素は、音要素の一例である。「時間長情報（ｍｓ）」は、継続時間長情報が管理される属性であり、単位はｍｓである。「音高情報Ｆ０（Ｈｚ）」は、音高情報が管理される属性であり、ここでは、基本周波数（Ｆ０）が管理される属性である。「特徴量情報（メルケプストラム）」は、例えば、３６次のメルケプストラムで、音素に対応するフレーム数の分だけ、存在する。また、「特徴量情報（メルケプストラム）」は、例えば、−３状態や５状態等のＨＭＭでモデル化して、その状態数分のベクトルをもつ情報である。なお、テキスト処理部１０５における処理は公知技術であるので、詳細な説明を省略する。
【００９５】
次に、音声合成単位情報取得部１０６は、取得されたターゲット系列に含まれる１番目のターゲット（図９のターゲット系列の「ＩＤ＝１」のレコード）に対応する２以上の音声合成単位情報（図７の「ＩＤ＝１」「ＩＤ＝２」・・・・のレコード）を、図７の音声合成単位情報管理表から取得する。なお、音声合成単位情報取得部１０６は、１番目のターゲットが有するコンテキスト付音素を含むすべての音声合成単位情報を、図７の音声合成単位情報管理表から取得する。
【００９６】
次に、ターゲットスコア算出部１０７は、図９のターゲット系列の「ＩＤ＝１」のターゲット（例えば、特徴量情報）と、図７の「ＩＤ＝１」「ＩＤ＝２」・・・・の各音声合成単位情報（例えば、特徴量情報）とを用いて、音声合成単位情報ごとに、ターゲットスコア（Ｌｔ（ｕ１（ｋ）））［ｋ＝１，２，・・・］を算出する。そして、例えば、図７のＩＤとターゲットスコアを対にして、メモリ上に一時格納する。なお、「Ｌｔ」はターゲットスコアを示す。「ｕ１」は、１番目のコンテキスト付音素を示す。「ｋ」は、音声合成単位情報の番号を示す。（Ｌｔ（ｕ１（１）））は、１番目のコンテキスト付音素の１番目の音声合成単位情報のターゲットスコアを示す。なお、ターゲットスコア算出部１０７は、上述したように、例えば、音声合成単位情報が有する特徴量情報とターゲットが有する特徴量情報とのユーグリッド距離に−１を乗算した値を算出し、ターゲットスコアとする。
【００９７】
次に、単位選択部１０９は、算出されたターゲットスコアを降順にソートする。そして、単位選択部１０９は、図１０に示す、１番目のコンテキスト付音素に対応する音声合成単位情報のターゲットスコア管理表を得る。ターゲットスコア管理表において、「ＩＤ」は、音声合成単位情報管理表のＩＤである。ここで得られたターゲットスコアは、１番目のターゲットに対応する、各音声合成単位情報の第二総合スコアである。
【００９８】
次に、単位選択部１０９は、以下のように、最終的な第二総合スコアが最大となるような波形情報を取得する処理である単位選択処理を行う。
【００９９】
まず、単位選択部１０９は、ビーム幅「５００」を取得する。なお、単位選択部１０９は、予め、ビーム幅「５００」を格納している、とする。
【０１００】
次に、単位選択部１０９は、１番目のターゲットに対応するコンテキスト付音素（「ｓｉｌ−ｓｉｌ−ｏ」）と２番目のターゲットに対応するコンテキスト付音素（「ｓｉｌ−ｏ−ｈ」）との上界値「５８」を、図８の上界値情報管理表から取得し、メモリ上に配置する。
【０１０１】
次に、単位選択部１０９等は、以下に示すような高速選択処理を行い、２番目ターゲットに対応する各音声合成単位情報の第二総合スコアを取得する。つまり、まず、音声合成単位情報取得部１０６は、２番目のターゲット（コンテキスト付音素「ｓｉｌ−ｏ−ｈ」が含まれるターゲット）に対応する全ての音声合成単位情報を、コンテキスト付音素「ｓｉｌ−ｏ−ｈ」をキーとして検索し、図７の音声合成単位情報管理表から取得する。そして、音声合成単位情報取得部１０６は、「ＩＤ＝３８４」「ＩＤ＝３８５」などのレコードを取得し、メモリ上に配置する。
【０１０２】
次に、ターゲットスコア算出部１０７は、取得された音声合成単位情報（「ＩＤ＝３８４」「ＩＤ＝３８５」などのレコード）ごとに、当該各音声合成単位情報の全部または一部と、２番目のターゲットの全部または一部（特徴量情報など）を用いて、音声合成単位情報とターゲットとの類似の度合いを示すターゲットスコアを算出する。
【０１０３】
次に、単位選択部１０９は、取得された２以上のターゲットスコアをキーとして、音声合成単位情報を降順にソートし、図１０に示すような構造を有するターゲットスコア管理表を得る。
【０１０４】
次に、単位選択部１０９は、ビーム幅「５００」になるまで、ターゲットスコアが大きい順に、２番目のターゲットに対応する多数の音声合成単位情報のうちの一つの音声合成単位情報に着目し、音声合成単位情報ごとに、以下のようなパス決定処理を行う。
【０１０５】
まず、単位選択部１０９は、１番目のターゲットに対応する音声合成単位情報の中で、最大の第二総合スコア（ここでは、１番目のターゲットに対応する音声合成単位情報のターゲットスコアと同じ）「９８」を取得する。そして、単位選択部１０９は、上界値「５８」と、１番目の前の音声合成単位情報に対応する第二総合スコア「９８」を用いて、次の上限の第一総合スコアを算出する。ここでは、単位選択部１０９は、例えば、「次の上限の第一総合スコア＝上界値＋第二総合スコア」により、次の上限の第一総合スコア「１５６」を算出する。
【０１０６】
次に、単位選択部１０９は、「最大値<次の上限の第一総合スコア」を満たすか否かを判断する。ここで、最大値は「０」（初期値）であるので、単位選択部１０９は、「最大値<次の上限の第一総合スコア」を満たすと判断する。
【０１０７】
そして、接続スコア算出部１０８は、１番目の前の音声合成単位情報と１番目の音声合成単位情報とを用いて、接続スコア（例えば、「４７」）を算出し、メモリ上に配置する。
【０１０８】
次に、単位選択部１０９は、１番目の前の音声合成単位情報に対応する第一総合スコア「９８」と、算出した接続スコア「４７」を用いて、次の第二総合スコアを算出する。ここで、単位選択部１０９は、例えば、「次の第二総合スコア＝第一総合スコア＋接続スコア」により、「１４５」と次の第一総合スコアを算出する、とする。
【０１０９】
次に、単位選択部１０９は、「次の第一総合スコア>最大値」を満たすか否かを判断する。ここで、次の第一総合スコア「１４５」、最大値「０」であるので、単位選択部１０９は、「次の第一総合スコア>最大値」を満たす、と判断する。そして、単位選択部１０９は、算出した次の第一総合スコア「１４５」を、最大値として更新する。
【０１１０】
次に、単位選択部１０９は、１番目のターゲットに対応する２番目の大きさの第二総合スコア「９４」を取得する。そして、単位選択部１０９は、上界値「５８」と、２番目の大きさの第二総合スコア「９４」を用いて、次の上限の第一総合スコアを「１５２」と算出する。
【０１１１】
次に、単位選択部１０９は、「最大値<次の上限の第一総合スコア」を満たすか否かを判断する。ここで、最大値は「１４５」であるので、単位選択部１０９は、「最大値<次の上限の第一総合スコア」を満たすと判断する。
【０１１２】
そして、接続スコア算出部１０８は、２番目の前の音声合成単位情報と１番目の音声合成単位情報とを用いて、接続スコア（例えば、「５５」）を算出し、メモリ上に配置する。
【０１１３】
次に、単位選択部１０９は、２番目の前の音声合成単位情報に対応する第二総合スコア「９４」と、算出した接続スコア「５５」を用いて、次の第一総合スコア「１４９」を算出する。
【０１１４】
次に、単位選択部１０９は、「次の第一総合スコア>最大値」を満たすか否かを判断する。ここで、次の第一総合スコア「１４９」、最大値「１４５」であるので、単位選択部１０９は、「次の第一総合スコア>最大値」を満たす、と判断する。そして、単位選択部１０９は、算出した次の第一総合スコア「１４９」を、最大値として更新する。
【０１１５】
そして、以降、単位選択部１０９は、１番目のターゲットに対応する３番目以降の大きさの第二総合スコアを、順次、取得する。そして、単位選択部１０９は、上界値「５８」と、３番目以降の大きさの第二総合スコアを用いて、上記と同様の処理を、順次行っていく。
【０１１６】
そして、単位選択部１０９が、１番目のターゲットに対応する第二総合スコアであり、小さな値である第二総合スコアと上界値「５８」を用いて算出した次の上限の第一総合スコアが、最大値（次の第一総合スコアの最大値）より小さくなる、と判断した場合（ステップＳ５０４参照）、単位選択部１０９は、判断した以降の音声合成単位情報であり、１番目のターゲットに対応する音声合成単位情報の第二総合スコアを取得して、接続スコアを算出するなどの処理を行わない。
【０１１７】
そして、単位選択部１０９は、スコアが最大となる第一総合スコアに対応する前の音声合成単位情報を、１番目の音声合成単位情報（２番目のターゲットに対応する１番目の音声合成単位情報）へのパスとして登録する。
【０１１８】
次に、単位選択部１０９は、単位選択部１０９は、決定されたパスの情報を用いて、１番目の音声合成単位情報について、第二総合スコアを算出し、１番目の音声合成単位情報と対応付けて、メモリ上に蓄積する。なお、第二総合スコアは、スコアが最大となる第一総合スコアとターゲットスコア（算出済み）を用いて、取得される。
【０１１９】
以上の処理の概念を記載した図が図１１である。図１１において、「Ｓ＊」は、前のターゲット（（ｉ−１）番目のターゲット）に対応する第二総合スコアであり、帯の長さが第二総合スコアの大きさを示す。また、図１１において、「Ｌｃ」は、接続スコアを示す。また、「ｕｂｏｕｎｄ  Ｌｃ」は、上界値を示す。さらに、「ｋ」は、前のターゲット（（ｉ−１）番目のターゲット）に対応する音声合成単位情報であり、当該音声合成単位情報は、第二総合スコアの降順にソートされている。
【０１２０】
図１１において、単位選択部１０９は、４番目以降の第二総合スコアを持つ、前のターゲット（（ｉ−１）番目のターゲット）に対応する音声合成単位情報については、処理を打ち切っている。３番目までの第二総合スコアを持つ、前のターゲット（（ｉ−１）番目のターゲット）に対応する音声合成単位情報に対する処理により得られた第一総合スコアには、４番目以降の第二総合スコアに上界値を加えても届かないからである。なお、ここでは、ｉ番目のターゲットに対応する音声合成単位情報の第一総合スコアは、（ｉ−１）番目のターゲットに対応する音声合成単位情報の第二総合スコアと上界値との和である。
【０１２１】
つまり、ここでは、第二総合スコア（Ｓ＊（ｕｉ（ｋ））は、例えば、以下の数式１により算出される。数式１において、右辺の第１項であるｍａｘ｛｝内の第１項は、前のターゲット（（ｉ−１）番目のターゲット）に対応する一つの音声合成単位情報に到達するためのスコアである第二総合スコア、ｍａｘ｛｝内の第２項は接続スコアである。また、右辺の第２項は、現在のターゲット（ｉ番目のターゲット）における、着目している音声合成単位情報のターゲットスコアである。
【数１】
2009237422.tif 000003
【０１２２】
また、本音声合成装置において、数式１を適用し、第二総合スコアを算出する場合に、数式２を用いた判断を行い、前のターゲットに対応する、すべての音声合成単位情報に対応する接続スコアを算出したり、第二総合スコアを算出したりする無駄を防止している。なお、数式２において、ｕｂｏｕｎｄｘは、ｘのある上界値を表す。
【数２】
2009237422.tif 000004
【０１２３】
なお、数式２において、左辺の第１項は、前のターゲットに対応する一の第二総合スコア、左辺の第２項は、上界値である。また、数式２において、右辺の式（ｍａｘ｛｝内）は、現在のターゲットにおける、今まで算出した第一総合スコアの最大値である。
【０１２４】
以上の処理を、ビーム幅「５００」の分の音声合成単位情報に対して行う。そして、ビーム幅を超える分の音声合成単位情報に対して、以下のように処理を行う。まず、５０１番目の音声合成単位情報に対する処理を行う。
【０１２５】
つまり、まず、単位選択部１０９は、θ番目に大きい第二総合スコアを取得し、メモリ上に配置する。ここで、θ番目に大きい第二総合スコアは、「２７７」である、とする。
【０１２６】
次に、単位選択部１０９は、前のターゲットについての音声合成単位情報の最大の第一総合スコア（ｍａｘＳ＊）を取得する。ここで、例えば、最大の第一総合スコア（ｍａｘＳ＊）を「１４９」である、とする。
【０１２７】
次に、単位選択部１０９は、着目している音声合成単位情報（５０１番目の音声合成単位情報）について、ターゲットスコアを取得する。なお、ターゲットスコアについては、既に算出されており、例えば、「４４」である、とする。
【０１２８】
次に、単位選択部１０９は、上界値「８８」と、取得した最大の第一総合スコア「１４９」と、ターゲットスコア「４４」を用いて、上限となる第二総合スコア「２８１」（ここでは、和を算出）を算出する。
【０１２９】
次に、単位選択部１０９は、「上限となる第二総合スコア「２８１」>θ番目に大きい第二総合スコア「２７７」」を満たすか否かを判断する。ここで、単位選択部１０９は、この条件を満たす、と判断する。
【０１３０】
そして、単位選択部１０９は、上記で説明したパス決定処理を行う。そして、算出した第二総合スコアが「２８０」であった、とする。
【０１３１】
そして、例えば、単位選択部１０９は、θ番目に大きい第二総合スコアを、この「２８０」に更新する、とする。つまり、第二総合スコア「２８０」がθ番目に大きい第二総合スコアであり、第二総合スコア「２７７」が（θ＋１）番目に大きい第二総合スコアとなった、とする。なお、ここでは、θは５００である。
【０１３２】
次に、５０２番目の音声合成単位情報に対する処理を行う。
【０１３３】
まず、単位選択部１０９は、θ番目に大きい第二総合スコア「２８０」を取得し、メモリ上に配置する。
【０１３４】
次に、単位選択部１０９は、前のターゲットについての音声合成単位情報の最大の第一総合スコア（ｍａｘＳ＊）を取得する。ここで、例えば、最大の第一総合スコア（ｍａｘＳ＊）を「１４９」である、とする。
【０１３５】
次に、単位選択部１０９は、着目している音声合成単位情報（５０１番目の音声合成単位情報）について、ターゲットスコアを取得する。なお、ターゲットスコアについては、既に算出されており、例えば、「３２」である、とする。
【０１３６】
次に、単位選択部１０９は、上界値「８８」と、取得した最大の第一総合スコア「１４９」と、ターゲットスコア「３２」を用いて、最大となる第二総合スコア「２６９」（ここでは、和を算出）を算出する。
【０１３７】
次に、単位選択部１０９は、「最大となる第二総合スコア「２６９」>θ番目に大きい第二総合スコア「２８０」」を満たすか否かを判断する。ここで、単位選択部１０９は、この条件を満たさない、と判断する。
【０１３８】
そして、ビーム幅（θ）分の音声合成単位情報の決定処理を終了する。
【０１３９】
以上の処理の概念を記載した図が図１２である。図１２において、一のターゲットに対応する音声合成単位情報を限定されたθ個（ここでは、５００個）のみ残す場合に、すべての第二総合スコアを算出することなく、θ個の音声合成単位情報を決定する処理を説明している。図１２において、「ｍａｘＳ＊」は、着目するターゲットの前のターゲットにおける最大の第二総合スコアである。そして、図１２は、θ番目の第二総合スコアと、前のターゲットにおける最大の第二総合スコア（ｍａｘＳ＊）、上界値（ｕｂｏｕｎｄＬｃ）、ターゲットスコア（Ｌｔ）との和とを比較し、当該和がθ番目の第二総合スコアより小さい場合に、この音声合成単位情報以降の処理を打ち切る、ことを説明している。
【０１４０】
つまり、単位選択部１０９は、以下の数式３を満たさなかった時点で、処理を終了する。数式３において、左辺の第１項は、着目するターゲットの前のターゲットにおける最大の第二総合スコアである。また、左辺の第２項は上界値、第３項はターゲットスコアである、右辺は、θ番目の第二総合スコアである。
【数３】
2009237422.tif 000005
【０１４１】
以上の処理により、ビーム幅（θ）分の個数の音声合成単位情報が残り、かつ、第二総合スコアが、音声合成単位情報ごとに算出され、少なくともメモリ等に一時記憶された。
【０１４２】
以上の処理を、３番目から８番目までのターゲットについても行い、８番目のターゲットでの、最大の第二総合スコアとなる音声合成単位情報、および、その音声合成単位情報に至るまでのパスの情報を取得する。このパスのイメージ図を、図１３に示す。
【０１４３】
そして、単位選択部１０９は、取得したパスに対応する全ての音声合成単位情報が有する波形情報を取得し、メモリ上に配置する。
【０１４４】
次に、音声出力部１１０は、取得された２以上の波形情報を、テキスト受付部１０４が受け付けたテキストに対応する２以上のコンテキスト付音素の順（「ｓｉｌ−ｓｉｌ−ｏ」「ｓｉｌ−ｏ−ｈ」「ｏ−ｈ−ａ」「ｈ−ａ−ｙ」「ａ−ｙ−ｏ」「ｙ−ｏ−ｓｉｌ」「ｏ−ｓｉｌ−ｓｉｌ」）に出力する。そして、流暢な「おはよう」が音声出力される。
【０１４５】
次に、本音声合成装置の実験結果について説明する。本実験において、以下の条件で、音声合成装置は、テキスト「Yes,I'd like to  leave in the morning.」を受け付けた。
【０１４６】
条件とは、以下である。音声合成単位データベースは、ＣＭＵ  Ａｒｃｔｉｃ音声データベースのうち、女声話者ＳＬＴの音声を用いて作成された。これは、１１３２発話からなっている。総継続時間長は、約５０分である。ターゲットモデルと接続モデルは、すべて、このデータベースを用いて学習している。スペクトルを表す特徴量としては、１４次元のＭＦＣＣ係数を主成分分析で８次元に変換したものを用いている。Ｆ０および継続時間長については、変換は行わず、基本周波数、および秒であらわされた時間そのものを用いている。音素の種類について、５０種類の音素を使用しており、接続スコアの上界値のテーブルは、５０×５０のエントリーからなる。
【０１４７】
かかる場合、第１の高速化法（接続スコアの上界値を利用して、Viterbiサーチにおける局所最大化処理を、結果を変えることなく途中で打ち切る処理）の効果を図１４に示す。図１４において、「ビーム幅」「局所最大化数」「打ち切り処理数（％）」「すべての仮説の数」「処理された仮説数（％）」の属性を有する。「局所最大化数」は、単位選択部１０９が第１の高速化法を採らずに処理を行った場合の、Viterbiサーチにおける局所最大化の処理回数を示す。「打ち切り処理数（％）」は、本願の発明にかかる方法による打ち切りの発生した局所最大化処理の数（割合）を示す。「全音素数」は、第１の高速化法を採らずに処理を行った場合の、局所最大化処理において検査される音素数を示す。（「処理音素数％」）は、第１の高速化法を採った場合の、局所最大化処理において検査された（割合）音素数（割合）を示す。図１４によれば、ビーム幅が大きいほど、第１の高速化法による高速化の効果が大きくなっている。
【０１４８】
また、第２の高速化法（接続スコアの上界値を利用して、Viterbiビームサーチにおけるビーム幅までの仮説を生成する処理を、結果を変えることなく途中で打ち切る処理）の効果を図１５に示す。図１５において、「ビーム幅」「検索した音声合成単位情報の数」「検査した音声合成単位情報の数（％）」の属性を有する。「検索した音声合成単位情報の数」は、ＤＢ（音声合成単位情報格納部１０２）から取得した音声合成単位情報の数である。「検査した音声合成単位情報の数（％）」は、チェックした音声合成単位情報の数（割合）である。図１５によれば、ビーム幅が小さいほど、第２の高速化法による高速化の効果が大きくなっている。
【０１４９】
以上、本実施の形態によれば、音声合成処理を高速化できる。
【０１５０】
さらに、具体的には、接続スコアの上界値を用いて、局所最大化処理を途中で打ち切ることにより、音声合成処理を高速化できる。
【０１５１】
また、いわゆるビーム幅の取得処理を途中で打ち切ることにより、音声合成処理を高速化できる。
【０１５２】
なお、本実施の形態において、音声合成単位情報とターゲットとの類似の度合いを示すターゲットスコア、２つの音声合成単位情報の接続の適切さの度合いを示す接続スコア、および第一総合スコア、第二総合スコアと言う具合に、音声合成装置は、適切さを示す値である「スコア」を用いた。しかし、音声合成装置は、不適切さを示す値（例えば、「コスト」）を用いても良い。音声合成装置は、コストという値を用いて、上記で説明した第１、第２の高速化法を用いることもできる。スコアとコストは、単に、考え方が逆（例えば、コスト＝１／スコア）であるからである。
【０１５３】
また、本実施の形態において、ターゲットスコア、接続スコア、第一総合スコア、第二総合スコアの算出方法（算出するための演算式）は、種々考えられる。
【０１５４】
また、本実施の形態において、第１の高速化法と第２の高速化法による音声合成処理の高速化を行った。しかし、第１の高速化法と第２の高速化法のいずれか一方の高速化法のみを適用しても良いことは言うまでもない。
【０１５５】
さらに、本実施の形態における処理は、ソフトウェアで実現しても良い。そして、このソフトウェアをソフトウェアダウンロード等により配布しても良い。また、このソフトウェアをＣＤ−ＲＯＭなどの記録媒体に記録して流布しても良い。なお、このことは、本明細書における他の実施の形態においても該当する。なお、本実施の形態における音声合成装置を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、記憶媒体に、音の要素である音要素と当該音要素の１以上の特徴量を示すスペクトル特徴量情報と当該音情報を示す波形の情報である波形情報とを有する２以上の音声合成単位情報と、２つの音要素の接続の適切さの度合いを示す接続スコアの最大値または当該最大値より大きい値である上界値を、２つの音要素ごとに格納しており、コンピュータを、テキストを受け付けるテキスト受付部と、前記テキスト受付部が受け付けたテキストを区切り、当該テキストに対応する繋がりを有する２以上の音要素を取得し、当該２以上の音要素ごとに、当該各音要素に対応する２以上のターゲットであり、音の要素である音要素と音要素の長さを示す継続時間長情報と音要素の音の高さを示す音高情報と音要素の１以上のスペクトルの概形に関する特徴を表すスペクトル特徴量情報とを有する２以上のターゲットの繋がりであるターゲット系列を取得するテキスト処理部と、前記テキスト処理部が取得した２以上のターゲットごとに、当該各ターゲットに含まれる音要素と同一の音要素を含む１以上の音声合成単位情報の全部または一部を、前記音声合成単位情報格納部から取得する音声合成単位情報取得部と、前記ターゲットごとに、前記音声合成単位情報取得部が取得した音声合成単位情報の全部または一部と前記テキスト処理部が取得したターゲットの全部または一部を用いて、音声合成単位情報とターゲットとの類似の度合いを示すターゲットスコアを算出するターゲットスコア算出部と、前記音声合成単位情報取得部が取得した２以上の音声合成単位情報の全部または一部を用いて、２つの音声合成単位情報の接続の適切さの度合いを示す接続スコアを、音要素の接続ごとに算出する接続スコア算出部と、前記テキスト処理部が取得した繋がりを有する２以上の音要素の音要素ごとに、最初の音要素から順に、音要素に対応する１以上の音声合成単位情報のうちの、各音声合成単位情報が選択された場合の総合的なスコアである第二総合スコアを、前記ターゲットスコア算出部が算出したターゲットスコアと、前記接続スコア算出部が算出した接続スコアを用いて算出し、前記第二総合スコアが最大になる最終の音要素に対応する音声合成単位情報、および当該最終の音要素に対応する音声合成単位情報が選択されるまでの最大の第二総合スコアを構成するためのすべての音声合成単位情報を決定し、当該最初の音要素に対応する音声合成単位情報から最後の音要素に対応する音声合成単位情報に含まれる２以上の波形情報を取得する単位選択部と、前記単位選択部が選択した２以上の波形情報を、前記テキスト受付部が受け付けたテキストに対応する２以上の音要素の順に出力する音声出力部として機能させるためのプログラムであって、前記単位選択部は、（ｉ−１）番目の音要素とｉ番目の音要素との接続スコアの最大値または当該最大値より大きい値である上界値を、前記上界値格納部から取得し、ｉ番目の音要素に到着するまでの第一総合スコアを算出する場合に、（ｉ−１）番目の音要素に到着するまでの第二総合スコアを降順にソートし、（ｉ−１）番目の音要素に到着するまでの第二総合スコアの大きい音声合成単位情報から順に、ｉ番目の音要素に対応する音声合成単位情報との接続スコアを、前記接続スコア算出部に算出させて、取得し、当該接続スコアと（ｉ−１）番目の音要素に到着するまでの第二総合スコアを用いて、次の総合的なスコアである第一総合スコアを算出し、今までに算出した第一総合スコアの最大値を記憶し、次に大きな（ｉ−１）番目の音要素に到着するまでの第二総合スコアに対応する音声合成単位情報を処理する場合に、当該第二総合スコアと前記取得した上界値を用いて算出したスコアが、前記今までに算出した第一総合スコアの最大値より小さいか否かを判断し、前記算出したスコアが、前記今までに算出した第一総合スコアの最大値より小さいと判断した以降の、（ｉ−１）番目の音要素に到着するまでの総合スコアの小さい音声合成単位情報に対する処理は行わないように機能させるためのプログラムである。
【０１５６】
また、本実施の形態における音声合成装置を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、記憶媒体に、音の要素である音要素と当該音要素の１以上の特徴量を示すスペクトル特徴量情報と当該音情報を示す波形の情報である波形情報とを有する２以上の音声合成単位情報と、２つの音要素の接続の適切さの度合いを示す接続スコアの最大値または当該最大値より大きい値である上界値を、２つの音要素ごとに格納しており、コンピュータを、テキストを受け付けるテキスト受付部と、前記テキスト受付部が受け付けたテキストを区切り、当該テキストに対応する繋がりを有する２以上の音要素を取得し、当該２以上の音要素ごとに、当該各音要素に対応する２以上のターゲットであり、音の要素である音要素と音要素の長さを示す継続時間長情報と音要素の音の高さを示す音高情報と音要素の１以上のスペクトルの概形に関する特徴を表すスペクトル特徴量情報とを有する２以上のターゲットの繋がりであるターゲット系列を取得するテキスト処理部と、前記テキスト処理部が取得した２以上のターゲットごとに、当該各ターゲットに含まれる音要素と同一の音要素を含む１以上の音声合成単位情報の全部または一部を、前記音声合成単位情報格納部から取得する音声合成単位情報取得部と、前記ターゲットごとに、前記音声合成単位情報取得部が取得した音声合成単位情報の全部または一部と前記テキスト処理部が取得したターゲットの全部または一部を用いて、音声合成単位情報とターゲットとの類似の度合いを示すターゲットスコアを算出するターゲットスコア算出部と、前記音声合成単位情報取得部が取得した２以上の音声合成単位情報の全部または一部を用いて、２つの音声合成単位情報の接続の適切さの度合いを示す接続スコアを、音要素の接続ごとに算出する接続スコア算出部と、前記テキスト処理部が取得した繋がりを有する２以上の音要素の音要素ごとに、最初の音要素から順に、音要素に対応する１以上の音声合成単位情報のうちの、各音声合成単位情報が選択された場合の総合的なスコアである第二総合スコアを、前記ターゲットスコア算出部が算出したターゲットスコアと、前記接続スコア算出部が算出した接続スコアを用いて算出し、前記第二総合スコアが最大になる最終の音要素に対応する音声合成単位情報、および当該最終の音要素に対応する音声合成単位情報が選択されるまでの最大の第二総合スコアを構成するためのすべての音声合成単位情報を決定し、当該最初の音要素に対応する音声合成単位情報から最後の音要素に対応する音声合成単位情報に含まれる２以上の波形情報を取得する単位選択部と、前記単位選択部が選択した２以上の波形情報を、前記テキスト受付部が受け付けたテキストに対応する２以上の音要素の順に出力する音声出力部として機能させるためのプログラムであって、前記単位選択部は、ｉ番目の音要素に到着するまでの音声合成単位情報の候補を、総合スコアが大きい順にθ個までに絞って取得するものであり、（ｉ−１）番目の音要素とｉ番目の音要素との接続スコアの最大値または当該最大値より大きい値である上界値を、前記上界値格納部から取得し、ｉ番目の音要素に対応する各ターゲットのターゲットスコアを、���番目の音要素に対応するすべての音声合成単位情報に対して、前記ターゲットスコア算出部に取得させ、当該取得させた１以上のターゲットスコアを降順にソートし、ターゲットスコアのスコアの大きい順に、（ｉ−１）番目の音要素とｉ番目の音要素に対応する音声合成単位情報との接続スコアを、前記接続スコア算出部に算出させて、取得し、ターゲットスコアのスコアの大きい順に、（ｉ−１）番目の音要素に到着するまでの第二総合スコアと当該ターゲットスコアと前記接続スコアとを用いて、次の第二総合スコアを算出し、当該次の第二総合スコアを降順にソートし、θ番目に大きい次の第二総合スコアを記憶し、θ番目以降の音声合成単位情報について、（ｉ−１）番目の音要素に到着するまでの最大の第二総合スコアとターゲットスコアと上界値とを用いてスコアを算出し、当該スコアが前記θ番目の次の総合スコアより小さくなった以降の音声合成単位情報の処理を行わないように機能させるためのプログラムである。
【０１５７】
また、図１６は、本明細書で述べたプログラムを実行して、上述した実施の形態の音声合成装置等を実現するコンピュータの外観を示す。上述の実施の形態は、コンピュータハードウェア及びその上で実行されるコンピュータプログラムで実現され得る。図１６は、このコンピュータシステム３４０の概観図であり、図１７は、コンピュータシステム３４０の内部構成を示す図である。
【０１５８】
図１６において、コンピュータシステム３４０は、ＦＤドライブ３４１１、ＣＤ−ＲＯＭドライブ３４１２を含むコンピュータ３４１と、キーボード３４２と、マウス３４３と、モニタ３４４と、マイク３４５と、スピーカー３４６を含む。
【０１５９】
図１７において、コンピュータ３４１は、ＦＤドライブ３４１１、ＣＤ−ＲＯＭドライブ３４１２に加えて、ＭＰＵ３４１３と、ＣＤ−ＲＯＭドライブ３４１２及びＦＤドライブ３４１１に接続されたバス３４１４と、ブートアッププログラム等のプログラムを記憶するためのＲＯＭ３４１５と、ＭＰＵ３４１３に接続され、アプリケーションプログラムの命令を一時的に記憶するとともに一時記憶空間を提供するためのＲＡＭ３４１６と、アプリケーションプログラム、システムプログラム、及びデータを記憶するためのハードディスク３４１７とを含む。ここでは、図示しないが、コンピュータ３４１は、さらに、ＬＡＮへの接続を提供するネットワークカードを含んでも良い。
【０１６０】
コンピュータシステム３４０に、上述した実施の形態の音声合成装置等の機能を実行させるプログラムは、ＣＤ−ＲＯＭ３５０１、またはＦＤ３５０２に記憶されて、ＣＤ−ＲＯＭドライブ３４１２またはＦＤドライブ３４１１に挿入され、さらにハードディスク３４１７に転送されても良い。これに代えて、プログラムは、図示しないネットワークを介してコンピュータ３４１に送信され、ハードディスク３４１７に記憶されても良い。プログラムは実行の際にＲＡＭ３４１６にロードされる。プログラムは、ＣＤ−ＲＯＭ３５０１、ＦＤ３５０２またはネットワークから直接、ロードされても良い。
【０１６１】
プログラムは、コンピュータ３４１に、上述した実施の形態の音声合成装置等の機能を実行させるオペレーティングシステム（ＯＳ）、またはサードパーティープログラム等は、必ずしも含まなくても良い。プログラムは、制御された態様で適切な機能（モジュール）を呼び出し、所望の結果が得られるようにする命令の部分のみを含んでいれば良い。コンピュータシステム３４０がどのように動作するかは周知であり、詳細な説明は省略する。
【０１６２】
また、上記プログラムを実行するコンピュータは、単数であってもよく、複数であってもよい。すなわち、集中処理を行ってもよく、あるいは分散処理を行ってもよい。
【０１６３】
また、上記実施の形態において、各処理（各機能）は、単一の装置（システム）によって集中処理されることによって実現されてもよく、あるいは、複数の装置によって分散処理されることによって実現されてもよい。
【０１６４】
本発明は、以上の実施の形態に限定されることなく、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。
【産業上の利用可能性】
【０１６５】
以上のように、本発明にかかる音声合成装置は、処理を高速化できる、という効果を有し、波形接続型音声合成装置等として有用である。
【図面の簡単な説明】
【０１６６】
【図１】同音声合成装置のブロック図
【図２】同音声合成装置の動作について説明するフローチャート
【図３】同単位選択処理の動作について説明するフローチャート
【図４】同高速選択処理の動作について説明するフローチャート
【図５】同パス決定処理の動作について説明するフローチャート
【図６】同ビーム幅処理の動作について説明するフローチャート
【図７】同音声合成単位情報管理表を示す図
【図８】同上界値管理表を示す図
【図９】同ターゲット系列を示す図
【図１０】同ターゲットスコア管理表を示す図
【図１１】同第１の高速化の概念を示す図
【図１２】同第２の高速化の概念を示す図
【図１３】同選択されたパスのイメージ図
【図１４】同第１の高速化法の効果を示す図
【図１５】同第２の高速化法の効果を示す図
【図１６】同コンピュータシステムの概観図
【図１７】同コンピュータシステムの内部構成を示す図
【符号の説明】
【０１６７】
１０１  ターゲットモデル格納部
１０２  音声合成単位情報格納部
１０３  上界値格納部
１０４  テキスト受付部
１０５  テキスト処理部
１０６  音声合成単位情報取得部
１０７  ターゲットスコア算出部
１０８  接続スコア算出部
１０９  単位選択部
１１０  音声出力部
【図１】
2009237422.tif 000006
【図２】
2009237422.tif 000007
【図３】
2009237422.tif 000008
【図４】
2009237422.tif 000009
【図５】
2009237422.tif 000010
【図６】
2009237422.tif 000011
【図７】
2009237422.tif 000012
【図８】
2009237422.tif 000013
【図９】
2009237422.tif 000014
【図１０】
2009237422.tif 000015
【図１１】
2009237422.tif 000016
【図１２】
2009237422.tif 000017
【図１３】
2009237422.tif 000018
【図１４】
2009237422.tif 000019
【図１５】
2009237422.tif 000020
【図１６】
2009237422.tif 000021
【図１７】
2009237422.tif 000022