(57)【特許請求の範囲】
【請求項１】
音声案内の用途にもちいるデバイスに搭載され、入力されたテキストを合成音声信号に変換する音声合成処理を実行する音声合成装置であって、
前記入力されたテキストを分割して複数の部分に分け、前記テキストの内容理解への寄与の大きさに応じて、前記部分の重要度を推定する重要度推定部と、
前記音声合成装置を搭載するデバイスの処理負荷の状態を取得する負荷状態取得部と、
前記部分の合成音声信号を生成する処理を実行する際に、そのときの前記音声合成装置を搭載するデバイスの処理負荷の状態および前記重要度に基づいて、前記部分の処理に充てる処理負荷を決定する負荷制御部と、
前記負荷制御部によって決定された前記処理負荷に基づいて、前記部分の合成音声信号を生成する処理を実行する合成処理部と
を備えることを特徴とする音声合成装置。
【請求項２】
前記重要度推定部は、前記寄与の大きさが大きいほど、前記重要度が高いと推定することを特徴とする請求項１に記載の音声合成装置。
【請求項３】
前記部分の合成音声信号を生成する処理を終了すべき時刻を示す目標終了時刻を、前記部分の韻律特徴から決定する終了時刻決定部と、
前記目標終了時刻から前記部分の合成音声信号を生成する処理が終了した時刻を減算した差分を示す残留時間と、所定の閾値とを比較する時間判定部と、
前記残留時間が前記閾値より大きい場合、未処理の前記部分の中で前記重要度の高い前記部分を選択し、前記残留時間が前記閾値以下の場合、前記テキスト中の前記合成音声信号を生成する処理が終了した部分に後続する前記部分を選択する音素決定部と、
をさらに備え、
前記合成処理部は、前記音素決定部によって選択された前記部分の合成音声信号を生成する処理を実行する
ことを特徴とする請求項２に記載の音声合成装置。
【請求項４】
前記音声合成装置の処理負荷の状態に基づいて、前記部分の処理が終了すると予測される時刻を示す予測時刻を算出し、前記予測時刻が前記目標終了時刻を越えるか否かを判定する合成時間評価部と、
前記予測時刻が前記目標終了時刻を越えると判定した場合、その部分の処理に充てる処理負荷を低減するように、前記テキストを変更するテキスト変更部と
をさらに備えることを特徴とする請求項３に記載の音声合成装置。
【請求項５】
前記負荷制御部は、前記部分の重要度が高いほど、当該部分の処理に充てる処理負荷を大きくする
ことを特徴とする請求項２ないし請求項４のいずれか一項に記載の音声合成装置。
【請求項６】
入力されたテキストを合成音声信号に変換する音声合成処理を実行する他の音声合成装置と通信する通信部と、
前記通信部の通信状態を取得する通信状態取得部と、
前記通信状態および前記重要度に基づいて、前記部分の合成音声信号を生成する処理を、前記合成処理部と前記他の音声合成装置のいずれで実行するかを決定する合成手法決定部と
をさらに備えることを特徴とする請求項１ないし請求項５のいずれか一項に記載の音声合成装置。
【請求項７】
請求項１ないし請求項６のいずれか一項に記載の音声合成装置を、音声案内の用途のために備えることを特徴とするナビゲーション装置。
【請求項８】
音声案内の用途にもちいるデバイスに搭載され、入力されたテキストを合成音声信号に変換する音声合成処理を実行する音声合成装置の音声合成方法であって、
前記音声合成装置は、
前記入力されたテキストを分割して複数の部分に分け、前記テキストの内容理解への寄与の大きさに応じて、前記部分の重要度を推定する重要度推定ステップと、
前記音声合成装置を搭載するデバイスの処理負荷の状態を取得する負荷状態取得ステップと、
前記部分の合成音声信号を生成する処理を実行する際に、そのときの前記音声合成装置を搭載するデバイスの処理負荷の状態および前記重要度に基づいて、前記部分の処理に充てる処理負荷を決定する負荷制御ステップと、
前記負荷制御ステップによって決定された前記処理負荷に基づいて、前記部分の合成音声信号を生成する処理を実行する合成処理ステップと
を備えることを特徴とする音声合成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、入力テキストから音声合成信号を生成する技術に関する。
【背景技術】
【０００２】
音声合成技術の進展にともなって、合成音声の品質が改善してきており、近年、生活の多くの場面で、音声合成処理された音声を耳にする機会が増加している。例えば、音声合成技術は、車載用ナビゲーション装置、公共施設における自動放送装置、メール読み上げ装置、自動通訳システム等、合成音声を用いて自動的に情報を提供するサービスに広く用いられてきている。
【０００３】
一方、現在実用化されている音声合成システムの多くにおいては、システムリソースの負荷（例えば、ＣＰＵ（Central Processing Unit）およびメモリの占有率、ディスクアクセス頻度、ネットワーク通信量等）と合成音声の品質（音質ともいう）とは、高い相関を有している。すなわち、高品質の合成音声を得るためには、音声合成処理に多くのリソースを充てる必要がある。逆に、音声合成処理に充てるリソースを削減すると合成音声の品質が低下してしまう。
【０００４】
カーナビゲーション装置等の低性能デバイスに音声合成機能を搭載した場合、音声合成処理に充てるリソースには限りがあるため、得られる合成音声の品質が低くなる場合がある。ただし、前記した低性能とは、音声合成処理に充てることが可能なリソースが少ないという意味である。つまり、音声合成処理ではリアルタイム性（最初の合成音声が出力されてから途切れることなく後続の合成音声が出力されること）が要求されるため、音質を犠牲にして、音声合成処理に充てるリソースを低性能デバイスに合わせざるを得なくなる。現在、多くの音声合成システムは、リアルタイム性を維持するように音声合成を確実に行うために、音声合成のために占有できるリソース（主にＣＰＵおよびメモリ）を規定した上で、音声合成の処理負荷がそれを超えないように制御している。
【０００５】
例えば、下記特許文献１では、ハードウェアの性能または状態を検出し、その検出結果に応じて、合成処理に用いる辞書情報の量を調整することによって、リソースの処理負荷を調節する技術が開示されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特許第３５６３７５６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、特許文献１に開示されている技術では、ハードウェアの性能または状態に応じて、リソースの処理負荷を調節しているため、処理負荷を低減させると、合成音声の品質は低下してしまう。このような音質の低下が、文章の内容理解にとって重要な部分（例えば、文中におけるキーワード）で生じると、合成音声の聴者に対して、合成音声の内容が正確に伝達できないという虞がある。例えば、文脈上重要な単語の合成中に、ＣＰＵが他のアプリケーションに使用され、高い処理負荷を確保できなくなった場合、重要な単語が低品質の合成音声として出力されることになる。この結果、合成音声の聴者は、文全体の内容を理解するのが困難になるという問題がある。
【０００８】
そこで、本発明は、合成音声の重要な言葉を聞き取りやすくすることを課題とする。
【課題を解決するための手段】
【０００９】
前記した課題を解決するため、本発明に係る音声合成装置は、入力テキストを複数の部分（具体的には単語）に分割し、聴者が合成音声を聞き取る際の、文章の内容理解への寄与の大きさを部分（単語）ごとに求め、それぞれの部分の重要度を推定する。次に、音声合成装置は、合成処理を実行するときのデバイス状態および重要度に基づいて、処理負荷を決定する。そして、音声合成装置は、重要度の低い部分に対しては処理負荷を低く抑える（相対的に音質を低くする）ことによって処理時間を低減し、その処理時間を低減した分を重要度の高い部分の処理時間に振り分けて、重要な言葉を聞き取りやすい合成音声を生成する。
【発明の効果】
【００１０】
本発明によれば、合成音声の重要な言葉を聞き取りやすくすることができる。
【図面の簡単な説明】
【００１１】
【図１】第１実施の形態に係る音声合成装置のハードウェア構成を示すブロック図である。
【図２】第１実施の形態に係る音声合成装置の機能を示すブロック図である。
【図３】テキスト解析部の動作を示す説明図である。
【図４】合成用ターゲットの一例を示す説明図である。
【図５】合成処理管理部の動作を示す説明図である。
【図６】音素決定ルールの一例を示す説明図である。
【図７】波形生成部の動作を示す説明図である。
【図８】次回合成音素の決定処理および目標終了時刻の設定処理を説明するための説明図である。
【図９】次回合成音素の決定処理および目標終了時刻の設定処理を説明するための説明図である。
【図１０】次回合成音素の決定処理および目標終了時刻の設定処理を説明するための説明図である。
【図１１】次回合成音素の決定処理および目標終了時刻の設定処理を説明するための説明図である。
【図１２】次回合成音素の決定処理および目標終了時刻の設定処理を説明するための説明図である。
【図１３】次回合成音素の決定処理および目標終了時刻の設定処理を説明するための説明図である。
【図１４】次回合成音素の決定処理および目標終了時刻の設定処理を説明するための説明図である。
【図１５】音声合成装置による音声合成処理のタイミングを模式的に示す図であり、（ａ）は、従来技術による音声合成処理の場合を表し、（ｂ）は、本実施の形態による音声合成処理の場合を表す。
【図１６】第２実施の形態に係る音声合成装置の機能的構成を示すブロック図である。
【図１７】第３実施の形態に係る音声合成装置の機能的構成を示すブロック図である。
【図１８】テキスト変更ルールの一例を示す説明図である。
【図１９】テキスト解析部の動作を示す説明図である。
【発明を実施するための形態】
【００１２】
以下に添付図面を参照して、この発明に係る音声合成装置および音声合成方法の好適な実施の形態を詳細に説明する。
【００１３】
（フレームワーク）
本実施の形態に係る音声合成装置および音声合成方法は、音声合成するテキストの文脈に従って、テキスト中の各部分（具体的には、各単語）の重要度を、テキスト全体の内容理解への寄与の大きさによって推定する。そして、音声合成装置および音声合成方法は、重要度の高い部分（単語）は大きなリソースを充てて高音質で合成し、重要度の低い部分（単語）を合成する際には音質を犠牲にしてリソースを削減し、リアルタイム性を維持する。
【００１４】
本発明において、このように内容理解への寄与の大きさによって各単語の重要度を推定する理由は、人間の会話においては、単語の重要度を考慮した発話を行うことによって、発話の内容の理解度を高めていると考えられるためである。具体的には、人間の会話において、話し手は、自分の発話意図に沿って、単語の強調度（重要度）を細かく制御していると推測される。また、聞き手は、話し手によって単語の強調度（重要度）が制御された発話を聞いて、キーワードと思われる単語を拾ってつなげることで、内容の理解を行っていると推測される。
【００１５】
このような発話の態様を、カーナビゲーション装置等の合成音声の発話に置き換えて説明する。例えば、カーナビゲーションで頻繁に使用されるフレーズの例として、「前方３００メートル先、右に曲がります。」では、そのフレーズ中の単語「３００」および「右」は重要な情報を有しているが、他の単語は特に聞き取れなくても支障がないと考えられる。そのため、合成音声の内容の理解を高めるためには、「３００」および「右」の２つのキーワードは、他の単語より高品質に合成する。一方で、他の単語を合成する際には、処理負荷を抑えるために、低品質で合成する。
【００１６】
したがって、本実施の形態に係る音声合成装置および音声合成方法は、単語の重要度に応じて処理負荷を変化させることによって、リアルタイム性を維持しながら、重要な言葉を聞き取りやすい合成音声を生成することができる。なお、処理負荷とは、例えば、ＣＰＵ、メモリ、通信装置等のリソースの使用量である。また、処理負荷の変化とは、例えば、音声合成処理時の量子化精度の変更、周波数の帯域制限の変更、言語辞書のサイズ変更、音声データのサイズ変更、処理アルゴリズムの変更、合成対象とするテキストの長さの変更等によってもたらされる。また、テキスト中の部分の単位としては、段落、文、フレーズ、単語、音素等が考えられるが、本実施の形態では、単語（形態素）で区切られているものとして説明する。
【００１７】
（概要）
はじめに、本実施の形態の概要について、図１５を用いて説明する。図１５（ａ）は、比較例として、従来技術による音声合成処理の場合を表し、図１５（ｂ）は、本実施の形態による音声合成処理の場合を表している。図１５は、「前方３００メートル先、右に曲がります」というテキストデータの単語の合成音声を処理するときの順番を模式的に表したものである。なお、横軸は時刻（ｔ）、縦軸は音声合成処理に割り当て可能なリソースとしてＣＰＵ占有率で表している。重要度は、数値が大きいほど、高品質の合成音声を生成するために、その処理に大きなリソースを充てる必要があることを表している。ＣＰＵ占有率欄において記載されたハッチングおよびドットの表記は、凡例欄に記載の表記に対応する単語について合成処理が実行されたことを表している。また、単語を区切る縦線は、リアルタイム性を維持するために、合成処理が終了しなければならない時刻を示す目標終了時刻を表している。例えば、単語「ぜんぽう」と単語「さんびゃく」との間の縦線は、単語「ぜんぽう」の合成処理が終了しなければならない時刻を示す目標終了時刻を表している。なお、滑らかな曲線は、ＣＰＵ占有率の変化を表している。したがって、図１５では、処理負荷は、ＣＰＵ占有率を時刻方向に積分した面積に相当するとみなせる。すなわち、図１５中のハッチングおよびドットを付した領域は、各単語の合成処理に費やされた負荷量を表している。
【００１８】
図１５（ａ）に示すように、従来の合成処理は、テキストデータの単語の並び順に実行されていた。そのため、重要度４の「みぎ」に対する処理負荷（面積）は、重要度２の「ぜんぽう」や重要度１の「まがります」に対する処理負荷（面積）の方より小さくなってしまう。すなわち、重要度の高い単語であるにも拘わらず、大きなリソースを充てることができずに、低品質で合成することになってしまうといったリスクが生じていた。
【００１９】
それに対して、図１５（ｂ）に示す本実施の形態における合成処理は、重要度の低い単語は、相対的に低品質で合成音声を生成するので小さなリソースで処理可能であり、短時間で処理が終了する。そのため、その単語の処理が早く終わった場合には、余った時間において、相対的に重要度の大きい単語の処理を実行する。したがって、重要度の高い単語には、大きなリソースを充てることができる。
【００２０】
図１５（ｂ）では、具体的には、最初の単語「ぜんぽう」は重要度がやや低い（重要度２）ので短時間で合成処理が終了する。そのため、単語「ぜんぽう」の目標終了時刻までの余った時間を、重要度がやや高い単語（重要度３）「さんびゃく」の合成処理に充てることができる。さらに、単語「さんびゃく」の合成処理が目標終了時刻より早く終わった場合には、重要度が高い単語（重要度４）「みぎ」の合成処理を実行してしまう。また、単語「めーとる」の合成処理が目標終了時刻より早く終わった場合にも、重要度が高い単語（重要度４）「みぎ」の合成処理を実行してしまう。このように、本実施の形態における合成処理は、重要度の低い単語に対しては処理負荷を低く抑える（相対的に音質を低くする）ことによって処理時間を低減し、その処理時間を低減した分を重要度の高い音素の処理時間に振り分けて、重要な単語を聞き取りやすい合成音声を生成することができる。
【００２１】
（第１実施の形態）
第１実施の形態に係る音声合成装置のハードウェア構成について、図１を用いて説明する。また、第１実施の形態に係る音声合成装置の機能について、図２を用いて説明する。
【００２２】
（音声合成装置１０のハードウェア構成）
図１に示すように、音声合成装置１０は、ＣＰＵ６１１、主記憶装置であるメモリ６１２、記憶装置６２０、入力Ｉ／Ｆ（インタフェース）６３１、ネットワークに接続する通信Ｉ／Ｆ６３２、スピーカに接続する音声出力Ｉ／Ｆ６４１によって構成され、これらの構成部はバス６５０によって相互に接続されている。音声合成装置１０は、例えば、カーナビゲーション装置、携帯電話機、パーソナルコンピュータ等のデバイスに、音声合成処理ユニットとして組み込まれている。そのため、図１に示した各ハードウェアは、音声合成装置１０が組み込まれたデバイスの構成を用いて実現しても良いし、音声合成装置１０が組み込まれたデバイスとは別個に設けられていても良い。
【００２３】
ＣＰＵ６１１は、音声合成装置１０の全体の制御を司る。メモリ６１２は、ＣＰＵ６１１のワークエリアとして使用される。記憶装置６２０は、不揮発性の記憶媒体であり、具体的には、例えば、ＨＤＤ（ハードディスク）、ＦＤ（フレキシブルディスク）、フラッシュメモリ等を用いることができる。記憶装置６２０には、例えば、後記する音声合成処理に用いられる言語解析プログラムや単語の重要度推定プログラム等の各種プログラム、言語解析モデルや重要度解析モデル等の各種データが記録される。
【００２４】
入力Ｉ／Ｆ６３１は、キーボードやマウス等の入力装置（不図示）を接続するインタフェースであり、入力装置からテキストデータの入力を受け付ける。通信Ｉ／Ｆ６３２は、有線または無線を介してネットワークに接続するインタフェースである。音声出力Ｉ／Ｆ６４１は、スピーカを接続するインタフェースであり、合成した音声信号を出力する。
【００２５】
（音声合成装置１０の機能的構成）
次に、音声合成装置１０の機能について、図２を用いて説明する。図２に示すように、音声合成装置１０は、テキスト入力部１００、テキスト解析部２００、合成処理管理部３００、波形生成部４００、デバイス状態取得部５００、音声出力部６００によって構成される。
【００２６】
テキスト入力部１００は、テキストデータの入力を受け付けるインタフェースであり、例えば、キーボードやネットワークを接続するインタフェース等である。テキスト入力部１００がキーボードを接続するインタフェースである場合、テキストデータは、例えばユーザによってキーボードのキーが押下されることによって受信される。また、テキスト入力部１００がネットワークを接続するインタフェースである場合、テキストデータは、例えばニュース配信サービスによって配信される情報データとして受信される。
【００２７】
テキスト解析部２００は、言語解析部２１０、重要度推定部２２０、ターゲット付与部２３０によって構成される。言語解析部２１０は、公知の言語解析モデルを用いて、テキスト入力部１００から入力されるテキストデータを分析し、形態素情報や韻律境界情報等の言語情報を含む中間言語（合成用記号列）を生成する。重要度推定部２２０は、公知の単語の重要度解析モデルを用いて、文脈から発話意図を推定し、単語（日本語では、形態素を指す）ごとに文の理解に寄与する大きさに応じて重要度を推定し、重要度付き中間言語を生成する。ターゲット付与部２３０は、公知のターゲット付与モデルを用いて、重要度推定部２２０において生成された重要度付き中間言語を分析し、コンテキスト環境情報から韻律情報を予測する。この予測処理によって、同じ音素であっても、韻律に関する音響的な特徴量を、コンテキスト（文脈的な要因）に依存して変化させることができる。
【００２８】
合成処理管理部３００は、音素決定部３１０および終了時刻決定部３２０によって構成される。音素決定部３１０は、次に合成する最小単位（一般的に音素および音節となるが、以下の説明では音素とする）を決定する。終了時刻決定部３２０は、音素ごとに合成処理が終了すべき時刻（以下、目標終了時刻という）を決定する。なお、時刻とは、日本標準時等の絶対時刻で表現しても構わないが、以降の説明では、テキスト入力部１００が一連のテキストの先頭を受信した時刻を基準にした相対時刻で表現するものとする。
【００２９】
波形生成部４００は、合成処理部４１０および負荷制御部４２０によって構成される。合成処理部４１０は、合成処理管理部３００から出力された音素（以降、単に音素と言った場合でも、音素とその付属情報を指す）の音声波形信号（音声合成信号）を生成する。ここで、付属情報とは、図４に示す韻律特徴、音韻特徴量、コンテキスト特徴等である。負荷制御部４２０は、後記するデバイス状態取得部５００から取得したデバイス状態を分析し、合成処理部４１０の処理に充てるリソース（ＣＰＵ占有率、メモリ使用量、ディスクアクセス頻度等）を制御する。
【００３０】
デバイス状態取得部５００は、音声合成装置１０を搭載したデバイスについて、所定の時刻における負荷等の状態（デバイス状態）に関する情報を獲得する。デバイス状態とは、例えば、ＣＰＵ使用率、メモリ使用率、ディスクアクセス頻度、ネットワーク通信速度、同時実行している他のアプリケーションの稼働状況等である。
【００３１】
音声出力部６００では、波形生成部４００で生成された音声波形信号を出力する装置であり、例えば、スピーカやヘッドフォンを接続するインタフェース、ネットワークを接続するインタフェース等が挙げられる。音声出力部６００は、波形生成部４００から受信した音声波形信号を一旦出力バッファに記憶し、音声波形信号の出力順を調整する。音声出力部６００がスピーカやヘッドフォンを接続するインタフェースである場合、音声波形信号は、スピーカやヘッドフォンにおいて音波に変換され合成音声として出力される。また、音声出力部６００がネットワークを接続するインタフェースである場合、音声波形信号は、例えばネットワークワークを介して、他の情報端末に配信される。
【００３２】
図２に示した音声合成装置１０の各構成部は、図１における記憶装置６２０に記録されたプログラムやデータを用いて、ＣＰＵ６１１が所定のプログラムを実行することによってその機能を実現する。
【００３３】
（各構成部の動作）
音声合成装置１０の各構成部の動作の詳細について以下に説明する。
まず、テキスト解析部２００の動作について、図３を用いて説明する。図３において、まず、テキスト解析部２００の言語解析部２１０は、テキスト入力部１００（図１参照）からテキストデータ１０１を受信する。
言語解析部２１０は、事前に作成された言語解析モデル２１２を用いて、テキストデータ１０１を中間言語２１１に変換する。ここで、中間言語２１１には、少なくとも、テキストの読みを示す発音記号が含まれる。この他、中間言語２１１には、品詞情報、韻律境界情報、構文情報、アクセント型等の中間言語情報が含まれていることが望ましい。なお、言語解析部２１０は、テキストデータ１０１の一部に既に中間言語情報が付加されている場合は、付加されている中間言語情報をそのまま用いることができるものとする。つまり、中間言語は、予め設定されていても構わない。
【００３４】
例えば、テキストデータ１０１が「これは合成音声です」である場合、言語解析部２１０は、このテキストデータ１０１を、中間言語２１１として「（ｋ％ｏ）（ｒ％ｅ）／（ｗ％ａ）＃（ｇ％ｏｏ）（ｓ％ｅｅ）／（ｏ％Ｎ）（ｓ％ｅｅ）／（ｄ％ｅ）（ｓ％ｕ）」に変換する。ただし、％は音素境界、（）に囲まれた範囲はモーラ、／は単語境界、＃はアクセント句境界をそれぞれ表している。
【００３５】
重要度推定部２２０は、言語解析部２１０で生成された中間言語２１１を取得して、事前に作成された重要度解析モデル２２２を用いて、中間言語２１１に含まれるすべての単語の重要度を推定する。ただし、テキストデータ１０１の一部または全部の単語に、重要度情報が付加されている場合、重要度推定部２２０は、付加されている重要度情報をそのまま用いることができるものとする。つまり、単語の重要度は、予め指定されていても構わない。そして、重要度推定部２２０は、推定した重要度の情報を中間言語２１１に付加して、重要度付き中間言語２２１としてターゲット付与部２３０に出力する。
【００３６】
重要度解析モデル２２２は、カーナビゲーション装置のように合成する音声の文型が決まっている場合には、専門家が経験に基づいて手作業で作成する手法が有効であると考えられる。また、合成音声をニュースの読み上げ等に用いる場合は、重要度解析モデル２２２は、統計的手法で作成する規則群を用いて、文脈やトピック等から、単語の重要度を推定可能なモデルであることが好ましい。
【００３７】
例えば、前記した「これは合成音声です」というテキストデータ１０１の場合、その発話意図によって、単語の重要度が異なることがある。以下に、その具体例として、ケース１Ａ，１Ｂについて説明する。
【００３８】
ケース１Ａ：テキストデータ１０１が、“現在再生されている音声は人間の発した肉声ではなく、機械で合成した音声である”という意図を持っている場合、「合成」がキーワードであり、「｛２｝（ｋ％ｏ）（ｒ％ｅ）／｛１｝（ｗ％ａ）＃｛４｝（ｇ％ｏｏ）（ｓ％ｅｅ）／｛３｝（ｏ％Ｎ）（ｓ％ｅｅ）／｛１｝（ｄ％ｅ）（ｓ％ｕ）」のようになる。ただし、｛  ｝に囲まれる数字は単語の重要度を表しており、数字が大きくなるにつれ重要度が高くなることを表している。以下、単語の重要度は、数字が大きいほど高いものとして説明する。
【００３９】
ケース１Ｂ：テキストデータ１０１が、“いくつかのある音声の中で、ほかの音声ではなく、現在再生されている音声が合成音声である。”という意図を持っている場合、「これ」がキーワードであり、「｛４｝（ｋ％ｏ）（ｒ％ｅ）／｛１｝（ｗ％ａ）＃｛２｝（ｇ％ｏｏ）（ｓ％ｅｅ）／｛２｝（ｏ％Ｎ）（ｓ％ｅｅ）／｛１｝（ｄ％ｅ）（ｓ％ｕ）」のようになる。
【００４０】
ターゲット付与部２３０は、重要度付き中間言語２２１を取得し、事前に学習したターゲット付与モデル２３２を用いて、単語の重要度やコンテキスト情報等を考慮し、音素ごとに合成用ターゲット２３１を生成する。ターゲット付与部２３０は、生成した合成用ターゲット２３１を、図３中Ａの先の合成処理管理部３００（図５参照）に出力する。なお、ターゲット付与モデル２３２は、音韻モデル、パワーモデル、Ｆ０（基本周波数）モデル、継続長モデル等を備えている。
【００４１】
ここでの合成用ターゲット２３１とは、合成の目標となる特徴量のことである。一般的に、合成用ターゲット２３１には、基本周波数（Ｆ０）、パワー、継続長、音韻特徴（スペクトル）、コンテキスト特徴等が含まれる。ただし、入力された中間言語の一部に合成用ターゲット２３１の情報が付加されている場合、ターゲット付与部２３０は、付加されている合成用ターゲット２３１の情報をそのまま用いて合成用ターゲット２３１を生成することができるものとする。つまり、合成用ターゲット２３１は、予め設定されていても構わない。
【００４２】
ターゲット付与部２３０は、例えば、前記したケース１Ａの中間言語「｛２｝（ｋ％ｏ）（ｒ％ｅ）／｛１｝（ｗ％ａ）＃｛４｝（ｇ％ｏｏ）（ｓ％ｅｅ）／｛３｝（ｏ％Ｎ）（ｓ％ｅｅ）／｛１｝（ｄ％ｅ）（ｓ％ｕ）」を、図４に示すような合成用ターゲット２３１に変換する。
【００４３】
図４において、合成用ターゲット２３１は、音素情報２３１１、韻律特徴情報２３１２（Ｆ０情報２３１３、継続長情報２３１４、パワー情報２３１５）、音韻特徴量情報２３１６、コンテキスト特徴情報２３１７、重要度情報２３１８を含んでいる。
【００４４】
例えば、１行目の音素ｋに対しては、Ｆ０情報２３１３として出力開始時１００Ｈｚ、出力終了時１２０Ｈｚ、継続長情報２３１４として２０ｍｓ、パワー情報２３１５として５０、音韻特徴量情報２３１６として２．５，０．７，１．８，・・、コンテキスト特徴情報２３１７として、×−ｋ−ｏ−２−４−６−１・・、重要度情報２３１８として２、という情報が付与されている。なお、図４において、音韻特徴量情報２３１６は周波数スペクトルを、コンテキスト情報２３１７は前後の音素（ただし、×印は音韻ｋの前に音素が無いことを表している）および品詞情報を、それぞれ示している。
【００４５】
次に、合成処理管理部３００の動作について、図５を用いて説明する（適宜、図２，３参照）。合成処理管理部３００は、音素決定部３１０と終了時刻決定部３２０とを備えている。図５において、音素決定部３１０は、ターゲット付与部２３０から出力された合成用ターゲット２３１を取得する（図５中Ａの入力）。そして、音素決定部３１０は、後記する音素決定ルール３１２ａ（図６参照）に基づいて、後記する波形生成部４００の合成処理部４１０（図７参照）において、次に合成（波形生成）する音素（以下、次回合成音素という）を決定する。
【００４６】
音素決定部３１０は、次回合成音素として、（１）取得した合成用ターゲット２３１の先頭音素（先頭の音素）３１５、（２）既に合成（波形生成）終了している音素の次に再生される後続音素３１４、（３）テキストデータ１０１中のまだ合成（波形生成）終了していない音素のうち、より重要度が高い重要音素３１３、のいずれかを決定する。具体的には、音素決定部３１０は、以下のように次回音声音素を決定する。
【００４７】
ケース２Ａ（図５中Ａの入力）：音素決定部３１０は、テキスト解析部２００から新たに合成用ターゲット２３１を取得した場合、取得した合成用ターゲット２３１の先頭音素３１５を次回合成音素として決定する。
【００４８】
ケース２Ｂ（図５中Ｄの入力）：音素決定部３１０は、後記する合成処理部４１０（図７参照）における処理の途中で、次回合成音素のための合成開始時刻が来てしまった場合等の理由によって処理が戻された場合（図７中Ｄの出力）、既に合成終了している音素の次に後続する後続音素３１４（次に再生される音素であって、重要音素３１３も含まれる）を次回合成音素として決定する。
【００４９】
ケース２Ｃ（図５中Ｂの入力）：音素決定部３１０は、後記する合成処理部４１０（図７参照）において、ある音素の合成用ターゲット２３１の処理が完了し、次の音素の処理のために処理が戻された場合（図７中Ｂの出力）、時間判定部３１１において、目標終了時刻から現在時刻を減算した値を示す残留時間が事前に設定した閾値より大きいか否かを判定する。残留時間が閾値以下の場合（判定部３１１でＮｏ）、後続音素３１４を次回合成音素として決定する。一方、残留時間が閾値より大きい場合（判定部３１１でＹｅｓ）、音素決定ルール参照部３１２が音素決定ルール３１２ａ（図６参照）に基づいて決定した重要音素３１３を次回合成音素として決定する。
【００５０】
ここで、重要音素３１３とは、音素決定ルール参照部３１２が記憶している、音素決定ルール３１２ａ（図６参照）に従って決定された音素である。音素決定ルール３１２ａは、例えば、図６に示す第１〜第３ルールとして示される。第１ルールは、「合成処理が終了していない音素のうち、重要度が最も高い音素かつ再生順が一番早い音素」を重要音素３１３とすることを規定している。第２ルールは、「合成処理が終了していない音素のうち、重要度が３よりも大きくかつ再生順が一番早い音素」を重要音素３１３とすることを規定している。第３ルールは、「合成処理が終了していない音素のうち、重要度が３よりも大きくかつ合成しにくい音素」を重要音素３１３とすることを規定している。合成しにくい音素とは、例えば、母音同士が隣り合って音韻が変化する場合等、合成処理に際して通常とは異なる処理を必要とする音素である。音素決定ルール参照部３１２は、例えば、第１〜第３ルールを番号が小さい順に適用し、ルールに該当する音素を重要音素３１３として次回合成音素を決定する。
【００５１】
従来のリアルタイム音声合成システムでは、テキストの先頭から順番に音素を合成処理していた。それに対して、本実施の形態における音声合成装置１０では、テキストの先頭から順番通りでなく、重要音素を先行して合成する場合がある。これは、処理負荷の変動の影響を受けにくくするようにして、重要な単語を高品質に合成するためである。前記したように、重要音素が処理される時間は、他の音素が目標終了時刻より早く合成終了した場合にも設定される。言い換えると、音声合成装置１０では、重要度が高くない単語を合成する際には、もともと処理負荷を低減させているため、目標終了時刻よりも早い時刻に合成終了する場合がある。このような場合に、余った処理時間を用いて重要音素を合成処理することによって、音声合成装置１０は、リソースの処理能力の変動の影響を受けにくくするようにして、重要な単語を高品質に合成することができる。
【００５２】
図５の説明に戻り、終了時刻決定部３２０は、音素決定部３１０で決定された次回合成音素の種類に応じて、当該音素の合成処理を終了すべき時刻を示す目標終了時刻を決定する。
【００５３】
具体的には、次回合成音素が先頭音素３１５である場合、終了時刻決定部３２０は、時刻設定部３２１において、事前に決められている音声出力応答時間（テキストが入力されてから、最初の音声が出力されるまでの時間）を目標終了時刻として設定する。なお、音声出力応答時間はユーザの指定、またはテキストの重要度によって決められる。時刻設定部３２１は、設定した目標終了時刻を終了時刻記憶部３２２に格納する。
【００５４】
また、次回合成音素が後続音素３１４である場合、終了時刻決定部３２０は、時刻設定部３２１において、この音素の合成音声の再生が始まるべき時刻（この音素の音声波形５０１（図７参照）が音声出力部６００から出力される時刻）を目標終了時刻として設定する。時刻設定部３２１は、設定した目標終了時刻を終了時刻記憶部３２２に格納する。
【００５５】
また、次回合成音素が音素決定ルール参照部３１２によって決められた重要音素３１３である場合、終了時刻決定部３２０は、時刻設定部３２１における目標終了時刻の設定処理を行わず、現在終了時刻記憶部３２２に格納されている時刻を目標終了時刻とする。この理由は、当該重要音素３１３の合成処理は、他の音素が目標終了時刻（現在終了時刻記憶部３２２に格納されている時刻）よりも早く合成終了した場合の残り時間を用いて行われるためである。当該重要音素３１３の合成処理は、早く合成終了した他の音素の目標終了時刻（現在終了時刻記憶部３２２に記憶されている時刻）になったとき、またはその重要音素３１３の合成処理が完了したときに終了する。
【００５６】
終了時刻決定部３２０で決定された目標終了時刻の情報（目標終了時刻情報）、および音素決定部３１０で決定された次回合成音素の情報（次回合成音素情報）は、合成用ターゲット２３１（図３参照）とともに、波形生成部４００（図７参照）に出力される（図５中Ｃの出力）。
【００５７】
次に、波形生成部４００の動作について、図７を用いて説明する。図７に示すように、波形生成部４００は、合成処理部４１０および負荷制御部４２０を備える。
合成処理部４１０は、合成処理管理部３００から合成用ターゲット２３１、次回合成音素情報、および終了時刻情報を取得する（図７中Ｃの入力）。
そして、合成処理部４１０は、最終的に、音素の音声波形５０１を生成する。具体的には、合成処理部４１０は、次回合成音素情報に基づいて、次回合成音素として指定された音素の音声波形５０１を、複数のステップ（図７では、第１ステップから第ＮステップまでのＮ個のステップ）を実行することによって生成する。ここで、各ステップは、例えば、音声波形の候補を取捨選択する処理を段階的に表したものであって、第１ステップから第Ｎステップへ移るに従って、候補数を絞り込むような処理を表している。また、合成処理部４１０は、各ステップの処理負荷を変更できるようになっている。詳細は後記するが、合成処理部４１０は、各ステップを実行する前に、負荷制御部４２０にアクセスし、重要度およびデバイスの負荷状態に基づいて決定される負荷制御変数を取得し、この負荷制御変数に基づいて、各ステップの処理を実行する。
【００５８】
負荷制御部４２０は、合成処理部４１０が実行する各ステップに対する負荷制御変数を決定する。負荷制御部４２０は、合成処理部４１０から負荷制御変数の要求を示すアクセスがあった場合、まず、負荷制御変数計算部４２１において、合成対象の音素の重要度に基づいて、負荷制御変数を計算する。例えば、負荷制御部４２０は、重要度が高い音素ほど高品質になる（リソースが大きくなる）ように負荷制御変数を設定する。また、負荷制御部４２０は、重要度が低い音素は、音質よりも合成処理に費やす処理負荷を低くすることを優先して負荷制御変数を設定する。
【００５９】
次に、負荷制御部４２０の負荷制御変数修正部４２３は、デバイス状態取得部５００から、現在時刻におけるデバイス情報を取得する（Ｓ４２２）。デバイス情報とは、例えば、その処理に割り当て可能なリソースの上限値である。そして、負荷制御変数修正部４２３は、デバイス情報に基づいて、負荷制御変数計算部４２１で算出した負荷制御変数を修正して、最終的な負荷制御変数を合成処理部４１０に出力する。
【００６０】
なお、負荷制御部４２０は、合成対象の音素が先頭音素３１５または後続音素３１４の場合には、目標終了時刻内に合成終了する必要があるため、デバイス情報と残留時刻（目標終了時刻と現在時刻の差分）とを考慮して、目標終了時刻内に合成終了するように、負荷制御変数を設定する。
【００６１】
図７において、合成処理部４１０は、１つの音素に対して、第１ステップ〜第ＮステップのＮ個のステップを順番に処理して、音声波形５０１を生成する。このとき、合成処理部４１０は、第１ステップを実行する前に、負荷制御部４２０にアクセスし（Ｓ４１１）、第１ステップに対する負荷制御変数を取得する（Ｓ４１２）。合成処理部４１０は、負荷制御変数に基づいて第１ステップの処理を実行し、第１ステップの処理が終了すると、処理した音素が重要音素３１３であるか否かを判断する（Ｓ４１３）。処理した音素が重要音素３１３でない場合（Ｓ４１３でＮｏ）、すなわち、処理した音素が先頭音素３１５か後続音素３１４である場合、合成処理部４１０は、第２ステップへと処理を進める。
【００６２】
次に、合成処理部４１０は、第２ステップの開始前に負荷制御部４２０にアクセスし（Ｓ４１４）、第２ステップに対する負荷制御変数を取得して（Ｓ４１５）、その負荷制御変数に基づいて第２ステップの処理を実行する。
【００６３】
Ｓ４１３において、処理した音素が重要音素３１３である場合（Ｓ４１３でＹｅｓ）、合成処理部４１０は、残留時間が閾値より大きいか否かを判定する（Ｓ４１６）。そして、残留時間が閾値より大きいと判定した場合（Ｓ４１６でＹｅｓ）、処理は第２ステップに進む。また、残留時間が閾値以下と判定した場合（Ｓ４１６でＮｏ）、合成処理部４１０は、合成処理管理部３００（図５参照）に処理を戻す（図７中Ｄの出力）。この図７中Ｄの出力を設ける理由は、重要音素３１３の合成処理を、目標終了時刻より前に合成終了した他の音素の残り時間においても実行しているので、残り時間がほとんど無くなった（閾値以下となった）場合には、処理を中断する必要があるためである。このとき、合成処理部４１０は、処理途中の音素について、既に実行した実行済みのステップの処理内容を記憶しておく。そして、合成処理部４１０は、処理途中の音素の合成処理を再開する際には、実行済みのステップの次のステップから実行する。
【００６４】
合成処理部４１０は、前記したような第１ステップから第２ステップに至るまでの処理と同様の処理を第Ｎステップまで繰り返し、１つの音素に対して、Ｎ個のステップを順番に実行して当該音素の音声波形５０１を生成する。また、合成処理部４１０は、テキストデータ１０１（図３参照）について、未処理の音素があるか否かを判定する（Ｓ４１７）。未処理の音素があると判定した場合（Ｓ４１７でＮｏ）、合成処理部４１０は、音素決定部３１０に処理を戻し（図７中Ｂの出力）、音声波形の合成処理を継続する。また、未処理の音素がないと判定した場合（Ｓ４１７でＹｅｓ）、合成処理部４１０は、合成処理を終了する。
【００６５】
合成処理部４１０によって生成された音声波形５０１は、音声出力部６００（図２参照）に出力され、音声出力部６００において、図示しない出力バッファに格納され、リアルタイム性を維持するように、所定のタイミングでスピーカ等に出力される。
【００６６】
ここで、図５に示した合成処理管理部３００および図７に示した波形生成部４００における処理の具体例について、図８〜１４を用いて説明する（適宜、図５，７参照）。
図８の合成用ターゲット８１０は、音素決定部３１０に入力される合成用ターゲット２３１（図３参照）の一例である。合成用ターゲット８１０は、「前方３００メートル先、右に曲がります」というテキスト中の「前」および「３」について示し、その他は記載を省略している。なお、以降の説明においては、音素決定部３１０の時間判定部３１１において用いられる閾値は２０ｍｓ、音声出力応答時間（テキストが入力されてから、最初の音声が出力されるまでの時間）は２００ｍｓであるものとする。
【００６７】
まず、図５中Ａの入力として、新たに合成用ターゲット８１０が入力された場合、音素決定部３１０は、先頭音素３１５である“ｚ”を次回合成音素として決定する。図９は、次回合成音素として決定されたｚの合成用ターゲット９００を表している。そして、終了時刻決定部３２０は、音声出力応答時間である２００ｍｓを目標終了時刻として設定する。図１０は、目標終了時刻情報が付加されたｚの合成用ターゲット１０００を表している。合成処理部４１０は、合成用ターゲット１０００を図７中Ｃの入力として用いてｚの合成処理を行う。
【００６８】
次に、合成処理部４１０において、先頭音素ｚの合成処理が終了すると、まだ未処理の音素が残っているため、図７中Ｂを経由して、音素決定部３１０に処理が返される（図５中Ｂの入力）。音素決定部３１０の時間判定部３１１は、このときの残留時間と閾値とを比較して、次回合成音素を決定する。
【００６９】
例えば、残留時間が５ｍｓであった場合、閾値の２０ｍｓより小さいため、音素決定部３１０は、ｚの後続音素３１４である“ｅ”を次回合成音素として決定する。図１１は、次回合成音素として抽出されたｅの合成用ターゲット１１００を表している。また、終了時刻決定部３２０は、前記したｚの目標終了時刻（＝２００ｍｓ）にｚの音声継続長の２０ｍｓを足して、目標終了時刻を２２０ｍｓに設定する。図１２は、目標終了時刻情報が付加されたｅの合成用ターゲット１２００を表している。
【００７０】
また、別のケースとして、例えば、残留時間が５０ｍｓであった場合、閾値の２０ｍｓより大きいため、音素決定部３１０の音素決定ルール参照部３１２は、音素決定ルール３１２ａ（図６参照）を参照して、次回合成音素を決定する。具体的には、音素決定部３１０は、合成終了していない音素（図８中ｚ以降の音素）のうち、最も重要度が高い音素（図８では重要度３の音素）、かつ再生順が一番早い音素であるｓを重要音素３１３として、次回合成音素に決定する。図１３は、次回合成音素として抽出されたｓの合成用ターゲット１３００を表している。また、終了時刻決定部３２０は、音素決定ルール参照部３１２によって決められた重要音素３１３については新たに目標終了時刻の設定を行わないため、ｚの目標終了時刻である２００ｍｓを、そのままｓの目標終了時刻として設定する。図１４は、目標終了時刻情報が付加されたｓの合成用ターゲット１４００を表している。
【００７１】
ただし、合成処理部４１０のＳ４１６等において残留時間が閾値以下と判定されて、重要音素３１３であるｓの合成処理中に、合成処理部４１０の処理を図７中のＤを経由して音素決定部３１０に戻した場合（図５中Ｄの入力）、既に合成終了しているｚの後続音素３１４であるｅを次回合成音素とする。
【００７２】
前記したように、音声合成装置１０は、ある音素の合成処理が目標終了時刻よりも早い時刻に終了した場合に、余った処理時間を用いて重要音素３１３の合成処理を行う。これにより、音声合成装置１０は、処理負荷の変動の影響を受けにくくすることができ、重要な単語を高品質に合成することができる。
【００７３】
次に、音声合成装置１０による音声合成処理のタイミングについて、図１５を用いて説明する。図１５において、横軸は時刻（ｔ）、縦軸は音声合成処理１０のリソース例としてＣＰＵ占有率を表している。ＣＰＵ占有率は、ＣＰＵが音声合成処理に割り当て可能なリソースの上限を示し、ＣＰＵが実行する他の処理との関係に基づいて決められるものである。ＣＰＵ占有率欄において記載されたハッチングおよびドットの表記は、凡例欄に記載の表記に対応する単語について合成処理が実行されたことを表している。また、各単語を区切る縦線は、各単語の合成処理の目標終了時刻を示す。図１５（ａ）は、従来技術による音声合成処理を表し、図１５（ｂ）は、本実施の形態に係る音声合成装置１０による音声合成処理を表している。なお、図１５中のハッチング等を付した領域は、各単語の合成処理に費やされた負荷量を表している。
【００７４】
また、図１５は、「前方３００メートル先、右に曲がります」というテキストを音声合成する場合の例を示している。テキスト中の各単語の重要度は、「ぜんぽう」、「さんびゃく」、「めーとる」、「さき」、「みぎ」、「に」、「まがります」に対して、それぞれ２，３，２，１，４，１，１となっている。
【００７５】
図１５（ａ）に示す従来技術による音声合成処理の場合には、テキストに含まれる単語を、重要度によらず先頭から合成処理している。したがって、従来技術による音声合成処理では、リアルタイム性を維持するために、ＣＰＵ占有率に応じて合成音声の品質を調節していた。すなわち、従来技術による音声合成処理では、ＣＰＵ占有率が低く、音声合成処理に充てるリソースが少ない場合、合成音声の品質は低くされていた。図１５（ａ）では、重要度が最も高い単語「みぎ」を合成するタイミングで、ＣＰＵ占有率が相対的に低くなっているために、重要単語である「みぎ」の音質が相対的に悪くなり、重要な言葉を聞き取りにくくしている虞があった。
【００７６】
それに対して、図１５（ｂ）に示す本実施の形態による音声合成処理の場合には、単語の重要度に応じて合成処理のリソースを設定し、重要度が低い単語は短時間で合成処理する。そして、本実施の形態による音声合成処理では、余った処理時間で重要な単語を優先的に合成処理する。これにより、本実施の形態に係る音声合成処理は、ＣＰＵ占有率の変動の影響を受けにくくしつつ、重要な単語の品質を高く保つことができ、重要な言葉を聞き取りやすくすることができる。
【００７７】
具体的には、図１５（ｂ）では、先頭の単語「ぜんぽう」は重要度がやや低い（重要度２）ので短時間で合成処理を終了し、余った時間（「ぜんぽう」の目標終了時刻までの間）すなわち、残留時間において、重要度がやや高い単語（重要度３）「さんびゃく」の合成処理を開始している。また、単語「さんびゃく」の合成処理が終了した際、単語「さんびゃく」の目標終了時刻まで時間が残っているので、重要度が高い単語（重要度４）「みぎ」の合成処理を開始している。このように、本実施の形態に係る音声合成装置１０では、余った処理時間を用いて、重要な単語を先行して合成処理する。これにより、音声合成装置１０では、リアルタイム性を確保しながら処理負荷の変動の影響を受けにくくしつつ、重要な単語を高品質に合成処理することができ、重要な言葉を聞き取りやすくすることができる。
【００７８】
以上説明したように、第１実施の形態に係る音声合成装置１０は、入力されたテキストデータ１０１を複数の部分（具体的には単語）に分割し、聴者が合成音声を聞き取る際の、部分ごとの理解への寄与の大きさに基づいて、それぞれの部分の重要度を推定する。次に、音声合成装置１０は、合成処理を実行するときのデバイス状態および重要度に基づいて、処理負荷を決定する。そして、音声合成装置１０は、重要度の低い音素に対しては処理負荷を低く抑える（音質を相対的に低くする）ことによって処理時間を低減し、その処理時間を低減した分を重要度の高い音素の処理時間に振り分けて、重要な言葉を聞き取りやすい合成音声を生成する。そのため、音声合成装置１０は、リアルタイム性を確保しながらリソースの変動の影響を受けにくくしつつ、重要な単語を高品質に合成処理することができ、重要な言葉を聞き取りやすくすることができる。
【００７９】
（第２実施の形態）
第２実施の形態に係る音声合成装置１６００の機能的構成について、図１６を用いて説明する。なお、図１６中で、図２と同じ構成については、同じ符号を付し、説明を省略する。
音声合成装置１６００は、通信部８００を備え、音声合成するテキスト中の重要な部分を音声合成サーバ１６１０に送信して、その重要な部分の音声合成処理を音声合成サーバ１６１０に行わせる構成となっている。なお、音声合成サーバ１６１０は、合成処理のために潤沢なリソースを備えているものとする。そして、音声合成装置１６００は、音声合成サーバ１６１０において高品質に合成された重要な部分の合成音声を、通信部８００を経由して受信する。一方、音声合成装置１６００は、音声合成するテキスト中の重要でない部分の音声合成処理は自装置内で実行する。これにより、音声合成装置１６００は、リアルタイム性を確保しながら、重要な言葉を聞き取りやすい合成音声を生成することができる。
【００８０】
音声合成装置１６００は、第１実施の形態に係る音声合成装置１０と同様、入力部１００、テキスト解析部２００、合成処理管理部３００、波形生成部４００ａ、デバイス状態取得部５００、音声出力部６００を備える。また、音声合成装置１６００は、通信状態取得装置７００および通信部８００をさらに備える。
【００８１】
通信状態取得装置７００は、通信部８００が置かれている通信状態に関する情報を取得する。また、通信部８００は、有線および無線を問わず、音声合成サーバ１６１０と通信する。音声合成サーバ１６１０は、受信したテキスト中の重要な部分について音声波形を生成して、生成した音声波形を音声合成装置１６００に送信する。音声合成サーバ１６１０で生成された音声波形は、音声合成装置１６００で合成した音声よりも高音質であることが期待できる。なお、音声出力部６００は、通信部８００を経由して受信した重要な部分の音声波形と、自装置内で生成した音声波形とを、出力バッファ（不図示）に記憶し、正しい順番で出力する。
【００８２】
また、音声合成装置１６００の波形生成部４００ａは、第１実施の形態に係る音声合成装置１０の波形生成部４００（図２参照）と同様、合成処理部４１０および負荷制御部４２０を備える他、通信制御部４３０および合成手法決定部４４０を備える。通信制御部４３０は、通信部８００の動作を制御する。
【００８３】
合成手法決定部４４０は、通信状態取得装置７００によって取得された通信状態に関する情報に基づいて、音声合成の手法を判断する。具体的には、合成手法決定部４４０は、例えば、テキスト内に含まれる単語単位で、自装置内または音声合成サーバ１６１０のどちらで音声波形を生成するかを判断する。
【００８４】
合成手法決定部４４０は、例えば、通信状態が良いときは、重要度の低い音素でも音声合成サーバ１６１０で合成するように判断する。一方、通信状態が悪いときは、合成手法決定部４４０は、重要度の高い音素（重要度が所定値以上の音素）のみを、音声合成サーバ１６１０で処理すると判断する。また、極端な例として、通信措置８００で全く通信ができない場合、合成手法決定部４４０は、すべての音素を音声合成装置１６００内部で合成すると判断する。
【００８５】
さらに、合成手法決定部４４０は、通信部８００の通信状態に基づいて、音声合成サーバ１６１０との間でデータを送受信するタイミングや、データの送受信順序を決定するようにしても良い。例えば、合成手法決定部４４０は、重要な音素の送信するタイミングを時間軸上に分散させることによって、通信環境の変化に影響されにくくする。このような処理は、通信環境が不安定で、その変動が予測できないようなデバイス（例えば、カーナビゲーション装置等）に対して有効である。
【００８６】
ここで、波形生成部４００ａの動作について、図１６を用いて説明する。
図１６において、波形生成部４００ａの合成手法決定部４４０は、合成処理管理部３００の出力を取得し、通信状態取得装置７００によって取得された通信状態に関する情報に基づいて、合成用ターゲット８１０（図８参照）内に含まれる単語を、音声合成サーバ１６１０で合成処理する単語と、自装置内で合成処理する単語とに分ける。
【００８７】
自装置内で合成処理すると判断された単語は、合成処理部４１０において、第１実施の形態の場合と同様に処理され、音声波形５０１（図７参照）として音声出力部６００に出力される。一方、音声合成サーバ１６１０で合成処理すると判断された単語は、通信制御部４３０によって、通信部８００を介して音声合成サーバ１６１０に送信される。このとき、通信制御部４３０は、単語の送信タイミングや音声合成サーバ１６１０で生成された音声波形の受信タイミングを制御する。また、音声合成サーバ１６１０において合成処理された単語は、通信装置８００を介して、音声波形５０１として音声出力部６００に出力される。
【００８８】
このように、第２実施の形態に係る音声合成装置１６００（図１６参照）は、通信状態取得装置７００によって取得した通信状態に基づいて、入力されたテキストデータ１０１中の単語を、音声合成サーバ１６１０で合成処理する単語と、自装置内で合成処理する単語とに分ける。例えば、テキストデータ１０１中の重要な部分（単語）を音声合成サーバ１６１０に送信して高品質に処理し、音声合成サーバ１６１０から処理された音声波形５０１を取得する一方で、重要でない部分は自装置内で音声波形５０１を生成する。これにより、音声合成装置１６００は、リアルタイム性を確保しながら、重要な言葉を聞き取りやすい合成音声を生成することができる。
【００８９】
（第３実施の形態）
第３実施の形態に係る音声合成装置１７００の機能的構成について、図１７を用いて説明する。第３実施の形態に係る音声合成装置１７００は、第１実施の形態の音声合成装置１０の場合と同様、入力テキストの内容理解への寄与の大きさに基づいて各単語の重要度を推定する。そして、音声合成装置１７００は、重要な単語については、そのまま合成処理するが、重要でない部分については、より短時間で合成処理できるようテキストの文言を変更してから合成処理する。この理由は、合成処理に充てるリソースが限られている場合においても、重要な単語の合成処理に充てるリソースを確保するためである。このような処理により、音声合成装置１７００では、リアルタイム性を確保しながら重要な単語を高品質に合成することができるので、重要な言葉を聞き取りやすい合成音声を生成することができる。なお、図１７では、図２に示した第１実施の形態に係る音声合成装置１０と同様の構成部には同じ符号を付し、詳細な説明を省略する。
【００９０】
図１７に示すように、音声合成装置１７００は、第１実施の形態に係る音声合成装置１０（図２参照）と同様、入力部１００、テキスト解析部２００ａ、合成処理管理部３００、波形生成部４００、デバイス状態取得部５００、音声出力部６００を備える。
【００９１】
ここで、音声合成装置１７００のテキスト解析部２００ａは、第１実施の形態のテキスト解析部２００と同様の構成である言語解析部２１０、重要度推定部２２０、ターゲット付与部２３０の他、合成時間評価部２４０、テキスト変更部２５０をさらに備えている。
【００９２】
合成時間評価部２４０は、デバイス状態取得部５００と接続されており、デバイス状態取得部５００から取得したデバイスの状態情報に基づいて、単語の合成処理にかかる時間を予測し、その単語の合成処理が終了すると予測される時刻を示す予測時刻を算出する。そして、合成時間評価部２４０は、予測時刻と目標終了時刻とを比較して、予測時刻が目標終了時刻を越えるか否かを判定する。合成時間評価部２４０は、予測時刻が目標終了時刻を越えないと判定した場合、テキストデータをテキスト変更部２５０に出力する。
【００９３】
また、テキスト変更部２５０は、後記するテキスト変更ルール１８００（図１８参照）に基づいて、テキストの内容理解に影響が小さい部分（すなわち、重要度が相対的に低い部分）の単語を、より短い時間で合成終了できるように変更する。
【００９４】
ここで、テキスト変更ルール１８００の一例について、図１８を用いて説明する。図１８に示すように、テキスト変更ルール１８００は、ルール１として「丁寧語を普通形に変換」、ルール２として「助詞を削除」、ルール３として「副詞を削除」、ルール４として「長い単語を短い同意語略語に変換」、ルール５として「有声接続単語を無声接続単語に変換」等が挙げられる。これらのルールは、音声合成処理の処理負荷を相対的に低減させることができるものとして、統計的手法によって学習されたもの等を用いることができる。音声合成装置１７００は、予測時刻が目標終了時刻以前となるまで、ルール１から順番にテキルト変更ルール１８００を適用し、テキストの文言を変更する。
【００９５】
テキスト解析部２００ａの動作について、図１９を用いて説明する。なお、第３実施の形態において、テキスト解析部２００ａ以外の構成部の動作は、第１実施の形態の場合と同様であるので詳細な説明を省略する。図１９において、まず、テキスト解析部２００ａの言語解析部２１０は、入力部１００（図２参照）からテキストデータ１０１を取得する。言語解析部２１０は、事前に作成された言語解析モデル２１２を用いて、テキストデータ１０１を中間言語２１１に変換する。
【００９６】
重要度推定部２２０は、重要度解析モデル２２２を用いて、中間言語２１１に含まれるすべての単語の重要度を推定する。そして、重要度推定部２２０は、推定した重要度の情報を中間言語２１１に付加して、重要度付き中間言語２２１として合成時間評価部２４０に出力する。
【００９７】
合成時間評価部２４０は、デバイス状態取得部５００によって取得されたデバイス状態情報および合成時間評価モデル２４２に基づいて、単語の合成処理にかかる時間を予測し、その単語の予測時刻２４１を算出する。そして、合成時間評価部２４０は、予測時刻と目標終了時刻とを比較して、予測時刻が目標終了時刻を越えるか否かを判定する（Ｓ１９０１）。合成時間評価部２４０は、予測時刻が目標終了時刻を越えないと判定した場合（合成時間評価部２４０でＹｅｓ）、テキストデータ１０１をテキスト変更部２５０に出力する。また、合成時間評価部２４０は、予測時刻が目標終了時刻を越えないと判定した場合（合成時間評価部２４０でＮｏ）、第１実施の形態の場合と同様に、重要度付き中間言語２２１を、ターゲット付与部２３０に出力する。
【００９８】
テキスト変更部２５０は、テキスト変更モデル２５２に記憶されているテキスト変更ルール１８００（図１８参照）に基づいてテキストデータ１０１を変更し、テキストデータ２５１を生成する。このとき、テキスト変更部２５０は、テキストに含まれる単語の重要度に基づいて、変更する部分（単語）を決定する。すなわち、テキスト変更部２５０は、重要度が高く、テキストの内容理解への寄与の大きさが大きい単語については変更せず、相対的に重要度が低い単語を優先的に変更して、テキストの内容理解が影響されないようにする。変更後のテキストデータ２５１は、再度、言語解析部２１０に入力され、単語の予測時刻２４１が目標終了時刻以前となるまで、テキスト変更の処理を繰り返す。
【００９９】
このように、第３実施の形態に係る音声合成装置１７００（図１７参照）は、音声合成処理が終了する予測時刻が目標終了時刻を越えると判定した場合、デバイスの処理負荷が低くなるようにテキストデータ１０１（図１９）を変更し、目標終了時間内に合成処理が終了するようにする。これにより、音声合成装置１７００では、合成処理に充てるリソースが限られている場合においても、重要な単語の合成処理に充てるリソースを確保して高音質で合成処理することができ、リアルタイム性を確保しながら重要な言葉を聞き取りやすい合成音声を生成することができる。
【産業上の利用可能性】
【０１００】
以上説明したように、本発明に係る音声合成装置および音声合成方法は、リアルタイム性が要求される音声合成処理を実行する情報処理端末に有効であり、特に、複数の処理が同時におこなわれ、リソースの処理能力の変動が予測でないようなデバイス（例えば、音声合成装置を音声案内の用途に用いるカーナビゲーション装置やナビゲーション装置等）に有効である。
【符号の説明】
【０１０１】
１０，１６００，１７００  音声合成装置
１００  入力部
２００，２００ａ  テキスト解析部
２１０  言語解析部
２２０  重要度推定部
２３０  ターゲット付与部
２４０  合成時間評価部
２５０  テキスト変更部
３００  合成処理管理部
３１０  音素決定部
３２０  終了時刻決定部
４００，４００ａ  波形生成部
４１０  合成処理部
４２０  負荷制御部
４３０  通信制御部
４４０  合成手法決定部
５００  デバイス状態取得部（負荷状態取得部）
６００  音声出力部
７００  通信状態取得部
８００  通信部
１６１０  音声合成サーバ（他の音声合成装置）
【図１】
0005758713.tif 000002
【図２】
0005758713.tif 000003
【図３】
0005758713.tif 000004
【図４】
0005758713.tif 000005
【図５】
0005758713.tif 000006
【図６】
0005758713.tif 000007
【図７】
0005758713.tif 000008
【図８】
0005758713.tif 000009
【図９】
0005758713.tif 000010
【図１０】
0005758713.tif 000011
【図１１】
0005758713.tif 000012
【図１２】
0005758713.tif 000013
【図１３】
0005758713.tif 000014
【図１４】
0005758713.tif 000015
【図１５】
0005758713.tif 000016
【図１６】
0005758713.tif 000017
【図１７】
0005758713.tif 000018
【図１８】
0005758713.tif 000019
【図１９】
0005758713.tif 000020