(57)【要約】【課題】複数の合成音声同士で対話を行う音声合成装置であって、自話者に適合する相手話者を自動選択して相手話者の音声を合成することのできる音声合成装置を得る。【解決手段】単語とその単語が表す話者特徴との対応関係を格納した単語辞書２０と、合成する音声の入力テキストに含まれる単語を解析するテキスト解析部１０と、相手話者の話者特徴を格納する相手話者プロファイル４０と、話者もしくは口調またはその双方の特徴データを格納した話者ＤＢ６０と、話者ＤＢ６０を用いて音声を合成する音声合成部５０と、を備え、相手話者プロファイル４０は、自話者と、相手話者の話者特徴と、の対応関係を格納しており、音声合成部５０は、相手話者プロファイル４０を参照して、自話者に対応付けられた相手話者の話者特徴を特定し、その結果を用いて相手話者の音声を合成する。【選択図】図１
2009025658.tif 000002
【特許請求の範囲】
【請求項１】
複数の合成音声同士で対話を行う音声合成装置であって、
単語とその単語が表す話者特徴との対応関係を格納した単語辞書と、
合成する音声の入力テキストを受け取ってその入力テキストに含まれる単語を解析するテキスト解析部と、
相手話者の話者特徴を格納する相手話者プロファイルと、
話者もしくは口調またはその双方の特徴データを格納した話者ＤＢと、
前記話者ＤＢを用いて音声を合成する音声合成部と、
を備え、
前記相手話者プロファイルは、
自話者と、相手話者の話者特徴と、の対応関係を格納しており、
前記音声合成部は、
前記相手話者プロファイルを参照して、自話者に対応付けられた相手話者の話者特徴を特定し、
その相手話者の話者特徴に適合する相手話者を前記話者ＤＢより検索し、
その検索結果を用いて相手話者の音声を合成することにより、
自話者に適合する相手話者を自動選択して相手話者の音声を合成する
ことを特徴とする音声合成装置。
【請求項２】
前記テキスト解析部の処理結果に基づき前記相手話者プロファイルを更新するプロファイル構成部を備え、
前記テキスト解析部は、
相手話者の発話内容を表す前記入力テキストの形態素解析と単語抽出を行い、
前記プロファイル構成部は、
前記テキスト解析部が抽出した単語と前記単語辞書とを用いて、前記相手話者プロファイルのうち、現在の自話者に該当する部分を更新し、
前記音声合成部は、
更新後の前記相手話者プロファイルを参照して、自話者に対応付けられた相手話者の話者特徴を特定する
ことを特徴とする請求項１に記載の音声合成装置。
【請求項３】
前記相手話者プロファイルは、相手話者の話者特徴を数値化して格納しており、
前記プロファイル構成部は、
前記テキスト解析部が抽出した単語と前記単語辞書とを用いて、相手話者の話者特徴を数値化し、
その数値の合計値が０となるように加減補正を行って、補正後の数値で前記相手話者プロファイルを更新する
ことを特徴とする請求項２に記載の音声合成装置。
【請求項４】
請求項１ないし請求項３のいずれかに記載の音声合成装置を複数有し、
各音声合成装置が出力する合成音声同士で対話を行う
ことを特徴とする音声合成システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、音声合成装置及びその音声合成装置を用いた音声合成システムに関するものであり、特に、複数の合成音声同士で対話を行うものに関する。
【背景技術】
【０００２】
従来、『発話スタイル別テーブルを基本のテーブルと、組合せることによって、より自然な発話スタイルで読み上げることのできるテキスト音声合成装置を提供する。』ことを目的とした技術として、『入力された文字情報を音声信号に変換するテキスト音声合成装置において、発話スタイル指定部１７には、通常スタイルと、朗読スタイル、会話スタイル等を用意した継続時間テーブルの指定スイッチが設けられている。合成パラメータ生成部１３は、音韻記号列に基づいて、対応する音声素片データを音声素片データ記憶部１４から取り出し、テキストの音韻環境や、アクセント情報から、継続時間テーブル１６を参照して継続時間を決定し、パワーや基本周波数パターンといった、音声合成用パラメータを生成する。』というものが提案されている（特許文献１）。
【０００３】
また、『利用者への応答を自我状態に応じて変化させ、利用者に違和感や不快感の生じない自然な対話を行うことを可能とした対話エージェントを提供する。』ことを目的とした技術として、『顔感情推定部１３はカメラ４１で撮像した利用者の表情から感情を推定する。マイクロホン４２から入力された利用者の音声は、音声感情推定部１４で感情が推定され、口調推定部１５で口調が推定され、テキスト抽出部１６でテキストが抽出される。自我状態推定部２０では、利用者の表情から得た感情と音声から得た感情と口調とテキストとの４種類の情報を組み合わせることにより利用者の発話に対する自我状態ベクトルを推定する。対話制御部３０は、利用者の発話により推定された自我状態ベクトルから応答用の自我状態ベクトルおよびテキストを決定し、スピーカ４３を通して合成音声で応答する。』というものが提案されている（特許文献２）。
【０００４】
【特許文献１】特開平８−３３５０９６号公報（要約）
【特許文献２】特開２００６−７１９３６号公報（要約）
【発明の開示】
【発明が解決しようとする課題】
【０００５】
上記特許文献１に記載の技術では、発話スタイルを指定することで、より自然な読み上げを行うことができるが、同技術は単一の合成音声による発話を想定したものであり、複数の合成音声による対話を想定したものではない。
したがって、複数の合成音声による対話を行う際には、個々の合成音声について個別に発話スタイルを指定するか、もしくは、自動的に発話スタイルを指定させる場合には、対話相手の特徴を考慮することなく指定することになる。
個別に発話スタイルを指定する場合にはそのための手間が必要であり、また対話相手の特徴を考慮しない場合には、発話内容と音声特徴が合っていない可能性がある。
【０００６】
上記特許文献２に記載の技術は、発話内容のテキストを利用者の状態に応じて変化させるものであるが、音声の特徴を変化させることまでは考慮していない。
【０００７】
上記特許文献１、特許文献２には、上述のような課題があり、そのため、複数の合成音声同士で対話を行う音声合成装置であって、自話者に適合する相手話者を自動選択して相手話者の音声を合成することのできる音声合成装置、及びその音声合成装置を用いた音声合成システムが望まれていた。
【課題を解決するための手段】
【０００８】
本発明に係る音声合成装置は、複数の合成音声同士で対話を行う音声合成装置であって、単語とその単語が表す話者特徴との対応関係を格納した単語辞書と、合成する音声の入力テキストを受け取ってその入力テキストに含まれる単語を解析するテキスト解析部と、相手話者の話者特徴を格納する相手話者プロファイルと、話者もしくは口調またはその双方の特徴データを格納した話者ＤＢと、前記話者ＤＢを用いて音声を合成する音声合成部と、を備え、前記相手話者プロファイルは、自話者と、相手話者の話者特徴と、の対応関係を格納しており、前記音声合成部は、前記相手話者プロファイルを参照して、自話者に対応付けられた相手話者の話者特徴を特定し、その相手話者の話者特徴に適合する相手話者を前記話者ＤＢより検索し、その検索結果を用いて相手話者の音声を合成することにより、自話者に適合する相手話者を自動選択して相手話者の音声を合成するものである。
【発明の効果】
【０００９】
本発明に係る音声合成装置によれば、複数の合成音声同士で対話を行う音声合成装置において、相手話者のプロファイルに応じた音声を自動的に合成することができる。
【発明を実施するための最良の形態】
【００１０】
実施の形態１．
図１は、本発明の実施の形態１に係る音声合成装置１００の機能ブロック図である。
音声合成装置１００は、テキスト解析部１０、単語辞書２０、プロファイル構成部３０、相手話者プロファイル４０、音声合成部５０、話者データベース６０（以下、話者ＤＢ６０と称す）を備える。
【００１１】
テキスト解析部１０は、合成音声の入力テキストを受け取り、形態素解析、係り受け解析、単語抽出を行う。入力テキストと解析結果は音声合成部５０へ、抽出した単語はプロファイル構成部３０へ、それぞれ出力される。
単語辞書２０は、後述の図２で説明する対応関係データを格納している。
【００１２】
プロファイル構成部３０は、テキスト解析部１０が抽出した入力テキスト中の単語と、自話者の話者と口調の指定入力とを受け取り、単語辞書２０に格納されている対応関係データと照らし合わせて、相手話者プロファイル４０を更新する。また、自話者の話者と口調の指定入力は、音声合成部５０に出力される。
相手話者プロファイル４０は、後述の図３で説明するデータを格納している。
相手話者プロファイル４０の更新に関しては、後述する。
【００１３】
音声合成部５０は、テキスト解析部１０の出力、相手話者プロファイル４０に格納されているデータ、及び話者ＤＢ６０を用いて、音声合成を行う。
話者ＤＢ６０は、複数の話者や口調の特徴データを格納している。
音声合成の詳細に関しては、後述する。
【００１４】
テキスト解析部１０、プロファイル構成部３０、音声合成部５０は、これらの機能を実現する回路デバイス等のハードウェアで構成することもできるし、マイコンやＣＰＵ等の演算装置上で動作するソフトウェアとして構成することもできる。
【００１５】
テキスト解析部１０は、入力テキストを受け取るために必要なインターフェースを適宜備える。
音声合成部５０は、合成音声を出力するために必要なインターフェースを適宜備える。合成音声の形式は、音声データでもよいし、スピーカー等により出力される音声そのものでもよい。
【００１６】
単語辞書２０、相手話者プロファイル４０、話者ＤＢ６０は、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）等の記憶装置に、必要な単語データ、話者特徴量等のデータを格納することにより構成することができる。
【００１７】
図２は、単語辞書２０の構成とデータ例を示す図である。単語辞書２０は、単語と、その単語が表す話者特徴との対応関係データを格納している。以下、図２のデータ例に即して説明する。
なお、図２において、値が「１」であるデータは、縦軸と横軸が対応付けられていることを表しており、「０」であるデータは、縦軸と横軸が対応付けられていないことを表している。
【００１８】
図２のデータ例では、単語「優勝」は、話者特徴「喜び」に対応付けられている。これは、「優勝」という単語を発話する話者は、話者特徴「喜び」で特徴付けられることを意味している。
同様に、「殴る」という単語を発話する話者は、話者特徴「怒り」で特徴付けられることを意味している。
単語と話者特徴との対応関係は、複数設定してもよい。例えば図２の３行目のデータでは、単語「食」と話者特徴「喜び」「平常」が対応付けられている。
【００１９】
相手話者の発話テキストを取得し、そのテキストに含まれる単語を抽出して単語辞書２０と比較することにより、その相手話者を発話内容によって特徴付けることができる。相手話者を特徴付けた後の処理については、後述する。
【００２０】
図３は、相手話者プロファイル４０の構成とデータ例を示す図である。相手話者プロファイル４０は、自話者を指定することにより、自話者に適合する相手話者の話者特徴を得るためのデータを格納している。以下、図３のデータ例に即して説明する。
なお、ここでいう「自話者」とは、話者と口調の双方により特徴付けられるものをいうこととする。
【００２１】
図３のデータ例では、自話者が「話者Ａ、口調Ａ」であるときは、「怒り＝２、悲しみ＝２、喜び＝２、平常＝４」で特徴付けられる相手話者が自話者に適合するので、そのような相手話者を自動選択するべきことを表している。
同様に、自話者が「話者Ｃ、口調Ｄ」であるときは、「怒り＝０、悲しみ＝０、喜び＝９、平常＝１」で特徴付けられる相手話者が自話者に適合するので、そのような相手話者を自動選択するべきことを表している。
【００２２】
図３のデータを用いることにより、自話者を指定するのみで、自話者に適合する相手話者の話者特徴を得ることができるので、その話者特徴に合った話者を話者ＤＢ６０から自動的に選択することができる。
【００２３】
ここで、「自話者に適合する相手話者」ということについて補足しておく。
例えば、自話者として「話者Ｃ、口調Ｄ」を指定したものと仮定する。また、「話者Ｃ、口調Ｄ」による合成音声は、嬉しそうな声や口調で話す合成音声であるものとする。
このとき、人間同士の対話であれば、自話者が嬉しそうな声や口調の際には、相手話者も同様に嬉しそうな声や口調で話しているのが自然であるが、合成音声の場合は、そのような感情認識をすることができない。
したがって、自話者が嬉しそうな声や口調で話す合成音声であるときは、相手話者も同様に嬉しそうな声や口調で話す合成音声となるように、事前設定をしなければならない。
【００２４】
しかるに、音声合成の過程は複雑であるため、合成音声の声や口調を事前設定するのは一定の手間を要する。そこで、図３のような相手話者を特徴付けるデータを用意しておくことにより、これに基づいて、自話者を指定するのみで、自話者との関係において不自然さのない相手話者を自動的に選択することができるのである。
【００２５】
上述の「話者Ｃ、口調Ｄ」の例の場合、図３の４行目のデータを参照する。４行目には「怒り＝０、悲しみ＝０、喜び＝９、平常＝１」が格納されているため、これに基づき相手話者を選択すると、自話者と同様に嬉しそうな声や口調（喜び＝９であるため）で話す相手話者が選択されることになる。
【００２６】
次に、相手話者プロファイル４０の更新について説明する。
上記では、「自話者に適合する相手話者」について説明したが、自話者と相手話者との適合関係は普遍的なものではなく、相手話者の発話内容によってある程度変動する。
例えば、自話者が主に嬉しそうな声や口調で話すことが多いとしても、対話の内容によっては、相手話者の応答テキストに悲しげな内容が含まれる場合もある。このような時にまで相手話者にも嬉しそうな声や口調で発話させるのは、対話として不自然である。
【００２７】
そこで、図３で説明したような相手話者プロファイル４０の初期値を一応用意してはおくのであるが、相手話者の発話テキスト内容に応じて、相手話者プロファイル４０の内容も随時更新していくことが望ましい。
このような更新を繰り返して蓄積することにより、「自話者に適合する相手話者」も変化していく。
【００２８】
次に、以上説明した図１〜図３の構成の下で、本実施の形態１に係る音声合成装置１００の動作について説明する。なお、以下の説明では、２つの合成音声同士で対話することを想定する。一方の合成音声を自話者、もう一方の合成音声を相手話者とする。
【００２９】
（１）自話者の話者と口調の指定
自話者の話者と口調を指定し、プロファイル構成部３０に入力する。ここでは「話者Ａ、口調Ｂ」を指定したものとする。なお、この時点では、相手話者の話者と口調は特定されていない。
【００３０】
（２）相手話者の発話テキストの取得
相手話者が今から発話しようとしている発話テキストの内容を取得し、テキスト解析部１０に入力する。このときの発話テキストの量は、単語単位ではなく、ある一定のテキスト量を有する、例えばセンテンス単位とする。
【００３１】
（３）入力テキストの解析
テキスト解析部１０は、入力テキストの形態素解析、係り受け解析、単語抽出を行う。入力テキストと解析結果は音声合成部５０へ、抽出した単語はプロファイル構成部３０へ、それぞれ出力される。
【００３２】
（４）相手話者の特徴付け
プロファイル構成部３０は、テキスト解析部１０が相手話者の発話テキストから抽出した単語を受け取り、単語辞書２０に格納されているデータと比較、集計することにより、相手話者の発話テキストに基づき相手話者の特徴付けを行う。
【００３３】
例えば、相手話者の発話テキストに含まれる各話者特徴の要素数が、「怒り＝４５」、「悲しみ＝１」、「喜び＝１００」、「平常＝３０」、「単語総数＝４５＋１＋１００＋３０＝１７６」であったものとする。
このとき、各要素の割合は、「怒り＝２６％」、「悲しみ＝１％」、「喜び＝５７％」、「平常＝１７％」となる。
更新割合の条件として、割合１０％に対して更新１と小数点以下の切捨てを行うことで、スケールを相手話者プロファイル４０の標準スケールにあわせる。ここでは、「怒り＝２」、「悲しみ＝０」、「喜び＝５」、「平常＝１」となる。
【００３４】
（５）相手話者プロファイル４０の更新
プロファイル構成部３０は、ステップ（４）で求めた更新値（ここでは「怒り＝２」、「悲しみ＝０」、「喜び＝５」、「平常＝１」）を用いて相手話者プロファイル４０の内容を更新する。
更新に際して、相手話者プロファイル４０の横軸方向の合計値が変動しないよう、正規化を行う。ここでは、「怒り＝２」、「悲しみ＝０」、「喜び＝５」、「平常＝１」の合計値が０となるように、各項目の更新値を加減補正する。
【００３５】
加減補正の値は、以下のようにして求めることができる。
加減補正値をｘとすると、更新項目は「怒り」〜「平常」の４項目があるので、次の（式１）を解くことにより加減補正値ｘが得られる。
２＋０＋５＋１＋４ｘ＝０  ・・・（式１）
よって、ｘ＝−２
【００３６】
以上より、最終的な更新値は、「怒り＝０」、「悲しみ＝−２」、「喜び＝３」、「平常＝−１」となる。
プロファイル構成部３０は、図３の「話者Ａ、口調Ｂ」に相当する２行目の各項目に上記の更新値を加えることで、相手話者プロファイル４０を更新する。更新の結果、図３の２行目のデータは、「怒り＝１」、「悲しみ＝４」、「喜び＝４」、「平常＝１」となる。
以上の正規化処理により、図３の２行目の横軸方向の合計値は、更新の前後ともに１０であり、変化していないことになる。
【００３７】
なお、加減補正値を均等に足し合わせることができない場合には、あらかじめ更新割合を増減させる項目を決めておくことで、最終的な微調整を行う。
【００３８】
（６）音声合成の実行
音声合成部５０は、自話者の指定入力（ここでは「話者Ａ、口調Ｂ」）をプロファイル構成部３０より受け取り、相手話者プロファイル４０より該当するデータ（ここでは図３の２行目）を読み取る。
次に、音声合成部５０は、読み取った相手話者プロファイル４０の相手話者特徴データに基づき、該当する話者や口調を話者ＤＢ６０より検索する。検索した結果を用いて音声合成を行うことにより、相手話者の合成音声は、自話者に適合する話者特徴を持つこととなる。
【００３９】
なお、ステップ（４）〜（５）において、相手話者プロファイル４０の横軸方向の合計値が変動しないように加減補正をするのは、相手話者の特徴に偏りが生じないようにするためである。
仮に、加減補正をしなかったとした場合、例えば自話者として「話者Ａ、口調Ｂ」ばかりを指定し続けると、図３の２行目のデータのみ横軸方向の合計値が際限なく大きくなっていくことになる。
この場合、ステップ（６）において、相手話者特徴データに該当する話者や口調を話者ＤＢ６０より検索する際に、図３の２行目の特徴値のスケールと、話者ＤＢ６０が格納している特徴値のスケールとが合致しないため、検索が行いにくくなる。そのため、ステップ（４）〜（５）において、スケールの正規化を行っているのである。
【００４０】
以上のように、本実施の形態１によれば、相手話者プロファイル４０を参照することにより、自話者に適合する相手話者の話者特徴が得られるので、合成音声同士の対話において、不自然さのない対話を行うことができる。
また、自話者を指定するのみで相手話者の話者特徴が得られるので、合成音声同士の自然な対話を実現するに際しての事前準備が簡単になり、手間の削減の観点から有利である。
【００４１】
また、プロファイル構成部３０は、相手話者の発話テキストの内容に応じて相手話者プロファイル４０を自動更新するので、自話者と相手話者との適合関係は固定的なものではなく、更新を蓄積することで変動していく。
相手話者プロファイル４０の更新を蓄積することにより、自話者と相手話者との対応関係は、より対話内容に適合したものとなり、合成音声同士の対話の自然さがさらに向上する。
【００４２】
実施の形態２．
実施の形態１では、単一の音声合成装置１００内において、複数の合成音声同士で対話を行うことについて説明した。本発明の実施の形態２では、複数の音声合成装置同士の対話について説明する。
【００４３】
図４は、本実施の形態２に係る音声合成システムの構成例である。
図４の音声合成装置１００ａと１００ｂは、それぞれ実施の形態１で説明した音声合成装置１００と同様の構成を備え、互いに出力する合成音声により音声対話を行おうとしているものとする。
図４において、音声合成装置１００ａは実施の形態１における自話者に相当し、「話者Ａ、口調Ａ」を指定して合成した合成音声を出力するものとする。音声合成装置１００ｂは実施の形態１における相手話者に相当するものとする。
【００４４】
音声合成装置１００ａは、音声合成装置１００ｂが出力する合成音声の発話テキストを受け取るためのインターフェースを備えるか、もしくはあらかじめ同テキストを保持しておくことにより、相手話者の発話テキストを取得できるものとする。
【００４５】
音声合成装置１００ａは、実施の形態１で説明した手法により、自話者「話者Ａ、口調Ａ」に適合する相手話者の話者特徴を決定し、それを音声合成装置１００ｂに送信する。ここでは仮に、「話者Ｂ、口調Ｃ」と決定したものとする。
音声合成装置１００ｂは、音声合成装置１００ａの指示に基づき、「話者Ｂ、口調Ｃ」を用いて合成した音声を出力する。
自話者と相手話者を指定した後の対話中、音声合成装置１００ａ、１００ｂは、相手話者プロファイル４０の内容を更新する。
【００４６】
なお、本実施の形態２において、音声合成装置１００ａを自話者、音声合成装置１００ｂを相手話者として設定したため、両者の間に主従関係が生じているが、必ずしも主従関係を設定する必要はなく、単に相手話者プロファイル４０の内容を更新するのみであれば、両者ともに自話者として能動的に音声合成を行ってもよい。
ただしこの場合、相手話者の指定は省略する。
【００４７】
以上の実施の形態１〜２において、相手話者プロファイル４０は標準スケールを整数とし、各項目には整数値を格納することとしたが、標準スケールは整数値に限らない。
また、相手話者プロファイル４０の横軸の合計値は１０に限るものではなく、話者ＤＢ６０に格納している数値などを考慮して、適宜設定すればよい。
【００４８】
また、以上の実施の形態１〜２において、２話者による対話について説明したが、話者数は２より多くてもよい。
【００４９】
以上のように、本実施の形態２によれば、複数の音声合成装置が出力する合成音声同士の対話において、実施の形態１と同様の効果を発揮することができる。
【図面の簡単な説明】
【００５０】
【図１】実施の形態１に係る音声合成装置１００の機能ブロック図である。
【図２】単語辞書２０の構成とデータ例を示す図である。
【図３】相手話者プロファイル４０の構成とデータ例を示す図である。
【図４】実施の形態２に係る音声合成システムの構成例である。
【符号の説明】
【００５１】
１０  テキスト解析部、２０  単語辞書、３０  プロファイル構成部、４０  相手話者プロファイル、５０  音声合成部、６０  話者ＤＢ、１００  音声合成装置。
【図１】
2009025658.tif 000003
【図２】
2009025658.tif 000004
【図３】
2009025658.tif 000005
【図４】
2009025658.tif 000006