(57)【要約】【課題】合成音声の印象を表すキーワードを検討するユーザの手間を低減する。【解決手段】候補キーワード提示部（３４）は、音声の印象を表すキーワードを修飾する可能性がある候補キーワードまたは候補キーワードを修飾する可能性がある候補キーワードを提示する。キーワード入力部（１４）は、キーワード、またはキーワード及び候補キーワードを受け取る。重心計算部（２０）は、キーワード、またはキーワード及び候補キーワードから選択される選択キーワードの表現合成空間上の座標及び重みに基づいて重心座標を計算する。音声データ生成部（２２）は、重心座標を用いて、テキストに対応する音声データを生成する。【選択図】図１
2017076028.tif 000002
【特許請求の範囲】
【請求項１】
音声の印象を表すキーワードを修飾する可能性がある候補キーワードを提示する候補キーワード提示部と、
前記キーワード、または前記キーワード及び前記候補キーワードを受け取るキーワード入力部と、
前記キーワード入力部で受け取った前記キーワード、または前記キーワード及び前記候補キーワードから選択される選択キーワードの表現合成空間上の座標及び重みに基づいて重心座標を計算する重心計算部と、
前記重心座標を用いて、テキストに対応する音声データを生成する音声データ生成部と、
を含む音声合成装置。
【請求項２】
前記キーワードを修飾する可能性がある候補キーワードの内、前記表現合成空間において、前記キーワードとの距離が所定の閾値以下である候補キーワードを、前記候補キーワードを提示する前に、前記候補キーワードから除外するキーワード除外部、
をさらに含む、
請求項１に記載の音声合成装置。
【請求項３】
前記候補キーワード提示部は、前記候補キーワードを修飾する可能性がある候補キーワードをさらに提示する、
請求項１又は請求項２に記載の音声合成装置。
【請求項４】
第１のキーワードを修飾する可能性がある第２のキーワードを予め記憶する第１記憶部、
をさらに含み、
前記候補キーワード提示部は、前記第１記憶部から、前記キーワードまたは直前に選択された前記選択キーワードに基づいて取得した前記候補キーワードを提示する。
請求項１又は請求項３に記載の音声合成装置。
【請求項５】
前記キーワード、及び、前記キーワード及び前記候補キーワードを修飾する可能性がある候補キーワードを予め階層状に記憶する第２記憶部、
をさらに含み、
前記候補キーワード提示部は、前記第２記憶部から取得した前記キーワード及び前記候補キーワードを提示する、
請求項１〜請求項３の何れか１項に記載の音声合成装置。
【請求項６】
コンピュータが、
音声の印象を表すキーワードを修飾する可能性がある候補キーワードを提示し、
前記キーワード、または前記キーワード及び前記候補キーワードを受け取り、
受け取った前記キーワード、または前記キーワード及び前記候補キーワードから選択される選択キーワードの表現合成空間上の座標及び重みに基づいて重心座標を計算し、
前記重心座標を用いて、テキストに対応する音声データを生成する、
音声合成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、音声合成装置及び音声合成方法に関する。
【背景技術】
【０００２】
音声合成の対象となるテキストから言語的な特徴量を抽出し、この言語的な特徴量を音響的な特徴量にマッピングすることで、テキストに応じた感情を示し、テキストに対応する音声を合成する技術が存在する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１４−５６２３５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
音声合成の対象となるテキストに加え、音声の印象を示すキーワードをユーザに入力させ、キーワードに応じた印象を示し、かつ、テキストに対応する音声を合成する場合、合成音声がユーザの意図する印象を有するように、ユーザはキーワードを選定する。キーワードは、感情を示す特徴量に変換される。
【０００５】
合成音声がユーザの意図する印象と異なる場合、意図する印象に合成音声を近付けるためのキーワードをユーザにさらに入力させる。即ち、合成音声が意図する印象に近付くように、無限に存在するキーワードの中から適切なキーワードを選定することをユーザは求められる。
【０００６】
１つの側面として、合成音声の印象を表すキーワードを検討するユーザの手間を低減することを目的とする。
【課題を解決するための手段】
【０００７】
一つの態様では、候補キーワード提示部は、音声の印象を表すキーワードを修飾する可能性がある候補キーワードを提示する。キーワード入力部は、キーワード、またはキーワード及び候補キーワードを受け取る。重心計算部は、キーワード入力部で受け取ったキーワード、またはキーワード及び候補キーワードから選択される選択キーワードの表現合成空間上の座標及び重みに基づいて重心座標を計算する。音声データ生成部は、重心座標を用いて、テキストに対応する音声データを生成する。
【発明の効果】
【０００８】
合成音声の印象を表すキーワードを検討するユーザの手間を低減することができる。
【図面の簡単な説明】
【０００９】
【図１】第１及び第２実施形態に係るコンピュータの要部機能の一例を示すブロック図である。
【図２】実施形態に係る第１マッピング部及び第２マッピング部の一例を示すブロック図である。
【図３】表現言語空間及び表現合成空間を説明するための概念図である。
【図４】第１及び第３実施形態に係る音声データ生成部の一例を示すブロック図である。
【図５】第１及び第２実施形態に係るコンピュータの電気系の構成の一例を示すブロック図である。
【図６】第１及び第２実施形態に係る音声合成処理の流れの一例を示すフローチャートである。
【図７Ａ】第１及び第２実施形態に係るユーザインターフェイス画面の一例を示す概念図である。
【図７Ｂ】第１及び第２実施形態に係るユーザインターフェイス画面の一例を示す概念図である。
【図７Ｃ】第１及び第２実施形態に係るユーザインターフェイス画面の一例を示す概念図である。
【図８】実施形態に係る音声データ生成処理の一例を示すフローチャートである。
【図９】第１及び第３実施形態に係る音声データ変換処理の一例を示すフローチャートである。
【図１０】実施形態に係る候補キーワード取得処理の流れの一例を示すフローチャートである。
【図１１Ａ】音声の感情レベルについて説明するための概念図である。
【図１１Ｂ】音声の感情レベルについて説明するための概念図である。
【図１１Ｃ】音声の感情レベルについて説明するための概念図である。
【図１２】第２及び第３実施形態に係る音声データ生成部の一例を示すブロック図である。
【図１３】第２及び第３実施形態に係る音声データ変換処理の一例を示すフローチャートである。
【図１４】第３実施形態に係るコンピュータの要部機能の一例を示すブロック図である。
【図１５】第３実施形態に係るコンピュータの電気系の構成の一例を示すブロック図である。
【図１６】第３実施形態に係る前処理の流れの一例を示すフローチャートである。
【図１７】第３実施形態に係るユーザインターフェイス画面の一例を示す概念図である。
【図１８】第３実施形態に係る音声合成処理の流れの一例を示すフローチャートである。
【図１９Ａ】第３実施形態に係るユーザインターフェイス画面の一例を示す概念図である。
【図１９Ｂ】第３実施形態に係るユーザインターフェイス画面の一例を示す概念図である。
【発明を実施するための形態】
【００１０】
［第１実施形態］
以下、図面を参照して実施形態の一例である第１実施形態を詳細に説明する。なお、以下の説明では、本実施形態の音声合成装置の一例として汎用装置であるコンピュータを用いた場合を例に挙げて説明するが、本実施形態はこれに限定されるものではない。本実施形態は、例えば、音声合成のための専用装置、または音声を合成するデバイスを装着した基板などに適用可能である。
【００１１】
一例として図１に示すコンピュータ１０は、テキスト入力部１２、キーワード入力部１４、キーワード重み入力部１６、第１マッピング部１８、重心計算部２０、音声データ生成部２２、及び音声出力部２４を含む。コンピュータ１０は、また、仮候補キーワード取得部２６、キーワードデータベース２８、第２マッピング部３０、キーワード除外部３２、及び候補キーワード提示部３４を含む。
【００１２】
テキスト入力部１２は、ユーザによって入力される音声合成の対象となるテキストを受け取る。キーワード入力部１４は、ユーザによって入力されるユーザが意図する合成音声が表す印象を示すキーワード（基本キーワードまたは選択キーワード）を受け取る。キーワード重み入力部１６は、ユーザによって入力されるキーワード（基本キーワードまたは選択キーワード）の重みを示す値を受け取る。
【００１３】
第１マッピング部１８は、キーワード入力部１４が受け取ったキーワード（基本キーワードまたは選択キーワード）を後述する表現合成空間にマッピングする。重心計算部２０は、第１マッピング部１８でマッピングされた複数のキーワード各々の表現合成空間上での座標、及び、キーワード重み入力部１６で受け取ったキーワードの重みに基づいて表現合成空間上の複数のキーワードを含むキーワード群の重心座標を求める。音声データ生成部２２は、テキスト入力部１２で受け取ったテキスト及び重心計算部２０で求められた重心座標に基づいてテキストに対応する音声データを生成する。音声出力部２４は、音声データ生成部２２が生成した音声データを音声に変換して出力する。
【００１４】
キーワードデータベース２８は、第１のキーワードと第１のキーワードを修飾する可能性が高い第２のキーワードとを関連付けた単数または複数のキーワードの組を登録している。仮候補キーワード取得部２６は、キーワード入力部１４が受け取ったキーワード（基本キーワードまたは選択キーワード）を修飾する可能性が高いキーワードをキーワードデータベース２８から候補キーワードとして単数または複数取得する。以下、説明を容易にするため、取得された単数または複数の候補キーワードを仮候補キーワードとも呼ぶ。
【００１５】
第２マッピング部３０は、仮候補キーワード取得部２６が取得した仮候補キーワードの各々を表現合成空間にマッピングする。キーワード除外部３２は、仮候補キーワード取得部２６が取得した仮候補キーワードの内、キーワード入力部１４が受け取ったキーワードと表現合成空間上の距離が一定以内である仮候補キーワードを除外する。候補キーワード提示部３４は、仮候補キーワード取得部２６が取得した仮候補キーワードの内、キーワード除外部３２で除外されなかった仮候補キーワードを候補キーワードとしてユーザに対して提示する。
【００１６】
図２に、第１マッピング部１８及び第２マッピング部３０の詳細を例示する。第１マッピング部１８及び第２マッピング部３０の各々は、表現言語特徴量取得部１３４及び表現合成特徴量取得部１３８を含む。表現言語特徴量取得部１３４は、印象を表すキーワード１３２からキーワード１３２が含む意味を表わす特徴量である表現言語特徴量（多次元ベクトル）１３６を取得する。即ち、表現言語特徴量取得部１３４は、キーワード１３２を図３に例示する表現言語空間１４４にマッピングする。表現言語特徴量取得部１３４は、例えば、ｗｏｒｄ２ｖｅｃなどの既存のプログラムであってよい。ここで、キーワード１３２は、第１マッピング部１８では、基本キーワードまたは選択キーワードであり、第２マッピング部３０では、仮候補キーワードである。
【００１７】
表現合成特徴量取得部１３８は、表現言語特徴量取得部１３４から出力された表現言語特徴量１３６から、音声データ生成部２２で音声データに変換可能な表現合成特徴量（多次元ベクトル）１４０を取得する。即ち、表現合成特徴量取得部１３８は、キーワード１３２を軸の各々が感情の各々を表す表現合成空間１４６にマッピングする。表現合成特徴量取得部１３８は、例えば、ニューラルネットワークであってよい。
【００１８】
図３に例示するように、ニューラルネットワークは、例えば、表現言語空間１４４上の所定の座標を表現合成空間１４６上の所定の座標へマッピングするように、予め学習させておく。学習に際して、表現合成空間１４６上の基準となる音声（例えば、怒り、緊迫、喜びなどを表わす音声）に対応する座標には人手でラベル付けを行う。学習したニューラルネットワークにキーワード１３２の表現言語特徴量１３６を入力することにより、キーワード１３２が表わす印象を含む音声データを音声データ生成部２２で生成する表現合成特徴量１３８がニューラルネットワークから出力される。なお、上記した通り、表現言語空間１４４及び表現合成空間１４６は各々が異なる多数の軸を有する多次元空間であるが、図３では表示を煩雑にしないため、多数の軸は省略している。
【００１９】
図４に、音声データ生成部２２の詳細を例示する。音声データ生成部２２は、言語処理部１６２、及び感情の各々に対応する音響モデルの一例であるＨＭＭ（Hidden Markov Model）１６４Ａ、１６４Ｂ、及び１６４Ｃ（以下、ＨＭＭ１６４とも呼ぶ）を含む。なお、ＨＭＭの個数及び対応する感情は一例であり、本実施形態はこれに限定されない。音声データ生成部２２は、また、モーフィング部１６６及び音声データ変換部１６８を含む。
【００２０】
言語処理部１６２は、テキスト入力部１２で受け取った音声合成の対象であるテキスト１６１を言語情報に変換する。言語情報は、例えば、音素名、モーラ数、アクセント型、アクセント数、及び、呼気段落数などである。ＨＭＭ１６４は、言語処理部１６２で変換された言語情報を音声パラメータに変換する。音声パラメータは、例えば、メルケプストラム、基本周波数、及び、音素継続長などである。モーフィング部１６６は、重心計算部２０で取得したキーワード（基本キーワード及び選択キーワード）の重心座標１６７に基づいて、ＨＭＭ１６４で変換された音声パラメータをモーフィングする。
【００２１】
音声データ変換部１６８は、モーフィング部１６６でモーフィングされた音声パラメータを音声データ１７０に変換する。
【００２２】
コンピュータ１０は、一例として図５に示すように、ＣＰＵ（Central Processing Unit）６０、１次記憶部６２、２次記憶部６４、外部インターフェイス７０、キーボード７２、マウス７４、ディスプレイ７６、及びスピーカ７８を備えている。ＣＰＵ６０、１次記憶部６２、２次記憶部６４、外部インターフェイス７０、キーボード７２、マウス７４、ディスプレイ７６、及びスピーカ７８は、バス８０を介して相互に接続されている。
【００２３】
キーボード７２及びマウス７４は、テキスト入力部１２、キーワード入力部１４、及びキーワード重み入力部１６の一例であり、ディスプレイ７６は、候補キーワード提示部３４の一例である。また、スピーカ７８は、音声出力部２４の一例である。外部インターフェイス７０には、外部装置が接続され、外部装置とＣＰＵ６０との間の各種情報の送受信を司る。
【００２４】
１次記憶部６２は、例えば、ＲＡＭ（Random Access Memory）などの揮発性のメモリである。２次記憶部６４は、例えば、ＨＤＤ（Hard Disk Drive）、またはＳＳＤ（Solid State Drive）などの不揮発性のメモリである。
【００２５】
２次記憶部６４は、一例として、音声合成プログラム６６を記憶している。また、第１記憶部の一例である２次記憶部６４は、キーワードデータベース２８を構成する情報が記憶されるキーワードデータベース記憶領域６８を含む。
【００２６】
ＣＰＵ６０は、２次記憶部６４から音声合成プログラム６６を読み出して１次記憶部６２に展開する。ＣＰＵ６０は、音声合成プログラム６６を実行することで、図１に示す第１マッピング部１８、重心計算部２０、音声データ生成部２２、仮候補キーワード取得部２６、第２マッピング３０、及びキーワード除外部３２として動作する。
【００２７】
ＣＰＵ６０は、キーワードデータベース記憶領域６８に記憶された情報を読み出して、キーワードデータベース２８として１次記憶部６２に展開する。これにより、音声合成プログラム６６を実行したコンピュータ１０が音声合成装置として機能する。なお、キーワードデータベース２８を構成する情報は、２次記憶部６４のキーワードデータベース記憶領域６８ではなく、例えば、外部インターフェイス７０を介して接続されている外部装置に記憶されていてもよい。
【００２８】
次に、音声合成装置であるコンピュータ１０の作用について説明する。音声合成プログラム６６が、例えば、ユーザの指示により起動されると、図６に例示する音声合成処理が開始される。音声合成処理が開始されると、ＣＰＵ６０は、まず、ステップ１０１で、図７Ａに例示するユーザインターフェイス画面２００Ａをディスプレイ７６に表示する。ユーザインターフェイス画面２００Ａは、テキスト入力フィールド２０２、キーワード入力フィールド２０４、重みフィールド２０６、再生ボタン２０８、及び終了ボタン２１０を含む。
【００２９】
なお、説明を煩雑にしないために、図７Ａでは、キーワード入力フィールド２０４及び重みフィールド２０６を各々１個としたが、本実施形態はこれに限定されない。キーワード入力フィールド２０４及び対応する重みフィールド２０６は各々複数個あってもよい。
【００３０】
ＣＰＵ６０は、ステップ１０２で、テキスト入力フィールド２０２で音声合成の対象であるテキストを受け取ったか否か判定する。ステップ１０２の判定が肯定されるまで、ＣＰＵ６０は、ステップ１０２の処理を繰り返す。ステップ１０２の判定が肯定されると、ここの例では、テキスト「すみません」を受け取ると、ＣＰＵ６０は、ステップ１０４の処理に進む。テキストは、ユーザにより、例えば、キーボード７２から入力されてもよいし、２次記憶部６４に予め記憶されている図示しないファイルから入力されてもよい。
【００３１】
ＣＰＵ６０は、ステップ１０４で、キーワード入力フィールド２０４で合成音声の印象を表す基本キーワードを受け取ったか否か判定する。ステップ１０４の判定が肯定されるまで、ＣＰＵ６０は、ステップ１４０の処理を繰り返す。ステップ１０４の判定が肯定されると、ここの例では、基本キーワード「謝罪」を受け取ると、ＣＰＵ６０は、ステップ１０６の処理に進む。基本キーワードは、ユーザにより、例えば、キーボード７２から入力されてもよいし、２次記憶部６４に予め記憶されている図示しないファイルから入力されてもよい。
【００３２】
ＣＰＵ６０は、ステップ１０６で、図７Ａの重みフィールド２０６に例示するように、キーワード入力フィールド２０４に受け取った基本キーワードの重みとして、例えば、１．０を設定する。上述したように、キーワード入力フィールド２０４及び対応する重みフィールド２０６が各々複数個存在する場合、即ち、基本キーワードが複数存在する場合は、重みの合計が１．０となるようにユーザが重みを入力してもよい。
【００３３】
ＣＰＵ６０は、ステップ１０８で、後述するように、テキスト入力フィールド２０２で受け取ったテキストに対応する音声データを生成する。ＣＰＵ６０は、ステップ１１０で、スピーカ７８からステップ１０８で生成された音声データに対応する音声を出力する。
【００３４】
ＣＰＵ６０は、ステップ１１２で、例えば、ユーザインターフェイス画面２００Ａの終了ボタン２１０がユーザにクリックされたか否か判定することにより、音声合成処理を終了するか否か判定する。ステップ１１２の判定が肯定されると、ＣＰＵ６０は、音声合成処理を終了する。ユーザは、例えば、ステップ１１０でスピーカ７８から出力された音声に満足した場合に、即ち、上記の例では、音声「すみません」が、ユーザが意図した印象「謝罪」に合致している場合に、終了ボタン２１０をクリックすることで、音声合成処理を終了させる。
【００３５】
ステップ１１２の判定が否定された場合、ＣＰＵ６０は、ステップ１１３で、所定時間経過したか否か判定する。ステップ１１３の判定が否定された場合、ＣＰＵ６０は、ステップ１１２の処理を実行する。ステップ１１３の判定が肯定された場合、ＣＰＵ６０は、ステップ１１４で、後述する候補キーワード取得処理を実行する。
【００３６】
ＣＰＵ６０は、ステップ１１５で、図７Ｂに例示するように、ステップ１１４で取得された候補キーワードを含むユーザインターフェイス画面２００Ｂをディスプレイ７６に表示する。ユーザインターフェイス画面２００Ｂは、候補キーワード表示フィールド２１２Ａ〜２１２Ｃ（以下、候補キーワード表示フィールド２１２とも呼ぶ。）、候補キーワード表示フィールド２１２の各々に対応する選択ボタン２１４Ａ〜２１４Ｃ（以下、選択ボタン２１４とも呼ぶ）、及び選択終了ボタン２１６を含む。なお、ここでは、候補キーワード表示フィールド２１２及び選択ボタン２１４を各々３個ずつ示したが、本実施形態はこれに限定されない。ユーザが選択ボタン２１４をクリックすると、対応する候補キーワード表示フィールドに表示されているキーワードが選択される。
【００３７】
ここの例では、基本キーワード「謝罪」を修飾する可能性が高いキーワードとしてキーワードデータベース２８から取得された候補キーワード「丁寧な」、「かしこまった」、「おざなりの」が候補キーワード表示フィールド２１２に表示されている。
【００３８】
ＣＰＵ６０は、ステップ１１６で、候補キーワードの選択が終了したか否か判定する。例えば、ユーザがユーザインターフェイス画面２００Ｂの選択終了ボタン２１６をクリックした場合、ＣＰＵ６０は、候補キーワードの選択が終了したと判定する。ステップ１１６の判定が肯定されるまで、ＣＰＵ６０は、ステップ１１６の処理を繰り返す。ステップ１１６の判定が肯定されると、ＣＰＵ６０は、図７Ｃに例示するユーザインターフェイス画面２００Ｃをディスプレイ７６に表示し、ステップ１１８の処理を実行する。
【００３９】
ユーザインターフェイス画面２００Ｃは、テキスト表示フィールド２０３、基本キーワード表示フィールド２０５Ａ、及び選択キーワード表示フィールド２０５Ｂを含む。ユーザインターフェイス画面２００Ｃは、また、基本キーワード表示フィールド２０５Ａに表示されている基本キーワードに対応する重みフィールド２０７Ａを含む。ユーザインターフェイス画面２００Ｃは、また、選択キーワード表示フィールド２０５Ｂに表示されている選択キーワードに対応する重みフィールド２０７Ｂ、再生ボタン２０８及び終了ボタン２１０を含む。
【００４０】
ここの例では、図７Ｂに例示するユーザインターフェイス画面２００Ｂで、候補キーワード「丁寧な」を示す候補キーワード表示フィールド２１２Ａに対応する選択ボタン２１４Ａがクリックされた後、選択終了ボタン２１６がクリックされたものとして説明する。なお、説明を煩雑にしないため、候補キーワードを１つだけ選択した例について説明するが、本実施形態はこれに限定されず、複数の候補キーワードが選択されてもよい。
【００４１】
ＣＰＵ６０は、ステップ１１８で、基本キーワード及び選択された候補キーワードである選択キーワードに対応する重みが設定されたか否か判定する。なお、表示を煩雑にしないため、図７Ｃでは、選択キーワードフィールド２０５Ｂが１つである例を示す。しかしながら、本実施形態はこれに限定されず、複数の選択キーワードフィールド２０５Ｂ及び複数の選択キーワードフィールドの各々に対応する複数の重みフィールドが存在してもよい。
【００４２】
ユーザが基本キーワード表示フィールド２０５Ａ及び選択キーワード表示フィールド２０５Ｂ（以下、キーワード表示フィールド２０５とも呼ぶ）に各々対応する重みフィールド２０７Ａ及び２０７Ｂ（以下、重みフィールド２０７とも呼ぶ）に重みを入力し、再生ボタン２０８をクリックした場合、ＣＰＵ６０は、基本キーワード及び選択キーワードに対応する重みが設定されたと判定する。ステップ１１８の処理が肯定されるまで、ＣＰＵ６０は、ステップ１１８の処理を繰り返す。ステップ１１８の判定が肯定されると、ＣＰＵ６０は、ステップ１０８の処理を実行する。
【００４３】
ここでは、基本キーワード「謝罪」に重み０．８及び選択キーワード「丁寧な」に重み０．２が設定される。ステップ１０８で、印象「謝罪」８割であり、印象「丁寧な」が２割であるテキスト「すみません」に対応する音声データが生成され、ステップ１１０で、音声データに対応する音声が出力される。なお、ステップ１０８の処理については、後述する（図８を参照）。ユーザが意図する印象を有する音声が合成されるまで上記処理を繰り返す。即ち、次の繰り返しでは、選択キーワード「丁寧な」を修飾する可能性が高いキーワードを候補キーワードとしてさらに追加して上記処理を繰り返す。
【００４４】
図８は、図６のステップ１０８の音声データ生成処理の詳細を示す。図８のステップ１２２で、ＣＰＵ６０は、キーワードの表現合成空間１４６上の座標を求める。即ち、図２及び図３に例示したように、キーワードの表現特徴量を取得し、取得した表現特徴量を表現合成空間１４６にマッピングすることにより表現合成特徴量、即ち、表現合成空間１４６上の座標を取得する。キーワードは、１回目の音声データ生成処理では、基本キーワードであり、２回目以降の音声データ生成処理では、基本キーワード及び選択キーワードである。
【００４５】
次に、ＣＰＵ６０は、図８のステップ１２４で、キーワードの表現合成特徴空間上での重心座標を求める。キーワードがｎ個存在する場合、表現合成特徴空間上の感情ｉを示す軸の重心座標ｃは以下の式（１）で求めることができる。
ｃ［ｉ］＝ａ［０］＊ｗ［０］＋ａ［１］＊ｗ［１］＋…＋ａ［ｎ−１］＊ｗ［ｎ−１］
…（１）
ここで、ａ［ｘ］はｘ番目のキーワードの感情ｉを示す軸に対応する座標であり、ｗ［ｘ］はｘ番目のキーワードに設定されている重みである。
【００４６】
次に、ＣＰＵ６０は、ステップ１２６で、図９に例示する音声データ変換処理を実行する。ＣＰＵ６０は、ステップ１５２で、テキストを言語情報に変換する。言語情報は、例えば、音素名、モーラ数、アクセント型、アクセント数、及び呼気段落数などである。ここの例では、例えば、テキスト「すみません」が言語情報に変換される。
【００４７】
ＣＰＵ６０は、ステップ１５４で、ステップ１５２で取得した言語情報を音声パラメータに変換する。音声パラメータは、例えば、メルケプストラム、基本周波数、及び音素継続長などである。次に、ＣＰＵ６０は、ステップ１５６で、図８のステップ１２４で取得した重心座標に基づいて、ステップ１５４で取得した音声パラメータをモーフィングする。
【００４８】
例えば、あるフレームの音声パラメータの一例であるメルケプストラムＭは、以下の式（２）でモーフィングすることができる。
Ｍ＝ｍ［０］＊ｃ［０］＋ｍ［１］＊ｃ［１］＋…  …（２）
ここで、ｍ［ｉ］は図４のＨＭＭ（感情：ｉ）から出力されたあるフレームのメルケプストラムであり、ｃ［ｉ］は、重心座標ｃの感情ｉを示す軸に対応する座標である。ｉは、例えば、怒り、哀しみ、喜びなどの各々である。
【００４９】
ＣＰＵ６０は、ステップ１５８で、ステップ１５６で取得した音声パラメータを音声データに変換する。
【００５０】
図１０に、図６のステップ１１４の候補キーワード取得処理の詳細を例示する。ＣＰＵ６０は、ステップ１９２で、キーワードを修飾する可能性が高い仮候補キーワードをキーワードデータベース２８から取得する。キーワードデータベース２８では、第１のキーワードと第２のキーワードとが対応付けられた組が登録されている。第２のキーワードは、第１のキーワードを修飾する可能性が高いキーワードである。キーワードデータベース２８は、多数のキーワードを含むコーパスに含まれるキーワードの修飾・被修飾の関係を分析することにより予め生成されている。修飾する可能性が高い、即ち、修飾する可能性がある、とは、例えば、当該コーパスにおいて、第１のキーワードを修飾する修飾キーワードの全ての個数に対する、第１のキーワードを修飾する第２のキーワードの個数の割合が所定値以上であることを意味する。
【００５１】
ここで、キーワードとは、１回目の音声データ生成処理では、基本キーワードであり、２回目以降の音声データ生成処理では、直前のステップ１１６で選択された選択キーワードである。ＣＰＵ６０は、ステップ１９４で、仮候補キーワードの表現合成空間１４６上での座標を求める（図２及び図３を参照）。
【００５２】
ＣＰＵ６０は、ステップ１９６で、表現合成空間１４６において、キーワードとの距離が閾値以下の仮候補キーワードを除外する。ここで、キーワードとは、基本キーワード及び選択キーワードである。距離は、例えば、ユークリッド距離であってよい。キーワードとの距離が閾値以下の仮候補キーワードを用いた合成音声は、既に出力されたことがある合成音声と類似する。したがって、キーワードとの距離が閾値以下の仮候補キーワードを予め除外することにより、類似した印象を有する音声が無駄に合成されることを防ぐことが可能となり、再度異なる選択キーワードを検討して入力する試行錯誤の回数を低減することが可能となる。
【００５３】
なお、ステップ１９６で、所定の閾値で適切な仮候補キーワードを除外するために、音響モデルの一例であるＨＭＭの学習データである音声データを収録する際に、表現合成空間における感情を表す軸（以下、感情軸とも呼ぶ）の各々で評価者が主観で同じ感情レベルであると判定する音声データを収録する。図１１Ａに示す例では、哀しみを表す軸において１は普通レベルの哀しみを表し、怒りを表す軸において１は普通レベルの怒りを表す。これにより、２座標間の距離に応じて音声に含まれる感情が変化する度合いを異なる感情を表す軸の間で略均一にすることができる。なお、説明を煩雑にしないため、図１１Ａでは、２つの感情軸のみを示すが、実際には、異なる感情の各々を表す多くの軸が存在する。図１１Ｂ及び図１１Ｃについても同様である。
【００５４】
図１１Ｂは、哀しみを表す軸において１は普通レベルの哀しみを表すが、怒りを表す軸において１は強いレベルの怒りを表す場合を例示する。即ち、怒りを表す軸では、他の感情軸と比較して、距離が同一である場合でも音声に含まれる感情の変化が大きくなる。この場合、２座標間の距離に応じて音声に含まれる感情の変化が均一になるように、ある感情軸の座標を正規化してもよい。例えば、図１１Ｃに例示するように、怒り’＝怒り＊０．５＋平静＊０．５として怒り’を表す軸を生成する。これにより、怒り’を表す軸の１は普通レベルの怒り’を表わすようにすることができる。
【００５５】
図１０のステップ１９６でキーワード（基本キーワード及び選択キーワード）と仮候補キーワードとの間の距離が閾値以下か否か判定するための閾値の決定について説明する。例えば、いくつかのキーワードに対して、そのキーワードに対応する表現合成空間１４６上の座標から、評価者が音声に含まれる感情の変化を知覚できた２座標間の距離を計測する。計測された距離の内最小の距離を閾値として用いる。なお、本実施形態はこれに限定されず、例えば、最小の距離に所定の値、例えば、１．５を乗算した値を閾値としてもよいし、最小の距離に代えて最大の距離を閾値として用いてもよい。
【００５６】
なお、図１０のステップ１９６で、キーワードと仮候補キーワードとの間の距離が閾値以下の場合に、仮候補キーワードを除外する例について説明したが、本実施形態はこれに限定されない。例えば、所定の評価値が所定値以下である場合に仮候補キーワードを除外するようにしてもよい。
【００５７】
評価値としては、例えば、仮候補キーワードがキーワードを修飾する確率を用いることができる。即ち、仮候補キーワードがキーワードを修飾する可能性が小さいほど、小さくなる評価値を用いて仮候補キーワードを除外するようにしてもよい。ここで、キーワードとは、１回目の音声データ生成処理では、基本キーワードであり、２回目以降の音声データ生成処理では、直前のステップ１１６で選択された選択キーワードである。
【００５８】
仮候補キーワードｔｋの評価値Ｅ１（ｔｋ）は、例えば、以下の式（３）で求めることができる。
Ｅ１（ｔｋ）＝ｃ１・Ｐ（ｋ，ｔｋ）  …（３）
ここで、ｃ１は定数であり、ｋは１回目の音声データ生成処理では、基本キーワードであり、２回目以降の音声データ生成処理では、直前のステップ１１６で選択された選択キーワードである。Ｐ（ｋ，ｔｋ）は、仮候補キーワードｔｋがキーワードｋを修飾する確率である。この確率は、例えば、多くのキーワードを含むコーパスにおいて、キーワードｋを修飾する修飾キーワードの全ての個数に対する、キーワードｋを修飾する仮候補キーワードｔｋの個数の割合であってよい。
【００５９】
また、例えば、キーワードと仮候補キーワードとの間の距離が短いほど、小さくなる評価値を用いて仮候補キーワードを除外するようにしてもよい。仮候補キーワードｔｋの評価値Ｅ２（ｔｋ）は、例えば、以下の式（４）で求めることができる。
Ｅ２（ｔｋ）＝ｃ２・ｍｉｎ（ｄｉｓｔ（ｋａ，ｔｋ））  …（４）
ここで、ｋａは、基本キーワード及び選択キーワードであり、ｄｉｓｔ（ｋａ，ｔｋ）は基本キーワード及び選択キーワードの１つと仮候補キーワードｔｋとの間の距離であり、ｍｉｎ（ｄｉｓｔ（ｋａ，ｔｋ））は、基本キーワード及び選択キーワードの１つと仮候補キーワードｔｋとの距離の内、最短の距離を示す。
【００６０】
また、仮候補キーワードｔｋの評価値として以下の式（５）で求めることができる評価値Ｅ３（ｔｋ）が用いられてもよい。
Ｅ３（ｔｋ）＝Ｅ１（ｔｋ）＋Ｅ２（ｔｋ）  …（５）
【００６１】
また、図６のステップ１１５で、候補キーワードを提示する際に、評価値が大きい順に候補キーワードを並べて提示してもよい。これにより、ユーザは、適切である可能性が高い候補キーワードを容易に発見することができるようになる。
【００６２】
なお、図６のステップ１１８で、キーワード（基本キーワード及び選択キーワード）の重みをユーザに設定させるようにしたが、重みの合計が一定の値、例えば、１．０となるように、ＣＰＵ６０が重みを設定するようにしてもよい。例えば、重みｗ［ｌ］は以下の式（６）で設定されてもよい。
ｗ［ｌ］＝（ｗ［ｌ−１］／Ｗ［ｌ−１］）＊（１．０−ｗ［ｍ］）  …（６）
ｗ（ｍ）はユーザが設定したｍ番目のキーワードの重みであり、ｗ（ｌ）はｍ番目のキーワード以外のキーワードの１つであるキーワードｌの重みであり、ｗ［ｌ−１］はキーワードｌに設定されていた重みであり、Ｗ［ｌ−１］はｍ番目のキーワード以外のキーワードに設定されていた重みの合計である。
【００６３】
本実施形態では、音声の印象を表す基本キーワードまたは選択キーワードを修飾する可能性が高い候補キーワードを提示し、基本キーワードまたは候補キーワードから選択される選択キーワードを受け取る。本実施形態では、表現合成空間における基本キーワード、または基本キーワード及び選択キーワードの重心座標を用いて、テキストに対応する音声データを生成する。これにより、音声の印象を表すキーワードを検討して入力するユーザの手間を低減することが可能となる。また、経験の浅いユーザでも意図する印象に近い合成音声を生成するキーワードを選択することが容易となる。
【００６４】
また、本実施形態では、表現合成空間において、基本キーワード及び選択キーワードの何れかとの距離が所定の閾値以下である仮候補キーワードを除外した仮候補キーワードを候補キーワードとして提示する。これにより、類似した印象を有する音声が無駄に合成されることを防ぐことが可能となり、再度異なる選択キーワードを検討して入力する試行錯誤の回数を低減することが可能となる。
【００６５】
［第２実施形態］
次に、実施形態の一例である第２実施形態について説明する。第２実施形態では、図１の音声データ生成部２２として、図１２に例示する音声データ生成部２２を用いる。音声データ生成部２２は、言語処理部１６３、クラスタＨＭＭ１６５、及び音声データ変換部１６９を含む。なお、第１実施形態と同様の構成及び作用については説明を省略する。
【００６６】
クラスタＨＭＭ１６５は、図８のステップ１２４で求めた表現合成空間上のキーワード（基本キーワード及び選択キーワード）の重心座標を重みとした複数の音響モデルの重み付き加算として表わされる音響モデルであり、複数の感情に対応することができる。したがって、第１実施形態と異なり、図４に例示した感情の各々に対応するＨＭＭ１６４で変換された音声パラメータをモーフィングする必要がないため、モーフィング部１６６が省かれている。
【００６７】
図１３に例示するように、ＣＰＵ６０は、ステップ１５３で、音声合成の対象であるテキストを言語情報に変換する。例えば、テキスト「すみません」を言語情報に変換する。ＣＰＵ６０は、ステップ１５５で、ステップ１５３で変換された言語情報を音声パラメータに変換する。ＣＰＵ６０は、ステップ１５７で、ステップ１５５で変換された音声パラメータを音声データに変換する。
【００６８】
本実施形態では、音声の印象を表す基本キーワードまたは選択キーワードを修飾する可能性が高い候補キーワードを提示し、基本キーワードまたは候補キーワードから選択される選択キーワードを受け取る。本実施形態では、表現合成空間における基本キーワード、または基本キーワード及び選択キーワードの重心座標を用いて、テキストに対応する音声データを生成する。これにより、音声の印象を表すキーワードを検討して入力するユーザの手間を低減することが可能となる。また、経験の浅いユーザでも意図する印象に近い合成音声を生成するキーワードを選択することが容易となる。
【００６９】
［第３実施形態］
次に、実施形態の一例である第３実施形態について説明する。第１実施形態及び第２実施形態と同様の構成及び作用については説明を省略する。図１４に例示するように、第３実施形態では、前処理部５４を含む点で、第１実施形態及び第２実施形態と異なる。前処理部５４は、印象を表わす候補キーワードをキーワードデータベース２８から取得して、音声合成処理を実行する前に、後述するキーワードリストデータベース２９を生成する。第１実施形態及び第２実施形態では、キーワード入力部１４は、ユーザが入力した基本キーワードまたはユーザが選択した選択キーワードを受け取る。一方、第３実施形態では、キーワード入力部１４は、キーワードリストデータベース２９から取り出された階層状のキーワードリストに含まれる基本キーワード及び候補キーワードを受け取る。
【００７０】
前処理部５４は、基本キーワード入力部４２、展開制御部４４、仮候補キーワード取得部４６、キーワードデータベース２８、第２マッピング部４８、キーワード除外部５０、キーワード登録部５２、及びキーワードリストデータベース２９を含む。基本キーワード入力部４２は、基本キーワードを受け取る。基本キーワードは、例えば、一般ユーザによって入力されてもよいが、音声合成処理に熟練した管理者によって入力されてもよい。
【００７１】
展開制御部４４は、印象を表わす候補キーワードを階層状に取得するための制御を実行する。即ち、候補キーワードを修飾する可能性が高い候補キーワードを取得する制御を複数の階層にわたって繰り返す。キーワード登録部５２は、取得した候補キーワードをキーワードリストデータベース２９に階層状に登録する。
【００７２】
図１５に例示するように、２次記憶部６４は、一例として、音声合成プログラム６６Ａ及び前処理プログラム６６Ｂを記憶している。また、第１記憶部の一例である２次記憶部６４は、キーワードデータベース２８を構成する情報が記憶されるキーワードデータベース記憶領域６８Ａを含む。また、第２記憶部の一例でもある２次記憶部６４は、キーワードリストデータベース２９を構成する情報が記憶されるキーワードリストデータベース記憶領域６８Ｂを含む。
【００７３】
ＣＰＵ６０は、２次記憶部６４から音声合成プログラム６６Ａを読み出して１次記憶部６２に展開する。ＣＰＵ６０は、音声合成プログラム６６Ａを実行することで、図１４に示す第１マッピング部１８、重心計算部２０、及び音声データ生成部２２として動作する。また、ＣＰＵ６０は、２次記憶部６４から前処理プログラム６６Ｂを読み出して１次記憶部６２に展開する。ＣＰＵ６０は、前処理プログラム６６Ｂを実行することで、図１４に示す展開制御部４４、仮候補キーワード取得部２６、第２マッピング部３０、キーワード除外部３２、及びキーワード登録部５２として動作する。
【００７４】
次に、音声合成装置であるコンピュータ１０の作用について説明する。前処理プログラム６６Ｂが、例えば、ユーザの指示により起動されると、図１６に例示する前処理が開始される。前処理が開始されると、ＣＰＵ６０は、ステップ１７２で、図１７に例示するユーザインターフェイス画面２４０をディスプレイ７６に表示する。
【００７５】
ユーザインターフェイス画面２４０は、キーワード入力フィールド２４２Ａ、２４２Ｂ、及び２４２Ｃ（以下、キーワード入力フィールド２４２とも呼ぶ）、及び、入力終了ボタン２４４を有する。なお、３個のキーワード入力フィールド２４２を例示するが、本実施形態はこれに限定されない。
【００７６】
ＣＰＵ６０は、ステップ１７４で、キーワード入力フィールド２４２で合成音声の印象を表わす基本キーワードを受け取ったか否か判定する。ステップ１７４の判定が肯定されるまで、ＣＰＵ６０は、ステップ１７４の判定を繰り返す。判定が肯定されると、ここでは、基本キーワード「謝罪」を受け取ると、ＣＰＵ６０は、ステップ１７５で、基本キーワードをキーワードリストデータベース２９の第１層に登録する。次に、ＣＰＵ６０は、ステップ１７６で、Ｋに１を設定する。Ｋは、キーワードリストの階層を示す変数である。
【００７７】
なお、例示のため、基本キーワードとして「謝罪」を用いるが、コンピュータ１０を利用するユーザがよく利用すると考えられる音声の印象を表わすキーワードを基本キーワードとする。これにより、ユーザが意図する音声の印象を表わす候補キーワードがキーワードリストデータベース２９に階層状に登録される。基本キーワードは複数個であってもよい。
【００７８】
ＣＰＵ６０は、ステップ１７８で、ＫがＮ以下であるか否か、即ち、階層が所定の階層以上の階層か否か判定する。判定が否定された場合、即ち、階層が所定の階層より下の階層となった場合、前処理を終了する。例えば、Ｎが３であれば、ステップ１７４で受け取った基本キーワード（第１層）、基本キーワード（第１層）を修飾する可能性が高い候補キーワード（第２層）、及び候補キーワード（第２層）を修飾する可能性が高い候補キーワード（第３層）が後述するように、キーワードリストデータベース２９に階層状に登録される。
【００７９】
ステップ１７８の判定が肯定されると、ＣＰＵ６０は、ステップ１８０で、第Ｋ層に登録されているキーワードの１つである対象キーワードを修飾する可能性が高いキーワードを第Ｋ＋１層の仮候補キーワードとして、キーワードデータベース２８から取得する。キーワードデータベース２８には、上述したように、キーワードとそのキーワードを修飾する可能性が高いキーワードの組が予め登録されている。
【００８０】
ＣＰＵ６０は、ステップ１８２で、仮候補キーワードの表現合成空間上の座標を求める。ＣＰＵ６０は、ステップ１８４で、表現合成空間において、第Ｋ層以上の層に登録されているキーワードとの距離が閾値以下の第Ｋ＋１層の仮候補キーワードを除外する。ここで、キーワードとは、Ｋ＝１の場合、基本キーワード、Ｋ≧２である場合、基本キーワード及び候補キーワードである。ＣＰＵ６０は、ステップ１８６で、ステップ１８４で除外されなかった仮候補キーワードを候補キーワードとして、キーワードリストデータベース２９の第Ｋ＋１層に第Ｋ層の対象キーワードを親として登録する。
【００８１】
ＣＰＵ６０は、ステップ１８７で、第Ｋ層に登録されている全てのキーワードの処理が終了したか否か判定する。判定が否定された場合、ＣＰＵ６０は、まだ処理が終了していない第Ｋ層のキーワードの１つを対象キーワードとしてステップ１８０を実行する。ステップ１８７の判定が肯定された場合、ＣＰＵ６０は、ステップ１８８で、Ｋに１を加算し、ステップ１７８を実行する。
【００８２】
前処理が終了すると、基本キーワードを第１層として、第Ｎ層までの候補キーワードが、キーワードリストデータベース２９に階層状に登録される。なお、ステップ１７８で、階層が所定以下の層になった場合に前処理を終了する例について説明したが、本実施形態はこれに限定されない。例えば、キーワードデータベース２８において、キーワードを修飾するキーワードを発見できなくなった場合に、前処理を終了するようにしてもよい。階層が下に進むほど、即ち、階層数が大きくなるほど、その階層のキーワードを修飾するキーワードは少なくなる。
【００８３】
次に、音声合成プログラム６６Ａが、例えば、ユーザの指示により起動されると、図１８に例示する音声合成処理が開始される。音声合成処理が開始されると、ＣＰＵ６０は、まず、ステップ３２２で、図１９Ａに例示するユーザインターフェイス画面３００Ｃをディスプレイ７６に表示する。ユーザインターフェイス画面３００Ｃは、テキスト入力フィールド３０２、候補キーワード表示フィールド３０４（３０４Ａ及び３０４Ｂのみ参照符号を付す）、重みフィールド３０６（３０６Ａ及び３０６Ｂのみ参照符号を付す）、重み増加ボタン３１４（３１４Ａ及び３１４Ｂのみ参照符号を付す）、重み低減ボタン３１６（３１６Ａ及び３１６Ｂのみ参照符号を付す）、展開ボタン３１２（３１２Ａ及び３１２Ｂのみ参照符号を付す）、選択ボタン３１８（３１８Ａ及び３１８Ｂのみ参照符号を付す）、再生ボタン３０８及び終了ボタン３１０を含む。
【００８４】
図１９Ａでは、候補キーワード表示フィールド３０４、重みフィールド３０６、重み増加ボタン３１４、重み低減ボタン３１６、展開ボタン３１２、選択ボタン３１８を各々５個例示しているが、本実施形態はこれに限定されない。また、候補キーワード表示フィールド３０４には、キーワードリストデータベース２９から読み込まれた候補キーワードが表示される。ここで、候補キーワードは基本キーワードを含む。初期状態では、キーワードリストデータベース２９の第１層に登録されている候補キーワードのみが表示され、対応する展開ボタン３１２がクリックされることにより、その候補キーワードを親とする候補キーワードが表示される。また、子である候補キーワードが表示されている状態で、親である候補キーワードに対応する展開ボタン３１２がクリックされると、子である候補キーワードの表示は消去される。
【００８５】
なお、初期状態から全ての候補キーワードがユーザインターフェイス画面３００Ｃに表示されてもよい。この場合、例えば、図示しないスクロールバーをユーザインターフェイス画面３００Ｃに設けることによって、ユーザは任意の候補キーワードを選択することが可能となる。
【００８６】
ＣＰＵ６０は、ステップ３２４で、ユーザインターフェイス画面３００Ｃのテキスト入力フィールド３０２でテキストを受け取ったか否か判定する。ＣＰＵ６０は、判定が肯定されるまで、ステップ３２４の処理を繰り返す。
【００８７】
ステップ３２４の判定が肯定されると、ＣＰＵ６０は、ステップ３２６で、候補キーワード表示フィールド３０４に対応する選択ボタン３１８がクリックされることにより、候補キーワードの何れかが選択キーワードとして選択されたか否か判定する。ＣＰＵ６０は、ステップ３２６の判定が肯定されるまで、ステップ３２６の処理を繰り返す。図１９Ａに示す例では、候補キーワード「謝罪」が選択されている。
【００８８】
ステップ３２６の判定が肯定されると、ＣＰＵ６０は、ステップ３２８で、選択された候補キーワードの重みに１．０を設定する。なお、選択された候補キーワードが複数ある場合、候補キーワードの重みの合計が一定の値、即ち、１．０になるように設定される。この場合、重み増加ボタン３１４または重み低減ボタン３１６をクリックすることで、ユーザが重みを設定するようにしてもよい。
【００８９】
ＣＰＵ６０は、ステップ３３０で、音声データ処理を実行する。音声データ処理については、図８を用いて上述したため、ここでは説明を省略する。ＣＰＵ６０は、ステップ３３２で、スピーカ７８を用いて、音声を出力する。
【００９０】
ＣＰＵ６０は、ステップ３３４で、終了ボタン３１０がクリックされることにより、終了指示がされたか否か判定する。判定が肯定された場合、ＣＰＵ６０は、音声合成処理を終了する。判定が否定されると、ＣＰＵ６０は、ステップ３３６で、所定時間が経過したか否か判定する。ステップ３３６の判定が否定されると、ＣＰＵ６０は、ステップ３３４の処理を実行する。
【００９１】
ステップ３３６の判定が肯定されると、ＣＰＵ６０は、ステップ３３８で、候補キーワードが選択されたか否か判定する。ユーザは、候補キーワード表示フィールド３０４に対応する選択ボタンをクリックすることにより、候補キーワードを選択する。
【００９２】
ステップ３３８の判定が肯定されるまで、ＣＰＵ６０は、ステップ３３８の処理を繰り返す。ステップ３３８の判定が肯定されると、ステップ３４０で、重みが設定されたか否か判定する。ユーザは、候補キーワード表示フィールド３０４に対応する重み増加ボタン３１４または重み低減ボタン３１６をクリックすることで重みを、例えば、０．１ずつ増減する。重みの合計は、一定の値、即ち、１．０になるように設定する。
【００９３】
図１９Ｂに例示するように、ここでは、候補キーワード「謝罪」に加え「丁寧な」が選択され、各々０．７及び０．３の重みが設定されている。
【００９４】
ステップ３４０の判定が肯定されるまで、ＣＰＵ６０はステップ３４０の判定を繰り返す。ステップ３４０の判定が肯定されるとＣＰＵ６０は、ステップ３３０を実行する。
【００９５】
本実施形態では、音声の印象を表す基本キーワードまたは候補キーワードを修飾する可能性が高い候補キーワードを提示し、基本キーワードまたは候補キーワードから選択される選択キーワードを受け取る。本実施形態では、表現合成空間における基本キーワードまたは基本キーワード及び選択キーワードの重心座標を用いて、テキストに対応する音声データを生成する。これにより、音声の印象を表すキーワードを検討して入力するユーザの手間を低減することが可能となる。また、経験の浅いユーザでも意図する印象に近い合成音声を生成するキーワードを選択することが容易となる。
【００９６】
また、本実施形態では、基本キーワード、及び基本キーワードまたは候補キーワードを修飾する可能性が高い候補キーワードを予め階層状に記憶し、記憶した基本キーワード及び候補キーワードをユーザに提示する。これにより、音声合成を行うユーザは、基本キーワードを検討して入力する必要がなくなるため、ユーザの手間を低減することが可能となる。また、経験の浅いユーザでも意図する印象に近い合成音声を生成するキーワードを選択することが容易となる。
【００９７】
また、本実施形態では、表現合成空間において、基本キーワード及び候補キーワードの何れかとの距離が所定の閾値以下である仮候補キーワードを除外した仮候補キーワードを候補キーワードとして提示する。これにより、類似した印象を有する音声が無駄に合成されることを防ぐことが可能となり、再度異なるキーワードを選択する試行錯誤の回数も低減することが可能となる。
【００９８】
以上の実施形態に関し、更に以下の付記を開示する。
【００９９】
（付記１）
音声の印象を表すキーワードを修飾する可能性がある候補キーワードを提示する候補キーワード提示部と、
前記キーワード、または前記キーワード及び前記候補キーワードを受け取るキーワード入力部と、
前記キーワード入力部で受け取った前記キーワード、または前記キーワード及び前記候補キーワードから選択される選択キーワードの表現合成空間上の座標及び重みに基づいて重心座標を計算する重心計算部と、
前記重心座標を用いて、テキストに対応する音声データを生成する音声データ生成部と、
を含む音声合成装置。
（付記２）
前記キーワードを修飾する可能性がある候補キーワードの内、前記表現合成空間において、前記キーワードとの距離が所定の閾値以下である候補キーワードを、前記候補キーワードを提示する前に、前記候補キーワードから除外するキーワード除外部、
をさらに含む、
付記１の音声合成装置。
（付記３）
前記候補キーワード提示部は、前記候補キーワードを修飾する可能性がある候補キーワードをさらに提示する、
付記１又は付記２の音声合成装置。
（付記４）
前記キーワード除外部は、前記キーワードを修飾する可能性または前記候補キーワードを修飾する可能性が所定値以下である前記候補キーワードを、前記候補キーワードから除外する、
付記３の音声合成装置。
（付記５）
前記音声データ生成部は、前記表現合成空間の感情の各々を表す軸の各々に対応する複数の音響モデルの各々で、前記テキストの言語情報に基づいて音声パラメータを取得し、前記音声パラメータを前記表現合成空間における前記重心座標を用いてモーフィングし、モーフィングした前記音声パラメータを前記音声データに変換する、
付記１〜付記４の何れかの音声合成装置。
（付記６）
前記音声データ生成部は、前記表現合成空間における前記重心座標をパラメータ重みとする複数のモデルパラメータの重み付き加算で表されるモデルパラメータを有する音響モデルで、前記テキストの言語情報に基づいて音声パラメータを取得し、前記音声パラメータを前記音声データに変換する、
付記１〜付記４の何れかの音声合成装置。
（付記７）
前記重みの合計が一定となるように、前記重みの各々を調整するキーワード重み入力部、
をさらに含む、
付記１〜付記６の何れかの音声合成装置。
（付記８）
第１のキーワードを修飾する可能性がある第２のキーワードを予め記憶する第１記憶部、
をさらに含み、
前記候補キーワード提示部は、前記第１記憶部から、前記キーワードまたは直前に選択された前記選択キーワードに基づいて取得した前記候補キーワードを提示する。
付記１又は３の音声合成装置。
（付記９）
前記キーワード、及び、前記キーワード及び前記候補キーワードを修飾する可能性がある候補キーワードを予め階層状に記憶する第２記憶部、
をさらに含み、
前記候補キーワード提示部は、前記第２記憶部から取得した前記キーワード及び前記候補キーワードを提示する、
付記１〜付記７の何れかの音声合成装置。
（付記１０）
コンピュータが、
音声の印象を表すキーワードを修飾する可能性がある候補キーワードを提示し、
前記キーワード、または前記キーワード及び前記候補キーワードを受け取り、
受け取った前記キーワード、または前記キーワード及び前記候補キーワードから選択される選択キーワードの表現合成空間上の座標及び重みに基づいて重心座標を計算し、
前記重心座標を用いて、テキストに対応する音声データを生成する、
音声合成方法。
（付記１１）
前記キーワードを修飾する可能性がある候補キーワードの内、前記表現合成空間において、前記キーワードとの距離が所定の閾値以下である候補キーワードを、前記候補キーワードを提示する前に、前記候補キーワードから除外する、
付記１０に記載の音声合成方法。
（付記１２）
前記候補キーワードを修飾する可能性がある候補キーワードをさらに提示する、
付記１０又は付記１１の音声合成方法。
（付記１３）
前記キーワードを修飾する可能性または前記候補キーワードを修飾する可能性が所定値以下である前記候補キーワードを、前記候補キーワードから除外する、
付記１２に記載の音声合成方法。
（付記１４）
前記表現合成空間の感情の各々を表す軸の各々に対応する複数の音響モデルの各々で、前記テキストの言語情報に基づいて音声パラメータを取得し、前記音声パラメータを前記表現合成空間における前記重心座標を用いてモーフィングし、モーフィングした前記音声パラメータを前記音声データに変換する、
付記１０〜付記１３の何れかの音声合成方法。
（付記１５）
前記表現合成空間における前記重心座標をパラメータ重みとする複数のモデルパラメータの重み付き加算で表されるモデルパラメータを有する音響モデルで、前記テキストの言語情報に基づいて音声パラメータを取得し、前記音声パラメータを前記音声データに変換する、
付記１０〜付記１３の何れかの音声合成方法。
（付記１６）
前記重みの合計が一定となるように、前記重みの各々を調整する、
付記１０〜付記１５の何れかに記載の音声合成方法。
（付記１７）
第１のキーワードを修飾する可能性がある第２のキーワードを予め記憶する第１記憶部から、前記キーワードまたは直前に選択された前記選択キーワードに基づいて取得した前記候補キーワードを提示する、
付記１０又は付記１２の音声合成方法。
（付記１８）
前記キーワード、及び、前記キーワード及び前記候補キーワードを修飾する可能性がある候補キーワードを予め階層状に記憶した第２記憶部から取得した前記キーワード及び前記候補キーワードを提示する、
付記１０〜付記１６の何れかの音声合成方法。
（付記１９）
音声の印象を表すキーワードを修飾する可能性がある候補キーワードを提示し、
前記キーワード、または前記キーワード及び前記候補キーワードを受け取り、
受け取った前記キーワード、または前記キーワード及び前記候補キーワードから選択される選択キーワードの表現合成空間上の座標及び重みに基づいて重心座標を計算し、
前記重心座標を用いて、テキストに対応する音声データを生成する、
ことを含む音声合成処理をコンピュータに実行させるためのプログラム。
（付記２０）
前記キーワードを修飾する可能性がある候補キーワードの内、前記表現合成空間において、前記キーワードとの距離が所定の閾値以下である候補キーワードを、前記候補キーワードを提示する前に、前記候補キーワードから除外する、
付記１９のプログラム。
（付記２１）
前記候補キーワードを修飾する可能性がある候補キーワードをさらに提示する、
付記１９又は付記２０のプログラム。
（付記２２）
前記キーワードを修飾する可能性または前記候補キーワードを修飾する可能性が所定値以下である前記候補キーワードを、前記候補キーワードから除外する、
付記２１のプログラム。
（付記２３）
前記表現合成空間の感情の各々を表す軸の各々に対応する複数の音響モデルの各々で、前記テキストの言語情報に基づいて音声パラメータを取得し、前記音声パラメータを前記表現合成空間における前記重心座標を用いてモーフィングし、モーフィングした前記音声パラメータを前記音声データに変換する、
付記１９〜付記２２の何れかのプログラム。
（付記２４）
前記表現合成空間における前記重心座標をパラメータ重みとする複数のモデルパラメータの重み付き加算で表されるモデルパラメータを有する音響モデルで、前記テキストの言語情報に基づいて音声パラメータを取得し、前記音声パラメータを前記音声データに変換する、
付記１９〜付記２２の何れかのプログラム。
（付記２５）
前記重みの合計が一定となるように、前記重みの各々を調整する、
付記１９〜付記２４の何れかに記載のプログラム。
（付記２６）
第１のキーワードを修飾する可能性がある第２のキーワードを予め記憶する第１記憶部から、前記キーワードまたは直前に選択された前記選択キーワードに基づいて取得した前記候補キーワードを提示する、
付記１９又は付記２１のプログラム。
（付記２７）
前記キーワード、及び、前記キーワード及び前記候補キーワードを修飾する可能性がある候補キーワードを予め階層状に記憶した第２記憶部から取得した前記キーワード及び前記候補キーワードを提示する、
付記１９〜付記２５の何れかのプログラム。
【符号の説明】
【０１００】
１４  キーワード入力部
１６  キーワード重み入力部
２０  重心計算部
２２  音声データ生成部
２４  音声出力部
２８  キーワードデータベース
２９  キーワードリストデータベース
３２  キーワード除外部
３４  候補キーワード提示部
６０  ＣＰＵ
７６  ディスプレイ
７８  スピーカ
６４  ２次記憶部
【図１】
2017076028.tif 000003
【図２】
2017076028.tif 000004
【図３】
2017076028.tif 000005
【図４】
2017076028.tif 000006
【図５】
2017076028.tif 000007
【図６】
2017076028.tif 000008
【図７Ａ】
2017076028.tif 000009
【図７Ｂ】
2017076028.tif 000010
【図７Ｃ】
2017076028.tif 000011
【図８】
2017076028.tif 000012
【図９】
2017076028.tif 000013
【図１０】
2017076028.tif 000014
【図１１Ａ】
2017076028.tif 000015
【図１１Ｂ】
2017076028.tif 000016
【図１１Ｃ】
2017076028.tif 000017
【図１２】
2017076028.tif 000018
【図１３】
2017076028.tif 000019
【図１４】
2017076028.tif 000020
【図１５】
2017076028.tif 000021
【図１６】
2017076028.tif 000022
【図１７】
2017076028.tif 000023
【図１８】
2017076028.tif 000024
【図１９Ａ】
2017076028.tif 000025
【図１９Ｂ】
2017076028.tif 000026