以下、本発明の実施の形態について図を参照しながら説明する。
図1は、本発明の実施の形態における音声翻訳装置の外観図である。
本発明の実施の形態における音声翻訳装置200は、話者によって発話された原言語音声に含まれる話者の感情および意図が聴取者に適切に伝わるように、その原言語音声を目的言語音声に翻訳する装置であって、例えば、パーソナルコンピュータなどによって構成される。
即ち、音声翻訳装置200は、本体201と、入力装置たるキーボード202およびマウス204と、ディスプレイ203と、マイク209と、スピーカ210と、外部ハードディスク205とを備えている。また、本体201は、記憶媒体として例えば内部ハードディスク206を内蔵しているとともに、CD―ROM(Compact Disk Read Only Memory)207がセット可能なように構成されている。
このような音声翻訳装置200は、キーボード202やマウス204に対するユーザ(例えば話者)の操作に基づいて、マイク209から話者の原言語音声を取得すると、内部ハードディスク206や、外部ハードディスク205、内部ハードディスク206から必要とされる情報を読み出す。そして、音声翻訳装置200は、その原言語音声を目的言語音声に翻訳してその目的言語音声をスピーカ210から出力する。なお、外部ハードディスク205は、回線などによって接続される他のシステムの記憶媒体であってもよい。
図2は、音声翻訳装置200の機能ブロック図である。
音声翻訳装置200は、入力部101、音響分析部102、音声認識部103、第1格納部104、原言語属性解析部105、ベクトル計算部106、第2格納部107、原言語テーブル検索部108、翻訳部109、第3格納部110、目的言語属性解析部111、目的言語属性計算部112、第4格納部113、目的言語テーブル検索部114、音声合成部115、および出力部116を備えている。
なお、本実施の形態では、入力部101が原言語音声(第1言語の音声)を取得する音声取得手段として構成され、音響分析部102、音声認識部103、第1格納部104、原言語属性解析部105、ベクトル計算部106、第2格納部107、および原言語テーブル検索部108が、音声取得手段によって取得された原言語音声に含まれる話者の感情および意図のうち少なくとも1つを感情意図として特定する感情意図特定手段として構成されている。
ここで、第2格納部107は、原言語音声ごとに、その音声の言語属性を示す第1言語属性情報(言語属性ベクトル)と、その音声の音響的特徴を示す第1音響特徴情報(音響特徴ベクトル)と、その音声に含まれる感情および意図のうち少なくとも1つを示す第1感情意図情報(感情意図ベクトル)とを関連付けて記憶している第1記憶手段として構成されている。また、音響分析部102、音声認識部103、第1格納部104、原言語属性解析部105、およびベクトル計算部106は、音声取得手段によって取得された原言語音声から、その音声の言語属性および音響的特徴のうち少なくとも1つを特定する言語音響特定手段として構成されている。さらに、原言語テーブル検索部108は、第1記憶手段に記憶されている第1言語属性情報および第1音響特徴情報のうち、言語音響特定手段で特定された内容に近い情報に関連付けられている第1感情意図情報を第1記憶手段から検索し、その第1感情意図情報の示す内容を、音声取得手段によって取得された原言語音声に含まれる感情意図として特定する検索特定手段として構成されている。
さらに、本実施の形態では、第4格納部113が、目的言語音声ごとに、その音声の言語属性を示す第2言語属性情報(言語属性ベクトル)と、その音声の音響的特徴を示す第2音響特徴情報(音響特徴ベクトル)と、その音声に含まれる感情および意図のうち少なくとも1つを示す第2感情意図情報(感情意図ベクトル)とを関連付けて記憶している第2記憶手段として構成されている。
また、本実施の形態では、翻訳部109が、音声取得手段によって取得された原言語音声を認識して、その認識結果に類似する目的言語の複数のテキストを生成する翻訳手段として構成され、目的言語テーブル検索部114と翻訳部109が、翻訳手段により生成された目的言語の複数のテキストから、そのテキストの言語属性および感情意図特定手段により特定された感情意図が、第2記憶手段に記憶されている目的言語の何れかの音声に対する第2言語属性情報および第2感情意図情報の内容に近いテキストを検索するテキスト検索手段として構成されている。さらに、目的言語属性解析部111、第3格納部110、目的言語属性計算部112、および目的言語テーブル検索部114が、第2記憶手段に記憶されている第2音響特徴情報のうち、テキスト検索手段により検索されたテキストの言語属性および感情意図特定手段により特定された感情意図に近い内容を示す第2言語属性情報および第2感情意図情報に関連付けられている第2音響特徴情報を取得する音響特徴情報取得手段として構成されている。さらに、音声合成部115と出力部116が、テキスト検索手段により検索されたテキストに対して音声合成を行なって、音響特徴情報取得手段により取得された第2音響特徴情報の示す音響的特徴を含む目的言語の合成音声を出力する合成出力手段として構成されている。
入力部101は、マイク209として構成されており、原言語音声、つまり翻訳の対象となる原言語の発話音声を取得して音声信号に変換する。
音響分析部102は、入力部101から出力される音声信号の示す原言語音声に対して音響的な分析を行い、原言語音声に含まれる各種の音響的特徴(例えば、ピッチ変化カーブや、平均ピッチ、ピッチダイナミックレンジ、声門開放度、スペクトル傾斜、無音区間位置など)の情報を取得する。本実施の形態では、音響分析部102は、音響的特徴を(平均ピッチ、ピッチダイナミックレンジ、声門開放度、スペクトル傾斜)の4つの要素からなる音響特徴ベクトルとして例えばフレームごとに取得する。
音声認識部103は、入力部101から出力される音声信号の示す原言語音声に対して、音声認識処理を行い、認識結果を原言語のテキストとして出力する。
第1格納部104は、原言語属性辞書104aを格納している。この原言語属性辞書104aは、原言語の単語ごとに、その単語の表記と、その単語の例えば品詞などを含む通常の単語辞書情報と、その単語の感情意図に関する言語属性情報とを示す。
図3は、原言語属性辞書104aの内容を示す図である。
原言語属性辞書104aは、上述のように、単語ごとに、その単語の表記と単語辞書情報と言語属性情報とを示す。単語辞書情報は、通常の言語解析に必要な品詞や、活用型、読みなどを示し、言語属性情報は、その単語の意味から表現される感情および意図に関する言語属性、例えば丁寧さや、親しみ、上昇下降、賞罰、美醜、質問などを示す。なお、上昇下降は、相手を持ち上げたり下げたりするような属性を示し、賞罰は、相手を褒めたりけなしたりするような属性を示し、美醜は、相手を美しく表現したり醜く表現したりするような属性を示す。また、本実施の形態では、言語属性情報は内容語属性と機能語属性とに分けて示される。内容語属性は、名詞や、動詞、形容詞などのその単語自身が意味をもつ内容語の言語属性であり、機能語属性は、その単語自身の意味よりも他の内容語の意味を活用するような働きかけの役割をもつ機能語、例えば助詞や助動詞などの言語属性である。言語属性情報は、ベクトルの形式で言語属性を示している。例えば、内容語の言語属性は(丁寧さ、親しみ、上昇下降、賞罰、美醜)の5つの要素からなり、機能語の言語属性は(丁寧さ、親しみ、否定、質問)の4つの要素からなる。以下、このようにベクトル形式で示される言語属性を言語属性ベクトルという。
原言語属性解析部105は、音声認識部103の認識結果たる原言語のテキストに含まれる単語のそれぞれの言語属性ベクトルを、原言語属性辞書104aを参照して生成する。
ベクトル計算部106は、音声認識部103の音声認識によって確定された原言語音声の時間軸上の単語の位置関係と、音響分析部102によって取得された音響的特徴とを用いて、原言語音声の文全体から文末ピッチ変動とポーズ頻度とを算出する。そして、ベクトル計算部106は、音響分析部102で取得されたフレームごとの音響特徴ベクトルを、文単位の音響特徴ベクトルに変換し、その音響特徴ベクトルの要素に、上述の文末ピッチ変動とポーズ頻度とを追加する。その結果、ベクトル計算部106は、(平均ピッチ、ピッチダイナミックレンジ、声門開放度、スペクトル傾斜、文末ピッチ変動、ポーズ頻度)の6つの要素からなる音響特徴ベクトルを文単位に生成する。
さらに、ベクトル計算部106は、原言語属性解析部105から生成された単語ごとの言語属性ベクトルから、文単位の言語属性ベクトル(丁寧さ、親しみ、上昇下降、賞罰、美醜、質問)を算出して出力する。
第2格納部107は、原言語感情テーブル107aを格納している。この原言語感情テーブル107aは、原言語に関する実際の音声言語データから作成されたものである。
図4は、原言語感情テーブル107aの内容を示す図である。
原言語感情テーブル107aは、第1言語の音声ごとに、その音声の感情意図ベクトルと、言語属性ベクトルと、音響特徴ベクトルとを関連付けて示す。
言語属性ベクトルは、(丁寧さ、親しみ、上昇下降、賞罰、美醜、質問)の6つの要素から構成される。このような言語属性ベクトルは、言語的内容、意味あるいは概念のもつ好悪のような話者の感情や、依頼や命令といった話者の態度や、聴取者が話者と比べて対等であるか目上であるかを示す属性、聴取者が話者と主従の関係にあるか否かを示す属性、聴取者と話者とが親しいかどうかを示す属性等、話者と聴取者の社会的関係性を反映した話者の意図を言語属性としてベクトルで表現している。
音響特徴ベクトルは、(平均ピッチ、ピッチダイナミックレンジ、声門開放度、スペクトル傾斜、文末ピッチ変動、ポーズ頻度)の6つの要素から構成される。このような音響特徴ベクトルは、話者の感情や、依頼や命令といった話者の態度、聴取者が話者と比べて対等であるか目上であるかを示す内容、聴取者が話者と主従の関係にあるか否かを示す内容、聴取者と話者とが親しいかどうかを示す内容等、話者と聴取者の社会的関係性を反映した話者の意図を音響的特徴量としてベクトルで表現している。
感情意図ベクトルは、(喜び、嫌悪、怒り、もてなし)の4つの要素から構成される。このような感情意図ベクトルは、音声全体として表現されている感情や、依頼や命令といった話者の態度、聴取者が話者と比べて対等であるか目上であるかを示す内容、聴取者が話者と主従の関係にあるか否かを示す内容、聴取者と話者とが親しいかどうかを示す内容等、話者と聴取者の社会的関係性を反映した話者の意図をベクトルで表現している。
なお、このような原言語感情テーブル107aは、例えば、原言語を母国語とする話者の感情や表情や態度が現れた実際に発話された音声に対し、複数人に対して実施された、言語的内容と声質や口調といった音響的特徴をあわせた音声全体の印象を問うアンケート調査によって音声ごとに特定された印象と、言語属性の分析結果と音響的特徴の分析結果とを合わせて記録することによって作られるものである。
原言語テーブル検索部108は、ベクトル計算部106によって生成された原言語音声の音響特徴ベクトルと言語属性ベクトルの組み合わせを検索キーとして用い、それらのベクトルと最も一致するデータを原言語感情テーブル107aから検索する。そして原言語テーブル検索部108は、そのデータを見つけると、そのデータに関連付けられた感情意図ベクトルを特定して出力する。
このように本実施の形態では、原言語音声ごとに、その音声の言語属性ベクトルと音響特徴ベクトルと感情意図ベクトルとを関連付けている原言語感情テーブル107aを用いることによって、話者によって発話された原言語音声の言語属性および音響的特徴から、その原言語音声に含まれる話者の感情や意図を適切に特定することができる。また、原言語感情テーブル107aにおいて原言語音声ごとに関連付けられている言語属性ベクトルと音響特徴ベクトルには、その原言語音声に与える印象が同じ内容を示すものだけでなく、その原言語音声に与える印象が互いに異なるような内容を示すものもある。その結果、聴取者を褒めるような肯定的な印象を与える言語属性ベクトルと、聴取者をけなすような否定的な印象を与える音響特徴ベクトルとから、原言語に含まれる話者の複雑な感情や意図を適切に特定することができる。このように、本実施の形態では、言語的な特徴と音響的な特徴とが裏腹となるような感情や意図まで特定することができる。
言い換えれば、本実施の形態では、原言語感情テーブル107aにより、原言語音声の言語表現の特徴である言語属性ベクトルと、原言語音声の口調(イントネーションや声質などの要素)の特徴である音響特徴ベクトルとから、原言語音声全体として表現される話者の感情や意図を感情意図ベクトルという、複数の感情意図の側面を要素にもつベクトル表現に変換することにより、「喜び」といった比較的単純な感情はもちろん、「嫌み」や「嘲笑」といったような複雑な感情も考慮して、目的言語への翻訳を行うことができるという格別の効果を有する。
翻訳部109は、音声認識部103の認識結果である原言語のテキストを解析することにより、そのテキストを目的言語のテキストに翻訳して出力する。また、翻訳部109は、翻訳するときには、1つの原言語のテキストから複数の目的言語のテキストを生成する。そして、翻訳部109は、これらの目的言語のテキストに対して後述するスコアを目的言語テーブル検索部114から取得したときには、目的言語の各テキストのスコアと後述する類似度とに基づいて、目的言語の各テキストをソートして表示操作部117に表示させる。
第3格納部110は、目的言語属性辞書110aを格納している。この目的言語属性辞書110aは、原言語属性辞書104aと同様に、目的言語の単語やフレーズごとに、その単語やフレーズの表記と、その単語やフレーズの品詞などを含む通常の単語辞書情報と、その単語やフレーズの感情意図に関する言語属性情報とを示す。
図5は、目的言語属性辞書110aの内容を示す図である。
目的言語属性辞書110aは、上述のように、単語やフレーズごとに、その単語やフレーズの表記(スペル)と単語辞書情報と言語属性情報とを示す。単語辞書情報は、通常の言語解析に必要な品詞や、活用形、発音などを示し、言語属性情報は、その単語やフレーズの意味から表現される感情および意図に関する言語属性、例えば丁寧さや、親しみ、上昇下降、賞罰、美醜、質問などを示す。また、本実施の形態では、言語属性情報は内容語属性と機能語属性とに分けて示される。内容語属性は、名詞や、動詞、形容詞などのその単語自身が意味をもつ内容語の言語属性であり、機能語属性は、それ自身の意味よりも他の内容語の意味を活用するような働きかけの役割をもつ機能語または機能表現、例えば冠詞や、be動詞、慣用的なフレーズ表現の一部などの言語属性を示している。例えば、内容語の言語属性は(丁寧さ、親しみ、上昇下降、賞罰、美醜)の5要素からなり、機能語の言語属性は(丁寧さ、親しみ、否定、質問、強調)の5つの要素からなる。以下、このようにベクトル形式で示される言語属性を言語属性ベクトルという。
目的言語属性解析部111は、翻訳部109の翻訳結果である目的言語のテキストごとに、そのテキストに含まれる単語やフレーズのそれぞれの言語属性ベクトルを、目的言語属性辞書110aを参照して生成する。
目的言語属性計算部112は、目的言語のテキストごとに、目的言語属性解析部111によって生成された単語やフレーズの言語属性ベクトルを用いて所定の計算を行い、目的言語の文単位にまとめた言語属性ベクトル(丁寧さ、親しみ、上昇下降、賞罰、美醜、質問)を生成する。
第4格納部113は、目的言語感情テーブル113aを格納している。この目的言語感情テーブル113aは、原言語感情テーブル107aと同じく、目的言語に関する実際の音声言語データから作成されたものである。
図6は、目的言語感情テーブル113aの内容を示す図である。
この目的言語感情テーブル113aは、感情意図ベクトルと、言語属性ベクトルと、音響特徴ベクトルとを関連付けて示す。
言語属性ベクトルは、(丁寧さ、親しみ、上昇下降、賞罰、美醜、質問)の6つの要素から構成される。このような言語属性ベクトルは、言語的内容、意味あるいは概念のもつ好悪のような話者の感情や、依頼や命令といった話者の態度や、聴取者が話者と比べて対等であるか目上であるかを示す属性、聴取者が話者と主従の関係にあるか否かを示す属性、聴取者と話者とが親しいかどうかを示す属性等、話者と聴取者の社会的関係性を反映した話者の意図を言語属性としてベクトルで表現している。
音響特徴ベクトルは、(平均ピッチ、ピッチダイナミックレンジ、声門開放度、スペクトル傾斜、文末ピッチ変動、ポーズ頻度)の6つの要素から構成される。このような音響特徴ベクトルは、話者の感情や、依頼や命令といった話者の態度、聴取者が話者と比べて対等であるか目上であるかを示す内容、聴取者が話者と主従の関係にあるか否かを示す内容、聴取者と話者とが親しいかどうかを示す内容等、話者と聴取者の社会的関係性を反映した話者の意図を音響的特徴量としてベクトルで表現している。
感情意図ベクトルは、(喜び、嫌悪、怒り、もてなし)の4つの要素から構成される。このような感情意図ベクトルは、音声全体として表現されている感情や、依頼や命令といった話者の態度、聴取者が話者と比べて対等であるか目上であるかを示す内容、聴取者が話者と主従の関係にあるか否かを示す内容、聴取者と話者とが親しいかどうかを示す内容等、話者と聴取者の社会的関係性を反映した話者の意図をベクトルで表現している。
なお、このような目的言語感情テーブル113aは、例えば、目的言語を母国語とする話者の感情や表情や態度が現れた実際に発話された音声に対し、複数人に対して実施された、言語的内容と声質や口調といった音響的特徴をあわせた音声全体の印象を問うアンケート調査によって音声ごとに特定された印象と、言語属性の分析結果と音響的特徴の分析結果とを合わせて記録することによって作られるものである。
目的言語テーブル検索部114は、翻訳部109で生成された目的言語のテキストごとに、そのテキストの言語属性ベクトルと、原言語テーブル検索部108から出力された原言語の感情意図ベクトルとの組み合わせに近い組み合わせを、目的言語感情テーブル113aから検索する。ここで、目的言語属性計算部112で生成されたテキストの言語属性ベクトルと、原言語テーブル検索部108から出力された原言語の感情意図ベクトルとの組み合わせを、第1セットといい、目的言語感情テーブル113aに含まれる言語属性ベクトルと感情意図ベクトルとの組み合わせを、第2セットという。
つまり、目的言語テーブル検索部114は、目的言語属性計算部112で生成されたテキストごとに、そのテキストに対応する第1セットに近い複数の第2セットを目的言語感情テーブル113aから検索する。このように検索して見つけ出された第2セットを、以下、スコア対象の第2セットという。
さらに、目的言語テーブル検索部114は、目的言語のテキストごとに、第1セットと各スコア対象の第2セットとの間の一致度を示すスコアを算出する。そして、目的言語テーブル検索部114は、目的言語のテキストごとに、その算出したスコアを翻訳部109に出力する。また、目的言語テーブル検索部114は、目的言語感情テーブル113aから音響特徴ベクトルを取得して音声合成部115に出力する。
音声合成部115は、目的言語テーブル検索部114から出力された音響特徴ベクトルを取得して、その音響特徴ベクトルの各要素の値に基づいて、韻律情報(例えばピッチや、パワー、デュレーションなど)および声質制御パラメータを生成する。そして、音声合成部115は、その韻律情報や声質制御パラメータに基づいて、翻訳部109によって翻訳された目的言語の複数のテキストのうち最終的に選択されたテキストに対する読み上げ音声を合成する。
出力部116は、スピーカ210として構成されており、音声合成部115によって合成された音声を利用者に目的言語の音声として提供する。
表示操作部117は、話者と音声翻訳装置200とのインターフェースを図るものであって、ディスプレイ203およびキーボード202ならびにマウス204を含んで構成されている。このような表示操作部117は、原言語の音声認識結果や目的言語のテキストを表示したり、話者からの操作を受け付けてその操作に応じた指示を翻訳部109に対して促す。
なお、第1格納部104、第2格納部107、第3格納部110および第4格納部113は、例えば外部ハードディスク205、内部ハードディスク206およびCD−ROM207のうち少なくとも1つから構成されている。また、原言語特徴分析部102、音声認識部103、原言語属性解析部105、ベクトル計算部106、原言語テーブル検索部108、翻訳部109、目的言語属性解析部111、目的言語属性計算部112、目的言語テーブル検索部114、および音声合成部115は、本体201にセットされたCPU(Central Processing Unit)がプログラムを読み込むことによって実現される。
図7は、翻訳部109の機能ブロック図である。
翻訳部109は、翻訳制御部91と、対訳辞書92aを格納する第5格納部92と、対訳テーブル93aを格納する第6格納部93とから構成される。
なお、本実施の形態では、第6格納部93が、原言語の複数の文例、目的言語の単語の概念を意味クラスとして含む複数の文例、および原言語の各文例と目的言語の各文例との類似度を記憶している対訳文例記憶手段として構成されている。また、翻訳制御部91が、対訳文例記憶手段に記憶されている原言語の複数の文例から、音声取得手段によって取得された原言語音声の認識結果に対応する文例を特定し、特定した原言語の文例に類似する目的言語の文例を、対訳文例記憶手段に記憶されている目的言語の複数の文例から選択する文例選択手段と、その文例選択手段により選択された目的言語の文例を用いて目的言語のテキストを生成するテキスト生成手段として構成されている。
翻訳制御部91は、対話辞書92aおよび対話テーブル93aを参照することにより、音声認識部103によって生成された原言語のテキストを、目的言語の複数種のテキストに翻訳する。そして、翻訳制御部91は、その複数種のテキストを目的言語属性解析部111に出力する。さらに、翻訳制御部91は、目的言語テーブル検索部114から、目的言語の各テキストに対するスコアを取得すると、そのスコアと類似度に従った順序に目的言語の各テキストをソートして表示操作部117に表示させる。そして、翻訳制御部91は、それらの目的言語のテキストのうち、ユーザによって選択されたテキストを音声合成部115に出力する。
図8は、対訳辞書92aの内容を示す図である。
対訳辞書92aは、原言語における単語と品詞を含む文法情報および意味情報(意味クラス)の対応関係を示す辞書情報1201と、目的言語における単語と品詞を含む文法情報および意味情報(意味クラス)の対応関係を示す辞書情報1202と、原言語と目的言語のそれぞれの単語における対訳関係を示す対訳情報1203とを示す。
辞書情報1201は、上述のように、原言語の単語と品詞と意味クラスを対応づけて示している。例えば、辞書情報1201は、「トム」という語彙の品詞が<固有名詞>であり、その意味クラスが<人名>であることを示す。
辞書情報1202は、上述のように、目的言語の単語と品詞と意味クラスを対応付けて示している。例えば、辞書情報1202は、「Tom」という語彙の品詞が<ProperNoun>であり、その意味クラスが<Name>であることを示す。
対訳情報1203は、上述のように、原言語と目的言語のそれぞれの単語における対訳関係を表している。例えば、対訳情報1203は、単語「トム」と単語「Tom」が対訳関係にある対訳ペアとして対応づけられていることを示す。
図9は、対訳テーブル93aの内容を示す図である。
対訳テーブル93aは、図9に示すように、原言語の複数の文例を示す原言語文例リスト1301と、目的言語の複数の文例を示す目的言語文例リスト1302と、原言語の各文例と目的言語の各文例との間の類似度を示す対訳類似度テーブル1303とを有する。
原言語文例リスト1301は、原言語の複数の文例と、それらの文例ごとに付された識別子OIDとを示す。ここで、文例中の<品詞>はその品詞に属する単語を示し、文例中の<意味クラス>はその意味クラスに属する単語を示す。例えば、文例中の<形容動詞>は形容動詞に属する単語を示し、文例中の<花>は意味クラスとして「花」に属する単語を示す。
目的言語文例リスト1302は、目的言語の複数の文例と、それらの文例ごとに付された識別子TIDとを示す。ここで、文例中の<品詞>はその品詞に属する単語を示し、文例中の<意味クラス>はその意味クラスに属する単語を示す。例えば、文例中の<Adj>はAdjective(形容詞)に属する単語を示し、文例中の<Flower>は意味クラスとして「Flower」に属する単語を示す。
対訳類似度テーブル1303は、原言語の各文例と目的言語の各文例との類似度を2次元のテーブルで示したものである。即ち、対訳類似度テーブル1303の上端の一行には、目的言語の複数の文例の識別子TIDが配置され、対訳類似度テーブル1303の左端の一列には、原言語の複数の文例の識別子OIDが配置されている。そして、識別子TIDの属する列と識別子OIDの属する行とが交わる部位に、その識別子TIDの文例と識別子OIDの文例との類似度が配置されている。例えば、この対訳類似度テーブル1303は、目的言語の識別子TID「21」の文例と、原言語の識別子OID「21」の文例との類似度が「1.0」であることを示し、目的言語の識別子TID「21」の文例と、原言語の識別子OID「22」の文例との類似度が「0.3」であることを示す。
ここで、類似度は0から1までの数値で表現されており、類似度「1」は両文例が最も類似していることを示す。なお、本実施の形態における対訳類似度テーブル1303では、直接の対訳関係にある原言語の文例と目的言語の例文とに対して、同じ番号の識別子が付与されており、対訳類似度テーブル1303の対角要素の類似度は、常に最も高い「1.0」である。
図10は、翻訳部109による翻訳の動作を示すフローチャートである。
まず、翻訳部109の翻訳制御部91は、音声認識部103から原言語のテキストを受け取ると、そのテキストに含まれる単語ごとに、その単語を対訳辞書92aから検索し、その単語の品詞および意味クラスと、その単語と対訳関係にある目的言語の単語(以下、対訳語彙という)とを取得する(ステップS1071)。例えば、翻訳制御部91は、「きれいな花が咲いてますね。」という原言語のテキストを受け取ると、単語「花」に対して、品詞<名詞>と意味クラス<花>と対訳語彙「flower」とを取得する。さらに、翻訳制御部91は、単語「きれいな」に対して、品詞<形容動詞>と対訳語彙「beautiful」とを取得する。
次に、翻訳制御部91は、原言語のテキストと、ステップS1071で取得した、単語ごとの品詞および意味クラスとを用いて、対訳テーブル93aの原言語文例リスト1301の中から、その原言語のテキストに最も一致する文例の識別子OIDを特定する(ステップS1072)。例えば、翻訳制御部91は、「きれいな花が咲いてますね。」という原言語のテキストに最も一致する文例「<形容動詞><花>が咲いてますね。」の識別子OID「21」を特定する。
次に、翻訳制御部91は、対訳テーブル93aの対訳類似度テーブル1303において、ステップS1072で特定した原言語の文例の識別子OIDの行を参照することにより、閾値以上の類似度をもつ目的言語の文例の識別子TIDを特定する(ステップS1073)。例えば、閾値は0.2である。このような場合、翻訳制御部91は、原言語の文例の識別子OID「21」に対して、0.2以上の類似度をもつ目的言語の文例の識別子TIDとして、「21」と「22」と「23」とを特定する。
次に、翻訳制御部91は、ステップS1703で特定した複数の識別子TIDに対応する目的言語の文例を、目的言語文例リスト1302から取得する(ステップS1074)。例えば、翻訳制御部91は、識別子TID「21」に対応する目的言語の文例として「A <Adj> <Flower> is open.」を取得し、識別子TID「22」に対応する目的言語の文例として「The <Flower> is not <Adj>.」を取得し、識別子TID「23」に対応する目的言語の文例として「The <Adj> <Flower> is open.」を取得する。
次に、翻訳制御部91は、ステップS1074で取得した目的言語の各文例に含まれる<品詞>あるいは<意味クラス>の箇所に、ステップS1071で取得した対訳語彙を当てはめる(ステップS1075)。即ち、翻訳制御部91は、対訳語彙の品詞と意味クラスを参照して、その対訳語彙を目的言語の文例の適切な箇所に当てはめる。
例えば、翻訳制御部91は、ステップS1701において、単語「きれいな」に対する対訳語彙「beautiful」と、単語「花」に対する対訳語彙「flower」とを取得する。この場合、翻訳制御部91は、対訳語彙「beautiful」の品詞が<Adj>であり、対訳語彙「flower」の品詞が<Noun>であってその意味クラスが<Flower>なので、識別子TID「21」の文例の<Adj>の箇所に「beautiful」を当てはめ、<Flower>の箇所に「flower」を当てはめる。
その結果、識別子TID「21」の文例から、目的言語のテキストとして翻訳文「A beautiful flower is open.」が生成される。これと同様に、識別子TID「22」の文例から、目的言語のテキストとして翻訳文「The flower is not beautiful.」が生成され、識別子TID「23」の文例から、目的言語のテキストとして翻訳文「A very beautiful flower is open.」が生成される。
図11は、原言語属性解析部105とベクトル計算部106の動作を説明するための説明図である。
原言語属性解析部105は、例えば図11の(a)に示すように、音声認識部103から「きれいな花が咲いてますね。」を示す原言語のテキスト701を取得すると、そのテキスト701に含まれる単語ごとの言語属性ベクトルを原言語属性辞書104aから選択して生成する。例えば、原言語属性解析部105は、内容語「きれいな」に対する言語属性ベクトル( 0, 0, 1, 2, 1)や、機能語「が」に対する言語属性ベクトル( 0, 0, 0, 0)などを生成する。
ベクトル計算部106は、このような単語ごとの言語属性ベクトルを用いて、文単位の言語属性ベクトルを生成する。
即ち、ベクトル計算部106は、単語を内容語と機能語で区別し、内容語によって構成される文意を機能語が修飾するという考えに基づいて、文単位の言語属性ベクトルを次のように求める。
まず、ベクトル計算部106は、上述のように生成された各内容語の言語属性ベクトルの要素ごとの平均値を算出する。例えば、ベクトル計算部106は、内容語「きれいな」、「花」および「咲い」のそれぞれの言語属性ベクトルの要素ごとの平均値(0, 0, 1, 1, 1.3)を算出する。
次に、ベクトル計算部106は、その平均値のベクトル(0, 0, 1, 1, 1.3)に、機能語の言語属性ベクトルの「丁寧さ」および「親しみ」の要素を加算する。例えば、図11の(a)に示すように、機能語「が」、「て」、「ます」および「ね」の言語属性ベクトルにおいて、要素「丁寧さ」の合計が「1」であって、要素「親しみ」の合計「1」であるため、ベクトル計算部106は、平均値のベクトル(0, 0, 1, 1, 1.3)の要素「丁寧さ」に「1」を加算するとともに要素「親しみ」に「1」を加算する。その結果、ベクトル(1, 1, 1, 1, 1.3)が生成される。
次に、ベクトル計算部106は、各機能語の言語属性ベクトルに含まれる要素「否定」の合計が0より大きい値の場合は、上述のように生成されたベクトルの要素「上昇下降」、「賞罰」および「美醜」に「−1」を加える。例えば、図11の(a)に示すように、機能語「が」、「て」、「ます」および「ね」の言語属性ベクトルにおいて、要素「否定」の合計が「0」であって0よりも大きな値でないため、ベクトル計算部106は、上述のように生成されたベクトル(1, 1, 1, 1, 1.3)の要素「上昇下降」、「賞罰」および「美醜」に「−1」を加えることなく、そのベクトルの状態を維持する。
次に、ベクトル計算部106は、各機能語の言語属性ベクトルの要素「質問」の合計を、上述のように生成されたベクトルに新たな要素として付け加える。例えば、図11の(a)に示すように、機能語「が」、「て」、「ます」および「ね」の言語属性ベクトルにおいて、要素「質問」の合計が「0」であるため、ベクトル計算部106は、上述のように生成されたベクトル(1, 1, 1, 1, 1.3)に新たな要素「質問」として「0」を加える。その結果、原言語のテキスト701の文単位の言語属性ベクトル(1, 1, 1, 1, 1.3, 0)が生成される。
上述と同様、原言語属性解析部105は、例えば図11の(b)に示すように、音声認識部103から「ケーキはいかがですか。」を示す原言語のテキスト702を取得すると、そのテキスト702に含まれる単語ごとの言語属性ベクトルを原言語属性辞書104aから選択して生成する。例えば、原言語属性解析部105は、内容語「ケーキ」に対する言語属性ベクトル( 0, 0, 0, 2, 0)や、機能語「か」に対する言語属性ベクトル( 0, 0, 0, 1)などを生成する。
そして、ベクトル計算部106は、上述のように生成された各内容語の言語属性ベクトルの要素ごとの平均値を算出する。例えば、ベクトル計算部106は、内容語「ケーキ」および「いかが」のそれぞれの言語属性ベクトルの要素ごとの平均値(1, 0, 0, 1.5, 0)を算出する。
次に、図11の(b)に示すように、機能語「は」、「です」および「か」の言語属性ベクトルにおいて、要素「丁寧さ」の合計が「1」であって、要素「親しみ」の合計「0」であるため、ベクトル計算部106は、平均値のベクトル(1, 0, 0, 1.5, 0)の要素「丁寧さ」に「1」を加算するとともに要素「親しみ」に「0」を加算する。その結果、ベクトル(2, 0, 0, 1.5, 0)が生成される。
次に、図11の(b)に示すように、機能語「が」、「て」、「ます」および「ね」の言語属性ベクトルにおいて、要素「否定」の合計が「0」であって0よりも大きな値でないため、ベクトル計算部106は、上述のように生成されたベクトル(2, 0, 0, 1.5, 0)の要素「上昇下降」、「賞罰」および「美醜」に「−1」を加えることなく、そのベクトルの状態を維持する。
次に、例えば、図11の(b)に示すように、機能語「は」、「です」および「か」の言語属性ベクトルにおいて、要素「質問」の合計が「1」であるため、ベクトル計算部106は、上述のように生成されたベクトル(2, 0, 0, 1.5, 0)に新たな要素「質問」として「1」を加える。その結果、原言語のテキスト702の文単位の言語属性ベクトル(2, 0, 0, 1.5, 0, 1)が生成される。
図12は、目的言語属性解析部111と目的言語属性計算部112の動作を説明するための説明図である。
目的言語属性解析部111は、例えば図12の(a)に示すように、音声認識部103から「A beautiful flower is open.」を示す目的言語のテキスト1001を取得すると、そのテキスト1001に含まれる単語ごとの言語属性ベクトルを目的言語属性辞書110aから選択して生成する。例えば、目的言語属性解析部111は、内容語「beautiful」に対する言語属性ベクトル(0, 0, 1, 2, 1)や、機能語「a」に対する言語属性ベクトル(0, 0, 0, 0, 0)などを生成する。
目的言語属性計算部112は、このような単語ごとの言語属性ベクトルを用いて、文単位の言語属性ベクトルを生成する。
目的言語属性計算部112は、単語を内容語と機能語で区別し、内容語によって構成される文意を機能語が修飾するという考えに基づいて、文単位の言語属性ベクトルを次のように求める。
まず、目的言語属性計算部112は、上述のように生成された各内容語の言語属性ベクトルの要素ごとの平均値を算出する。例えば、目的言語属性計算部112は、内容語「beautiful」、「flower」および「open」のそれぞれの言語属性ベクトルの要素ごとの平均値(0, 0, 1, 1, 1.3)を算出する。
次に、目的言語属性計算部112は、その平均値のベクトル(0, 0, 1, 1, 1.3)に、機能語の言語属性ベクトルの「丁寧さ」および「親しみ」の要素を加算する。例えば、図12の(a)に示すように、機能語「a」および「is」の言語属性ベクトルにおいて、要素「丁寧さ」の合計が「0」であって、要素「親しみ」の合計が「0」であるため、目的言語属性計算部112は、平均値のベクトル(0, 0, 1, 1, 1.3)の要素「丁寧さ」に「0」を加算するとともに要素「親しみ」に「0」を加算する。その結果、ベクトル(0, 0, 1, 1, 1.3)が生成される。
次に、目的言語属性計算部112は、各機能語の言語属性ベクトルに含まれる要素「否定」の合計が0より大きい値の場合は、上述のように生成されたベクトルの要素「上昇下降」、「賞罰」および「美醜」に「−1」を加える。さらに、目的言語属性計算部112は、各機能語の言語属性ベクトルに含まれる要素「強調」の合計が0より大きい値の場合は、上述のように生成されたベクトルの要素「上昇下降」、「賞罰」および「美醜」に「1」を加える。例えば、図12の(a)に示すように、機能語「a」および「is」の言語属性ベクトルにおいて、要素「否定」の合計が「0」であって0よりも大きな値でなく、要素「強調」の合計が「0」であって0よりも大きな値でないため、目的言語属性計算部112は、上述のように生成されたベクトル(0, 0, 1, 1, 1.3)の要素「上昇下降」、「賞罰」および「美醜」に「−1」および「1」を加えることなく、そのベクトルの状態を維持する。
次に、目的言語属性計算部112は、各機能語の言語属性ベクトルの要素「質問」の合計を、上述のように生成されたベクトルに新たな要素として付け加える。例えば、図12の(a)に示すように、機能語「a」および「is」の言語属性ベクトルにおいて、要素「質問」の合計が「0」であるため、目的言語属性計算部112は、上述のように生成されたベクトル(0, 0, 1, 1, 1.3)に新たな要素「質問」として「0」を加える。その結果、目的言語のテキスト1001の文単位の言語属性ベクトル(0, 0, 1, 1, 1.3, 0)が生成される。
上述と同様、目的言語属性解析部111は、例えば図12の(b)に示すように、音声認識部103から「The flower is not beautiful.」を示す目的言語のテキスト1002を取得すると、そのテキスト1002に含まれる単語ごとの言語属性ベクトルを目的言語属性辞書110aから選択して生成する。例えば、目的言語属性解析部111は、内容語「flower」に対する言語属性ベクトル( 0, 0, 1, 0, 2)や、機能語「the」に対する言語属性ベクトル( 0, 0, 0, 0, 0)などを生成する。
そして、目的言語属性計算部112は、上述のように生成された各内容語の言語属性ベクトルの要素ごとの平均値を算出する。例えば、目的言語属性計算部112は、内容語「flower」および「beautiful」のそれぞれの言語属性ベクトルの要素ごとの平均値(0, 0, 1, 1, 1.5)を算出する。
次に、図12の(b)に示すように、機能語「the」、「is」および「not」の言語属性ベクトルにおいて、要素「丁寧さ」の合計が「0」であって、要素「親しみ」の合計が「0」であるため、目的言語属性計算部112は、平均値のベクトル(0, 0, 1, 1, 1.5)の要素「丁寧さ」に「0」を加算するとともに要素「親しみ」に「0」を加算する。その結果、ベクトル(0, 0, 1, 1, 1.5)が生成される。
次に、図12の(b)に示すように、機能語「the」、「is」および「not」の言語属性ベクトルにおいて、要素「否定」の合計が「1」であって0よりも大きな値であり、要素「強調」の合計が「0」であって0よりも大きな値でないため、目的言語属性計算部112は、上述のように生成されたベクトル(0, 0, 1, 1, 1.5)の要素「上昇下降」、「賞罰」および「美醜」に「−1」を加え、ベクトル(0, 0, 0, 0, 0.5)を算出する。
次に、例えば、図12の(b)に示すように、機能語「the」、「is」および「not」の言語属性ベクトルにおいて、要素「質問」の合計が「0」であるため、目的言語属性計算部112は、上述のように算出されたベクトル(0, 0, 0, 0, 0.5)に新たな要素「質問」として「0」を加える。その結果、目的言語のテキスト1002の文単位の言語属性ベクトル(0, 0, 0, 0, 0.5, 0)が生成される。
図13は、目的言語属性解析部111と目的言語属性計算部112の他の動作を説明するための説明図である。
上述と同様、目的言語属性解析部111は、例えば図13に示すように、音声認識部103から「A very beautiful flower is open.」を示す目的言語のテキスト2401を取得すると、そのテキスト2401に含まれる単語ごとの言語属性ベクトルを目的言語属性辞書110aから選択して生成する。例えば、目的言語属性解析部111は、内容語「flower」に対する言語属性ベクトル( 0, 0, 1, 0, 2)や、機能語「very」に対する言語属性ベクトル( 0, 0, 0, 0, 1)などを生成する。
そして、目的言語属性計算部112は、上述のように生成された各内容語の言語属性ベクトルの要素ごとの平均値を算出する。例えば、目的言語属性計算部112は、内容語「flower」、「beautiful」および「open」のそれぞれの言語属性ベクトルの要素ごとの平均値(0, 0, 1, 1, 1.3)を算出する。
次に、図12の(b)に示すように、機能語「a」、「is」および「very」の言語属性ベクトルにおいて、要素「丁寧さ」の合計が「0」であって、要素「親しみ」の合計「0」であるため、目的言語属性計算部112は、平均値のベクトル(0, 0, 1, 1, 1.3)の要素「丁寧さ」に「0」を加算するとともに要素「親しみ」に「0」を加算する。その結果、ベクトル(0, 0, 1, 1, 1.3)が生成される。
次に、図13に示すように、機能語「the」、「is」および「very」の言語属性ベクトルにおいて、要素「強調」の合計が「1」であって0よりも大きな値であり、要素「否定」の合計が「0」であって0よりも大きな値でないため、目的言語属性計算部112は、上述のように生成されたベクトル(0, 0, 1, 1, 1.3)の要素「上昇下降」、「賞罰」および「美醜」に「1」を加え、ベクトル(0, 0, 2, 2, 2.3)を算出する。
次に、例えば、図13に示すように、機能語「a」、「is」および「very」の言語属性ベクトルにおいて、要素「質問」の合計が「0」であるため、目的言語属性計算部112は、上述のように算出されたベクトル(0, 0, 2, 2, 2.3)に新たな要素「質問」として「0」を加える。その結果、目的言語のテキスト1002の文単位の言語属性ベクトル(0, 0, 2, 2, 2.3, 0)が生成される。
図14は、目的言語テーブル検索部114によって算出されるスコアを説明するための説明図である。
目的言語テーブル検索部114は、翻訳部109で生成された目的言語のテキストごとに、そのテキストの言語属性ベクトルと、原言語テーブル検索部108から出力された原言語の感情意図ベクトルとの組み合わせ(上述の第1セット)に近い組み合わせを、上述のスコア対象の第2セットとして、目的言語感情テーブル113aから検索する。
例えば、図14に示すように、原言語音声がやさしく語りかける口調の「きれいな花が咲いてますね。」であって、翻訳部109で生成された目的言語のテキストが「A beautiful flower is open.」と「The flower is not beautiful.」と「A very beautiful flower is open.」とである。この場合、目的言語テーブル検索部114は、ベクトル計算部106から原言語の感情意図ベクトル(2, 0, 0, 0)を取得するとともに、目的言語属性計算部112からテキスト「A beautiful flower is open.」に対する言語属性ベクトル(0, 0, 1, 1, 1.3, 0)と、テキスト「The flower is not beautiful.」に対する言語属性ベクトル(0, 0, 0, 0, 0.5, 0)と、テキスト「A very beautiful flower is open.」に対する言語属性ベクトル( 0, 0, 2, 2, 2.3, 0)とを取得する。
目的言語テーブル検索部114は、テキスト「A beautiful flower is open.」に対して、上述のように取得された感情意図ベクトル(2, 0, 0, 0)および言語属性ベクトル(0, 0, 1, 1, 1.3, 0)の組み合わせ(第1セット)に近い組み合わせを、図6に示す目的言語感情テーブル113aに含まれる感情意図ベクトルおよび言語属性ベクトルの組み合わせ(第2セット)から検索する。そして、目的言語テーブル検索部114は、目的言語感情テーブル113aの複数の第2セットの中から、その目的言語感情テーブル113aの行1101,1102,1103にある第2セットを、スコア対象の第2セットとして見つけ出す。
このように複数のスコア対象の第2セットを見つけ出すと、目的言語テーブル検索部114は、上述の第1セットと、行11101にあるスコア対象の第2セットとの間のスコアを算出する。なお、感情意図の一致度たるスコアは、第1セットとスコア対象の第2セットとの間において、感情意図ベクトルおよび言語属性ベクトルの各対応する要素の値の差の絶対値の和で表され、その和の値が小さいスコアほど高い一致度を示す。例えば、上述のような場合、第1セットは感情意図ベクトル( 2, 0, 0, 0)と言語属性ベクトル(0, 0, 1, 1, 1.3, 0)との組み合わせであり、行11101にあるスコア対象の第2セットは感情意図ベクトル( 2, 0, 0, 0)と言語属性ベクトル(0, 0, 1, 1, 1.3, 0)との組み合わせであるため、目的言語テーブル検索部114はスコア「0」を算出する。
さらに、目的言語テーブル検索部114は、上述の第1セットと、行11102にあるスコア対象の第2セットとの間のスコア「5」を算出するとともに、上述の第1セットと、行11103にあるスコア対象の第2セットとの間のスコア「7.8」を算出する。そして、目的言語テーブル検索部114は、テキスト「A beautiful flower is open.」に対してこのように算出したスコアを翻訳部109に出力する。
また、目的言語テーブル検索部114は、上述と同様、テキスト「The flower is not beautiful.」に対して、上述のように取得された感情意図ベクトル(2, 0, 0, 0)および言語属性ベクトル(0, 0, 0, 0, 0.5, 0)の組み合わせ(第1セット)に近い組み合わせを、図6に示す目的言語感情テーブル113aに含まれる感情意図ベクトルおよび言語属性ベクトルの組み合わせ(第2セット)から検索する。そして、目的言語テーブル検索部114は、目的言語感情テーブル113aの行1101,1102,1103にある第2セットを、スコア対象の第2セットとして見つけ出す。
このように複数のスコア対象の第2セットを見つけ出すと、目的言語テーブル検索部114は、上述の第1セットと、行1101にあるスコア対象の第2セットとの間のスコア「2.8」を算出する。さらに、目的言語テーブル検索部114は、上述の第1セットと、行1102にあるスコア対象の第2セットとの間のスコア「7.8」を算出するとともに、上述の第1セットと、行1103にあるスコア対象の第2セットとの間のスコア「5」を算出する。そして、目的言語テーブル検索部114は、テキスト「The flower is not beautiful.」に対してこのように算出したスコアを翻訳部109に出力する。
また、目的言語テーブル検索部114は、上述と同様、テキスト「A very beautiful flower is open.」に対して、上述のように取得された感情意図ベクトル(2, 0, 0, 0)および言語属性ベクトル(0, 0, 2, 2, 2.3, 0)の組み合わせ(第1セット)に近い組み合わせを、図6に示す目的言語感情テーブル113aに含まれる感情意図ベクトルおよび言語属性ベクトルの組み合わせ(第2セット)から検索する。そして、目的言語テーブル検索部114は、目的言語感情テーブル113aの行1101,1102,1103にある第2セットを、スコア対象の第2セットとして見つけ出す。
このように複数のスコア対象の第2セットを見つけ出すと、目的言語テーブル検索部114は、上述の第1セットと、行1101にあるスコア対象の第2セットとの間のスコア「3」を算出する。さらに、目的言語テーブル検索部114は、上述の第1セットと、行1102にあるスコア対象の第2セットとの間のスコア「8」を算出するとともに、上述の第1セットと、行1103にあるスコア対象の第2セットとの間のスコア「10.8」を算出する。そして、目的言語テーブル検索部114は、テキスト「A very beautiful flower is open.」に対してこのように算出したスコアを翻訳部109に出力する。
さらに、例えば、図14に示すように、原言語音声が怒った口調の「きれいな花が咲いてますね。」であって、翻訳部109で生成された目的言語のテキストが「A beautiful flower is open.」と「The flower is not beautiful.」と「A very beautiful flower is open.」とである。この場合、目的言語テーブル検索部114は、ベクトル計算部106から原言語の感情意図ベクトル(0.5, 2, 1.5, 0)を取得するとともに、目的言語属性計算部112からテキスト「A beautiful flower is open.」に対する言語属性ベクトル(0, 0, 1, 1, 1.3, 0)と、テキスト「The flower is not beautiful.」に対する言語属性ベクトル(0, 0, 0, 0, 0.5, 0)と、テキスト「A very beautiful flower is open.」に対する言語属性ベクトル(0, 0, 2, 2, 2.3, 0)とを取得する。
目的言語テーブル検索部114は、上述と同様、テキスト「A beautiful flower is open.」に対して、上述のように取得された感情意図ベクトル(0.5, 2, 1.5, 0)および言語属性ベクトル(0, 0, 1, 1, 1.3, 0)の組み合わせ(第1セット)に近い組み合わせを、図6に示す目的言語感情テーブル113aに含まれる感情意図ベクトルおよび言語属性ベクトルの組み合わせ(第2セット)から検索する。そして、目的言語テーブル検索部114は、目的言語感情テーブル113aの複数の第2セットの中から、その目的言語感情テーブル113aの行1101,1102,1103にある第2セットを、スコア対象の第2セットとして見つけ出す。
このように複数のスコア対象の第2セットを見つけ出すと、目的言語テーブル検索部114は、上述の第1セットと、行1101にあるスコア対象の第2セットとの間のスコア「5」を算出する。さらに、目的言語テーブル検索部114は、上述の第1セットと、行1102にあるスコア対象の第2セットとの間のスコア「0」を算出するとともに、上述の第1セットと、行1103にあるスコア対象の第2セットとの間のスコア「2.8」を算出する。そして、目的言語テーブル検索部114は、テキスト「A beautiful flower is open.」に対してこのように算出したスコアを翻訳部109に出力する。
また、目的言語テーブル検索部114は、上述と同様、テキスト「The flower is not beautiful.」に対して、上述のように取得された感情意図ベクトル(0.5, 2, 1.5, 0)および言語属性ベクトル(0, 0, 0, 0, 0.5, 0)の組み合わせ(第1セット)に近い組み合わせを、図6に示す目的言語感情テーブル113aに含まれる感情意図ベクトルおよび言語属性ベクトルの組み合わせ(第2セット)から検索する。そして、目的言語テーブル検索部114は、目的言語感情テーブル113aの行1101,1102,1103にある第2セットを、スコア対象の第2セットとして見つけ出す。
このように複数のスコア対象の第2セットを見つけ出すと、目的言語テーブル検索部114は、上述の第1セットと、行1101にあるスコア対象の第2セットとの間のスコア「7.8」を算出する。さらに、目的言語テーブル検索部114は、上述の第1セットと、行1102にあるスコア対象の第2セットとの間のスコア「2.8」を算出するとともに、上述の第1セットと、行1103にあるスコア対象の第2セットとの間のスコア「0」を算出する。そして、目的言語テーブル検索部114は、テキスト「The flower is not beautiful.」に対してこのように算出したスコアを翻訳部109に出力する。
また、目的言語テーブル検索部114は、上述と同様、テキスト「A very beautiful flower is open.」に対して、上述のように取得された感情意図ベクトル(0.5, 2, 1.5, 0)および言語属性ベクトル(0, 0, 2, 2, 2.3, 0)の組み合わせ(第1セット)に近い組み合わせを、図6に示す目的言語感情テーブル113aに含まれる感情意図ベクトルおよび言語属性ベクトルの組み合わせ(第2セット)から検索する。そして、目的言語テーブル検索部114は、目的言語感情テーブル113aの行1101,1102,1103にある第2セットを、スコア対象の第2セットとして見つけ出す。
このように複数のスコア対象の第2セットを見つけ出すと、目的言語テーブル検索部114は、上述の第1セットと、行1101にあるスコア対象の第2セットとの間のスコア「8」を算出する。さらに、目的言語テーブル検索部114は、上述の第1セットと、行1102にあるスコア対象の第2セットとの間のスコア「3」を算出するとともに、上述の第1セットと、行1103にあるスコア対象の第2セットとの間のスコア「5.8」を算出する。そして、目的言語テーブル検索部114は、テキスト「A very beautiful flower is open.」に対してこのように算出したスコアを翻訳部109に出力する。
図15は、表示操作部117のディスプレイ203における表示例を示す図である。
翻訳部109の翻訳制御部91は、目的言語テーブル検索部114から目的言語の各テキストに対するスコアを取得すると、小さいスコアを有するテキストが上位となるように、その目的言語の複数のテキストをソートし、その結果をディスプレイ203の翻訳結果欄1403に表示させる。
例えば、原言語音声は、やさしく語りかける口調の「きれいな花が咲いてますね。」であって、翻訳部109で先に生成された目的言語のテキストは、「A beautiful flower is open.」と「The flower is not beautiful.」と「A very beautiful flower is open.」とである。この場合、翻訳制御部91は、テキスト「A beautiful flower is open.」に対するスコア「0」、「5」および「7.8」を取得し、テキスト「The flower is not beautiful.」に対するスコア「2.8」、「7.8」および「5」を取得し、テキスト「A very beautiful flower is open.」に対するスコア「3」、「8」および「10.8」を取得する。
ここで、翻訳制御部91は、目的言語のテキストのスコアのうち、全てのスコアが例えば閾値「2.5」より大きい場合には、そのテキストを表示対象から除外するとともに翻訳結果から破棄する。つまり、翻訳制御部91は、テキスト「The flower is not beautiful.」と「A very beautiful flower is open.」を表示対象から除外するとともに翻訳結果から破棄する。このように、本実施の形態では、翻訳制御部91により生成された目的言語の複数のテキストから、そのテキストの言語属性および原言語テーブル検索部108により特定された感情意図が、目的言語感情テーブル113aにある目的言語の何れかの音声に対する言語属性ベクトルおよび感情意図ベクトルの内容に近いテキストが検索される。
その結果、翻訳制御部91は、全てのテキストの中で最も小さいスコア「0」を有するテキスト「A beautiful flower is open.」を翻訳結果欄1403に表示させる。
さらに、翻訳制御部91は、翻訳結果欄1403に表示される目的言語のテキストに対応する対訳文を、ディスプレイ203の対訳文欄1404に表示させる。例えば、翻訳制御部91は、目的言語のテキスト「A beautiful flower is open.」に対応する対訳文「きれいな花が咲いてますね。」を対訳文欄1404に表示させる。なお、この対訳文は、目的言語のテキストの言語表現または言語的意味に対応する文である。話者は、このような対訳文を見ることにより、目的言語のテキストの言語表現としての意味を確認することができる。
翻訳制御部91は、このような対訳文を作成するときには、表示された目的言語のテキストを作成するために使用された文例の識別子TIDを特定し、その識別子TIDと同じ数値を有する識別子OIDを有する原言語の文例を、原言語文例リスト1301から取得する。そして、翻訳制御部91は、上述の文例の<品詞>および<意味クラス>の箇所に、その品詞や意味クラスに応じた原言語の単語を当てはめる。翻訳制御部91は、このような当てはめを行なうときには、図10に示すステップS1071で取得した原言語の単語の品詞および意味クラスを利用する。このような当てはめを行なった結果、表示された目的言語のテキストに対応する対訳文が生成される。
また、ディスプレイ203は、原言語テーブル検索部108から取得した原言語の感情意図ベクトルをベクトル欄1402に表示する。なお、感情意図ベクトルは棒グラフとして表示され、その感情意図ベクトルに含まれる各要素の大きさは棒の長さによって示される。
また、ディスプレイ203は、音声認識部103から取得した認識結果たる原言語のテキスト「きれいな花が咲いてますね。」を認識結果欄1401に表示する。さらに、ディスプレイ203は、ポインタ1405と、「音声合成」と記された合成実行ボタン1406と、キャンセルボタン1407とを表示する。
ポインタ1405は例えばマウス204によって移動される。例えば、話者は、マウス204を操作してポインタ1405をテキスト「A beautiful flower is open.」上に配置し、そのマウス204をクリックする。その結果、ディスプレイ203は、そのテキストと対訳文との背景に網掛け模様を表示させる。このような模様の表示によって、話者はどのテキストが選択されているかを容易に確認することができる。
このような状態で、話者がマウス204を操作してポインタ1405を合成実行ボタン1406上に配置してそのマウス204をクリックすると、表示操作部117は、話者によってテキスト「A beautiful flower is open.」が選択されたことと、そのテキストに対する音声合成の実行の指示を翻訳制御部91に通知する。また、話者がマウス204を操作してポインタ1405をキャンセルボタン1407上に配置してそのマウス204をクリックすると、表示操作部117は、音声合成の終了の指示を翻訳制御部91に通知する。
図16は、表示操作部117のディスプレイ203における他の表示例を示す図である。
例えば、原言語音声は、怒った口調の「きれいな花が咲いてますね。」であって、翻訳部109で先に生成された目的言語のテキストは、「A beautiful flower is open.」と「The flower is not beautiful.」と「A very beautiful flower is open.」とである。この場合、翻訳制御部91は、テキスト「A beautiful flower is open.」に対するスコア「5」、「0」および「2.8」を取得し、テキスト「The flower is not beautiful.」に対するスコア「7.8」、「2.8」および「0」を取得し、テキスト「A very beautiful flower is open.」に対するスコア「8」、「3」および「5.8」を取得する。
ここで、翻訳制御部91は、目的言語のテキストのスコアのうち、全てのスコアが例えば閾値「2.5」より大きい場合には、そのテキストを表示対象から除外するとともに翻訳結果から破棄する。つまり、翻訳制御部91は、テキスト「A very beautiful flower is open.」を表示対象から除外するとともに翻訳結果から破棄する。
その結果、翻訳制御部91は、まず、テキスト「A beautiful flower is open.」とテキスト「The flower is not beautiful.」とをそれぞれのスコアの小さいものから順にソートして翻訳結果欄1403に表示させようとする。
ここで、テキスト「A beautiful flower is open.」の最も小さいスコアと、テキスト「The flower is not beautiful.」の最も小さいスコアとは共に「0」である。そこで、翻訳制御部91は、原言語のテキストに対する、目的言語のテキスト「A beautiful flower is open.」の類似度と、目的言語のテキスト「The flower is not beautiful.」の類似度とを、対訳類似度テーブル1303を参照して特定する。その結果、翻訳制御部91は、目的言語のテキスト「A beautiful flower is open.」の類似度「1.0」と、目的言語のテキスト「The flower is not beautiful.」の類似度「0.3」とを特定する。
そして、翻訳制御部91は、それらの目的言語のテキストを類似度の大きいものから順に、つまり「A beautiful flower is open.」、「The flower is not beautiful.」の順に、ディスプレイ203の翻訳結果欄1403に表示させる。
さらに、翻訳制御部91は、翻訳結果欄1403に表示される目的言語の各テキストに対応する対訳文、例えば「きれいな花がさいてますね。」および「その花はきれいではありませんね。」を、ディスプレイ203の対訳文欄1404に表示させる。
さらに、翻訳制御部91は、ディスプレイ203の認識結果欄1401に、音声認識部103から取得した原言語のテキスト「きれいな花が咲いてますね。」を表示させるとともに、ディスプレイ203のベクトル欄1402に、原言語テーブル検索部108から取得した原言語の感情意図ベクトルを表示させる。
さらに、ディスプレイ203は、ポインタ1405と、「音声合成」と記された合成実行ボタン1406と、キャンセルボタン1407とを表示する。上述のように、ポインタ1405は目的言語のテキストの選択に使用され、合成実行ボタン1406は音声合成の実行の指示に使用され、キャンセルボタン1407は音声合成の終了の指示に使用される。
図17は、目的言語テーブル検索部114によって特定される音響特徴ベクトルを説明するための説明図である。
翻訳制御部91は、話者によって選択された目的言語のテキストと、そのテキストに対する音声合成の実行の指示とを表示操作部117から受け付けると、そのテキストの文単位の言語属性ベクトルを目的言語属性解析部111および目的言語属性計算部112に生成させる。
そして、目的言語テーブル検索部114は、原言語テーブル検索部108から取得した原言語の感情意図ベクトルと、上述のように目的言語属性計算部112によって生成された目的言語の言語属性ベクトルとの組み合わせに最も一致するデータを、目的言語感情テーブル113aから検索する。
例えば、図15に示される内容がディスプレイ203に表示されているときに、目的言語のテキスト「A beautiful flower is open.」の音声合成の実行が指示されると、目的言語テーブル検索部114は、やさしく語りかける口調の「きれいな花が咲いてますね。」に対する感情意図ベクトル(2, 0, 0, 0)と、目的言語のテキスト「A beautiful flower is open.」に対する言語属性ベクトル(0, 0, 1, 1, 1.3, 0)とを取得する。そして、目的言語テーブル検索部114は、感情意図ベクトル(2, 0, 0, 0)と言語属性ベクトル(0, 0, 1, 1, 1.3, 0)との組み合わせに最も一致するデータを、目的言語感情テーブル113aの行1101から見つける。その結果、目的言語テーブル検索部114は、そのデータ、つまり目的言語感情テーブル113aの行1101にある感情意図ベクトルおよび言語属性ベクトルに関連付けられている音響特徴ベクトル(2, 1, 1, 1, 1, 0)を音声合成部115に出力する。
これにより、目的言語のテキスト「A beautiful flower is open.」がやさしい口調で音声合成されて出力される。
一方、図16に示される内容がディスプレイ203に表示されているときに、目的言語のテキスト「A beautiful flower is open.」の音声合成の実行が指示されると、目的言語テーブル検索部114は、怒った口調の「きれいな花が咲いてますね。」に対する感情意図ベクトル(0.5, 2, 1.5, 0)と、目的言語のテキスト「A beautiful flower is open.」に対する言語属性ベクトル(0, 0, 1, 1, 1.3, 0)とを取得する。そして、目的言語テーブル検索部114は、感情意図ベクトル(0.5, 2, 1.5, 0)と言語属性ベクトル(0, 0, 1, 1, 1.3, 0)との組み合わせに最も一致するデータを、目的言語感情テーブル113aの行1102から見つける。その結果、目的言語テーブル検索部114は、そのデータ、つまり目的言語感情テーブル113aの行1102にある感情意図ベクトルおよび言語属性ベクトルに関連付けられている音響特徴ベクトル(-2, 1, -2, -1, 0, 1)を音声合成部115に出力する。
これにより、否定的な内容を示す目的言語のテキスト「A beautiful flower is open.」が怒った口調で音声合成されて出力される。
また、図16に示される内容がディスプレイ203に表示されているときに、目的言語のテキスト「The flower is not beautiful.」の音声合成の実行が指示されると、目的言語テーブル検索部114は、怒った口調の「きれいな花が咲いてますね。」に対する感情意図ベクトル(0.5, 2, 1.5, 0)と、目的言語のテキスト「The flower is not beautiful.」に対する言語属性ベクトル(0, 0, 0, 0, 0.5, 0)とを取得する。そして、目的言語テーブル検索部114は、感情意図ベクトル(0.5, 2, 1.5, 0)と言語属性ベクトル(0, 0, 0, 0, 0.5, 0)との組み合わせに最も一致するデータを、目的言語感情テーブル113aの行1103から見つける。その結果、目的言語テーブル検索部114は、そのデータ、つまり目的言語感情テーブル113aの行1103にある感情意図ベクトルおよび言語属性ベクトルに関連付けられている音響特徴ベクトル(1, 1, 0, 0, 0, 0)を音声合成部115に出力する。
これにより、否定的な内容を示す目的言語のテキスト「The flower is not beautiful.」が怒った口調ではなく落ち着いた口調で音声合成されて出力される。
このように本実施の形態では、目的言語感情テーブル113aにおいて目的言語音声ごとに関連付けられている言語属性ベクトルと音響特徴ベクトルには、その目的言語音声に与える印象が同じ内容を示すものだけでなく、その目的言語音声に与える印象が互いに異なるような内容を示すものもある。その結果、上述のように、否定的な印象を与える言語属性を有する目的言語のテキストを、否定的な怒りの印象を与える音響的特徴で合成することができるとともに、肯定的な落ち着いた印象を与える音響的特徴で合成することもできる。このように、本実施の形態では、言語的な特徴と音響的な特徴とが裏腹となるような合成音声を生成することができ、その合成音声全体で複雑な感情や意図を表現することができる。したがって、原言語の言語表現に縛られない自由度の高い翻訳を行なうことができる。
このように構成された本実施の形態における音声翻訳装置200の動作を図18に従って説明する。
図18は、本発明の実施の形態における音声翻訳装置200の動作を示すフローチャートである。
まず、音声翻訳装置200の入力部101は、話者が発話した原言語音声を取得する(ステップS101)。次に、音声認識部103は、ステップS101で取得された原言語音声に対して音声認識処理を行い、その認識結果として原言語のテキストを生成する(ステップS102)。このとき、音声認識部103は、原言語音声と原言語のテキストとの間の単語レベルでの時間的な対応関係を示す情報を出力するともに、表示操作部117に認識結果たる原言語のテキストを出力する。
次に、音声翻訳装置200の原言語属性解析部105は、ステップS102で生成された原言語のテキストに含まれる各単語の言語属性を、原言語属性辞書104aを参照することにより取得する(ステップS103)。ここで、原言語属性解析部105は、各単語の言語属性を言語属性ベクトルとして取得する。
音響分析部102は、ステップS101で取り込まれた原言語音声の音響的分析を行い、原言語音声に含まれる各種の音響的特徴、即ち平均ピッチ、ピッチダイナミックレンジ、声門開放度、およびスペクトル傾斜を取得する(ステップS104)。なお、これらの音響的特徴の情報は、従来提案されているピッチ分析手法や、声質の同定方法、スペクトル分析手法によって得られる情報である。
次に、ベクトル計算部106は、文単位の言語属性ベクトルと音響特徴ベクトルとを生成する(ステップS105)。即ち、ベクトル計算部106は、ステップS102の音声認識によって確定された原言語音声の時間軸上の単語の位置関係と、ステップS104で取得された音響的特徴とを用いて、原言語音声の文末ピッチ変動とポーズ頻度とを算出する。さらに、ベクトル計算部106は、ステップS104で取得された音響的特徴から文単位の音響特徴ベクトルを生成するとともに、この文単位の音響特徴ベクトルに、上述のように算出した2つの音響的特徴(即ち、文末ピッチ変動とポーズ頻度)を追加する。さらに、ベクトル計算部106は、ステップS103で取得した単語ごとの言語属性ベクトルから、文単位の言語属性ベクトルを算出する。
次に、原言語テーブル検索部108は、ステップS105で生成された原言語の言語属性ベクトルと音響特徴ベクトルの組み合わせを検索キーとして用い、それらのベクトルと最も一致するデータを原言語感情テーブル107aから検索する(ステップS106)。そして、原言語テーブル検索部108は、そのデータを見つけると、そのデータに関連付けられた感情意図ベクトルを特定するとともに、表示操作部117にその感情意図ベクトルを表示させる。
例えば、「きれいな花が咲いてますね。」がやさしく語りかけるような口調で話された場合、ベクトル計算部106は言語属性ベクトル(1, 1, 1, 1, 1.3, 0)と音響特徴ベクトル(2, 1, 1, 1, 1, 0)を生成する。この場合、原言語テーブル検索部108は、これらのベクトルと最も一致するデータを、図4に示す原言語感情テーブル107aの行801から見つける。その結果、原言語テーブル検索部108は、感情意図ベクトル(2, 0, 0, 0)を特定する。この感情意図ベクトルは、話者が喜びの感情あるいは意図を持って発話していることを示している。一方、「きれいな花が咲いてますね。」が怒ったような口調で話された場合、ベクトル計算部106は言語属性ベクトル(1, 1, 1, 1, 1.3, 0)と音響特徴ベクトル(-2, 1, -2, -1, 0, 1)を生成する。この場合、原言語テーブル検索部108は、これらのベクトルと最も一致するデータを、図4に示す原言語感情テーブル107aの行802から見つける。その結果、原言語テーブル検索部108は、感情意図ベクトル(0.5, 2, 1.5, 0)を特定する。この感情意図ベクトルは、話者が若干の喜びと、嫌悪と、怒りという3種類の感情が入り交じった「嫌み」や「嘲笑」ともいうべき複雑な感情や意図を持って発話していることを示している。
次に、翻訳部109は、音声認識部103の認識結果である原言語のテキストを目的言語の複数のテキストへ翻訳する(ステップS107)。
そして、目的言語属性解析部111は、目的言語のテキストごとに、そのテキストに含まれる各単語やフレーズの言語属性を、目的言語属性辞書110aを参照することにより取得し、目的言語属性計算部112は、目的言語のテキストごとに、文単位の言語属性ベクトルを生成する(ステップS108)。
次に、目的言語テーブル検索部114は、ステップS107での翻訳結果である目的言語のテキストごとに、そのテキストに対応する第1セットに近い複数の第2セットをスコア対象として目的言語感情テーブル113aから検索する。ここで、第1セットとは、ステップS106で原言語テーブル検索部108によって検索された原言語の感情意図ベクトルと、目的言語のテキストごとにステップS108で生成された目的原語の言語属性ベクトルとの組み合わせである。第2セットとは、目的言語感情テーブル113aに含まれる言語属性ベクトルと感情意図ベクトルとの組み合わせである。さらに、目的言語テーブル検索部114は、目的言語のテキストごとに、第1セットと各スコア対象の第2セットとの間のスコアを算出する(ステップS109)。このスコアは翻訳部109の翻訳制御部91に出力される。
次に、翻訳制御部91は、小さいスコアを有するテキストが上位となるように、ステップS107で生成された目的言語の複数のテキストをソートし、その結果を表示操作部117に表示させる(ステップS110)。ただし、翻訳制御部91は、テキストに対応する何れのスコアも所定の閾値より大きい場合には、そのテキストを表示対象から除外して、そのテキストを翻訳結果から破棄する。例えば、翻訳制御部91は、テキストに対応する何れのスコアも2.5より大きい場合には、そのテキストを翻訳結果から破棄する。
ここで、翻訳制御部91は、目的言語の複数のテキストの最小のスコアが同じである場合には、原言語との類似度の高いテキストが上位となるように、その目的言語の複数のテキストをソートする。
このように表示操作部117に目的言語の複数のテキストが表示されると、翻訳制御部91は、話者によって操作されたキーボード202またはマウス204からの指示を受け付ける(ステップS111)。このような指示には、その複数のテキストの中から何れかのテキストを選択してそのテキストの音声合成の開始を促す指示と、音声合成の終了を促す指示とがある。
次に、翻訳制御部91は、テキストを選択して音声合成の開始を促す指示があったか否かを判別する(ステップS112)。音声合成の終了の指示があったと判別したときには(ステップS112のNo)、翻訳制御部91は音声合成の処理を終了し、テキストを選択して合成音声の開始を促す指示があったと判別したしたときには(ステップS112のYes)、翻訳制御部91は、その選択されたテキストを音声合成部115と目的言語属性解析部111に出力する。
目的言語のテキストを取得した目的言語属性解析部111は、ステップS108と同様の処理を行い、そのテキストの言語属性ベクトルを生成する(ステップS113)。
次に、目的言語テーブル検索部114は、ステップS106で原言語テーブル検索部108が決定した原言語の感情意図ベクトルと、ステップS113で生成された目的言語の言語属性ベクトルとの組み合わせを検索キーとして用い、目的言語感情テーブル113aの中から、それらのベクトルの組み合わせと最も一致するデータを特定する。そして、目的言語テーブル検索部114は、そのデータに関連付けられている音響特徴ベクトルを取得する(ステップS114)。
次に、音声合成部115は、ステップS114で取得された音響特徴ベクトルの各要素の値に基づいて、あらかじめ定められた標準の韻律パラメータ(平均ピッチ、ピッチダイナミックレンジ、文末ピッチ変動)および声質制御パラメータ(スペクトル傾斜、声門開放度)を内部修正し、目的言語のテキストを音声合成する(ステップS115)。なお、音声合成部115は、音響特徴ベクトルの各要素の標準値を0とし、その各要素の標準値からの増減に同調して、音声合成部115内部の標準の韻律パラメータと声質制御パラメータとを増減する。
最後に、出力部116は、ステップS115で合成された音声を出力する(ステップS116)。
このように本実施の形態の音声翻訳装置200では、原言語音声の意味内容に類似する目的言語の複数のテキストから、そのテキストの言語属性ベクトルと原言語音声に含まれる感情意図ベクトルとが、目的言語感情テーブル113aの言語属性ベクトルおよび感情意図ベクトルの内容に近いテキストが検索されるため、原言語音声に含まれる感情意図を聴取者に伝えるのにふさわしい言語属性ベクトルを有する目的言語のテキストを見つけ出すことができる。さらに、目的言語感情テーブル113aにある音響特徴ベクトルのうち、上述のように検索されたテキストの言語属性ベクトルと原言語音声に含まれる感情意図ベクトルとに近い内容を示すデータに関連付けられている音響特徴ベクトルが取得されるため、その検索されたテキストに対して、原言語音声に含まれる感情意図を聴取者に伝えるのにふさわしい音響特徴ベクトルを取得することができる。そして、その音響特徴ベクトルの示す音響的特徴が、検索された目的言語のテキストの合成音声に反映されるため、原言語音声に含まれる話者の感情および意図を、目的言語の合成音声により聴取者に適切に伝えることができる。
即ち、本実施の形態の音声翻訳装置200では、原言語音声に含まれる感情意図を特定して、その感情意図を目的言語で表現し得る言語属性および音響的特徴を有する目的言語の音声が合成されるため、言語的文化上の感情や意図の表現方法の違いに柔軟に対応した翻訳を行なうことができる。
(変形例1)
ここで、上記実施の形態における音声翻訳装置200の第1の変形例について説明する。
上記実施の形態では、目的言語属性辞書110aは、単語およびフレーズごとに、その単語やフレーズの表記と単語辞書情報と言語属性情報とを示していた。
本変形例にかかる目的言語属性辞書は、さらに、意味クラスごとに、その意味クラスの表記と言語属性情報とを示す。
図19は、本変形例にかかる目的言語属性辞書の内容を示す図である。
この目的言語属性辞書110bには、意味クラス<Name>と、内容語属性、つまり内容語の言語属性ベクトル(0, 2, 0, 0, 0,)とが関連付けられている。
ここで、このように構成された目的言語属性辞書110bを有する音声翻訳装置200が、穏やかな口調で発話された原言語音声「ケーキはいかがですか。」に対して行なう処理について説明する。
まず、音声認識部103は、図11の(b)に示すように、原言語音声から原言語のテキスト「ケーキはいかがですか。」を生成して、原言語属性解析部105は、そのテキストに含まれる単語ごとの言語属性ベクトルを生成する。さらに、音声翻訳装置200のベクトル計算部106は、そのテキストの最終的な文単位の言語属性ベクトル(2, 0, 0, 1.5, 0, 1)を生成する。また、音響分析部102およびベクトル計算部106は、その原言語音声から、穏やかな口調を示す音響特徴ベクトル(2, 1, 1, 1, 1, 0)を生成する。
そして、原言語テーブル検索部108は、生成された言語属性ベクトル(2, 0, 0, 1.5, 0, 1)と音響特徴ベクトル(2, 1, 1, 1, 1, 0)との組み合わせに最も一致するデータを原言語感情テーブル107aから検索する。そして、原言語テーブル検索部108は、図4に示す原言語感情テーブル107aの行803でそのデータに関連付けられている感情意図ベクトル(1, 0, 0, 2)を取得する。つまり、音声翻訳装置200は、原言語音声には、喜んでもてなそうという意図があると判断している。
さらに、翻訳制御部91は、対訳テーブル93aを参照して、原言語のテキスト「ケーキはいかがですか。」に対応する目的言語のテキスト「Eat the cake, <Name>.」と「Would you like to eat the cake?」を生成する。ここで、原言語のテキストには意味クラス<名前(固有名詞)>に属する単語が含まれていないので、翻訳制御部91は、目的言語文例リスト1302にある文例の意味クラス<Name>に単語を当てはめることなく、上述のような目的言語のテキスト「Eat the cake, <Name>.」を生成している。
図20は、本変形例にかかる目的言語属性解析部111と目的言語属性計算部112の動作を説明するための説明図である。
目的言語属性解析部111は、例えば図20の(a)に示すように、音声認識部103から「Eat the cake, <Name>.」を示す目的言語のテキスト1902を取得すると、そのテキスト1902に含まれる単語ごとの言語属性ベクトルを目的言語属性辞書110bから選択して生成する。例えば、目的言語属性解析部111は、内容語としての意味クラス<Name>に対する言語属性ベクトル( 0, 1, 0, 0, 0)や、機能語「the」に対する言語属性ベクトル( 0, 0, 0, 0, 0)などを生成する。目的言語属性計算部112は、このような単語ごとの言語属性ベクトルを用いて、文単位の言語属性ベクトル(0, 1, 0, 1.5, 0, 0)を生成する。
また、目的言語属性解析部111は、例えば図20の(b)に示すように、音声認識部103から「Would you like to eat the cake?」を示す目的言語のテキスト1901を取得すると、そのテキスト1901に含まれる単語ごとの言語属性ベクトルを目的言語属性辞書110bから選択して生成する。例えば、目的言語属性解析部111は、内容語「cake」に対する言語属性ベクトル(0, 0, 0, 2, 0)や、機能語としてのフレーズ「Would you like to」に対する言語属性ベクトル(1, 0, 0, 1, 0)などを生成する。目的言語属性計算部112は、このような単語ごとの言語属性ベクトルを用いて、文単位の言語属性ベクトル(1, 0, 0, 1.5, 0, 1)を生成する。
図21は、本変形例にかかる目的言語テーブル検索部114によって算出されるスコアを説明するための説明図である。
例えば、目的言語テーブル検索部114は、ベクトル計算部106から原言語の感情意図ベクトル(1, 0, 0, 2)を取得するとともに、目的言語属性計算部112からテキスト「Eat the cake, <Name>.」に対する言語属性ベクトル(0, 1, 0, 1.5, 0, 0)と、テキスト「Would you like to eat the cake?」に対する言語属性ベクトル(1, 0, 0, 1.5, 0, 1)とを取得する。
目的言語テーブル検索部114は、テキスト「Eat the cake, <Name>.」に対して、上述のように取得された感情意図ベクトル(1, 0, 0, 2)および言語属性ベクトル(0, 1, 0, 1.5, 0, 0)の組み合わせ(第1セット)に近い組み合わせを、図6に示す目的言語感情テーブル113aに含まれる感情意図ベクトルおよび言語属性ベクトルの組み合わせ(第2セット)から検索する。そして、目的言語テーブル検索部114は、目的言語感情テーブル113aの複数の第2セットの中から、その目的言語感情テーブル113aの行1104,1105にある第2セットを、スコア対象の第2セットとして見つけ出す。
このように複数のスコア対象の第2セットを見つけ出すと、目的言語テーブル検索部114は、上述の第1セットと、行1104にあるスコア対象の第2セットとの間のスコア「0」を算出する。さらに、目的言語テーブル検索部114は、上述の第1セットと、行1105にあるスコア対象の第2セットとの間のスコア「5」を算出する。そして、目的言語テーブル検索部114は、テキスト「Eat the cake, <Name>.」に対してこのように算出したスコアを翻訳部109に出力する。
また、目的言語テーブル検索部114は、テキスト「Would you like to eat the cake?」に対して、上述のように取得された感情意図ベクトル(1, 0, 0, 2)および言語属性ベクトル(1, 0, 0, 1.5, 0, 1)の組み合わせ(第1セット)に近い組み合わせを、図6に示す目的言語感情テーブル113aに含まれる感情意図ベクトルおよび言語属性ベクトルの組み合わせ(第2セット)から検索する。そして、目的言語テーブル検索部114は、目的言語感情テーブル113aの複数の第2セットの中から、その目的言語感情テーブル113aの行1104,1105にある第2セットを、スコア対象の第2セットとして見つけ出す。
このように複数のスコア対象の第2セットを見つけ出すと、目的言語テーブル検索部114は、上述の第1セットと、行1104にあるスコア対象の第2セットとの間のスコア「3」を算出する。さらに、目的言語テーブル検索部114は、上述の第1セットと、行1105にあるスコア対象の第2セットとの間のスコア「2」を算出する。そして、目的言語テーブル検索部114は、テキスト「Would you like to eat the cake?」に対してこのように算出したスコアを翻訳部109に出力する。
図22は、本変形例にかかる表示操作部117のディスプレイ203における表示例を示す図である。
翻訳部109の翻訳制御部91は、目的言語テーブル検索部114から目的言語の各テキストに対するスコアを取得すると、小さいスコアを有するテキストが上位となるように、その目的言語の複数のテキストをソートし、その結果をディスプレイ203の翻訳結果欄1403に表示させる。
例えば、原言語音声は、穏やかな口調の「ケーキはいかがですか。」であって、翻訳部109で先に生成された目的言語のテキストは、「Eat the cake, <Name>.」と「Would you like to eat the cake?」とである。この場合、翻訳制御部91は、テキスト「Eat the cake, <Name>.」に対するスコア「0」および「5」を取得し、テキスト「Would you like to eat the cake?」に対するスコア「3」および「2」を取得する。
そして、翻訳制御部91は、テキスト「Eat the cake, <Name>.」の最も小さいスコア「0」と、テキスト「Would you like to eat the cake?」の最も小さいスコア「2」とを比較する。その結果、翻訳制御部91は、スコアの小さいテキスト「Eat the cake, <Name>.」が先頭になるように、テキスト「Eat the cake, <Name>.」とテキスト「Would you like to eat the cake?」とをディスプレイ203の翻訳結果欄1403に表示させる。
なお、図9の対訳テーブル93aに示すように、原言語のテキスト「ケーキはいかがですか。」に対する目的言語のテキスト「Eat the cake, <Name>.」の類似度は「0.4」であって、その原言語のテキストに対する目的言語のテキスト「Would you like to eat the cake?」の類似度は「1.0」である。しかしながら、翻訳制御部91は、テキスト「Eat the cake, <Name>.」のスコアの方が、テキスト「Would you like to eat the cake?」のスコアよりも小さいので、テキスト「Eat the cake, <Name>.」をテキスト「Would you like to eat the cake?」よりも上位に表示させる。
このように、翻訳制御部91は、原言語音声に含まれていない単語「トム」の意味クラス<Name>が目的言語の文例に含まれているときには、その意味クラス<Name>を含む目的言語のテキスト「Eat the cake, <Name>.」を生成し、そのテキストをディスプレイ203に表示させることで、その意味クラス<Name>に対応する単語の入力をユーザ(話者)に促す。
ディスプレイ203の翻訳結果欄1403の先頭に表示されたテキスト「Eat the cake, <Name>.」を見た話者は、自ら発話した原言語音声に対して適切な目的言語のテキストが「Eat the cake, <Name>.」であることを把握する。そして、話者は、そのテキストを音声合成しようとするときには、原言語音声で「トムさん、ケーキはいかがですか。」を発話し直す。その結果、音声翻訳装置200は、ディスプレイ203の翻訳結果欄1403の先頭(最上位)に、原言語音声「トムさん、ケーキはいかがですか。」に対して適切な目的言語のテキストとして「Eat the cake, Tom.」を表示させる。そして、話者がそのテキストを選択して音声合成の開始を指示すれば、音声翻訳装置200は、上述のように、そのテキストに対して最適な音響特徴ベクトルを取得し、そのテキストに対して音声合成を行なうことにより、その音響特徴ベクトルの示す音響的特徴を含む目的言語の合成音声を生成して出力する。なお、上述の例では、話者が原言語音声「トムさん、ケーキはいかがですか。」を発話し直したが、「トム」という単語を話者がキーボード202から直接入力してもよい。
このように本変形例では、目的言語文例リスト1302にある文例に意味クラスを含めるとともに、目的言語属性辞書110bにその意味クラスの言語属性ベクトルを含め、原言語音声に含まれていない単語の意味クラスが目的言語の文例に含まれているときには、テキスト生成手段たる翻訳制御部91によって、その意味クラスに対応する単語の入力がユーザに促される。その結果、例えば、ユーザである話者はその単語を含む原言語音声を発話し直すことができ、音声翻訳装置200は、その意味クラスの単語を含む目的言語の合成音声を出力して、当初の原言語音声に含まれる話者の感情および意図を聴取者に適切に伝えることができる。すなわち、本変形例では、原言語音声に当初含まれていない単語も補って、その原言語音声を適切な目的言語音声に翻訳することができ、翻訳の自由度を広げることができる。
(変形例2)
ここで、上記実施の形態における音声翻訳装置200の第2の変形例について説明する。
上記実施の形態では、原言語テーブル検索部108から出力された感情意図ベクトルを、そのまま目的言語テーブル検索部114での検索に用いた。
本変形例では、さらに、原言語テーブル検索部108から出力された感情意図ベクトルを変更し、その変更された感情意図ベクトルを目的言語テーブル検索部114での検索に用いる。
図23は、本変形例にかかる音声翻訳装置の機能ブロック図である。
本変形例にかかる音声翻訳装置200aは、基本的に上記実施の形態の音声翻訳装置200と同様に構成されているが、表示操作部117の代わりに表示操作部117aを備えるとともにベクトル変更部118を備えている。
ベクトル変更部118は、原言語テーブル検索部108から出力された原言語の感情意図ベクトルの各要素の値を、表示操作部117aからの指示にしたがって変更する。
なお、本変形例では、原言語テーブル検索部108とベクトル変更部118が検索特定手段として構成されている。
表示操作部117aは、ユーザである話者からの操作に基づき、感情意図ベクトルの各要素の変更後の値を取得して、その変更後の値をベクトル変更部118に指示する。
図24は、本変形例にかかる表示操作部117aのディスプレイ203における表示例を示す図である。
ディスプレイ203は、ベクトル欄1402に、原言語テーブル検索部108から出力された感情意図ベクトルを、図24中の黒色の棒グラフで表示するとともに、任意設定可能な感情意図ベクトルを、図24中の網掛けされた棒グラフで表示する。マウス204によるポインタ1405のその網掛けされた棒上への配置および上下方向へのドラッグ・アンド・ドロップ操作によって、ディスプレイ203は、任意設定可能な感情意図ベクトルを示す網掛けされた棒グラフの各棒を、その操作に応じて伸張して表示する。
さらに、ディスプレイ203は、スコアと類似度に従った順序で目的言語の各テキストを翻訳結果欄1403に表示する。例えば、ディスプレイ203は、テキスト「A beautiful flower is open.」、「The flower is not beautiful.」、「A very beautiful flower is open.」の順で、これらのテキストを表示する。
また、ディスプレイ203は、「変更」と記された変更ボタン1408を表示する。例えば、話者は、マウス204を用いて、ベクトル欄1402に表示された任意設定可能な感情意図ベクトルの要素「嫌悪」に対応する棒を図24中の上方に伸ばす。そして、話者は、マウス204を用いて、ポインタ1405を変更ボタン1408の上に配置し、マウス204をクリックする。その結果、表示操作部117aは、ベクトル変更部118に対して、上述のように伸ばされた棒の長さに相当する要素「嫌悪」の値を指示する。
このような指示を受けたベクトル変更部118は、原言語テーブル検索部108から出力された感情意図ベクトルを、指示された要素「嫌悪」の値を有する感情意図ベクトルに変更して、目的言語感情テーブル検索部114に出力する。
感情意図ベクトルが変更されると、目的言語テーブル検索部114は、その変更された感情意図ベクトルに基づいて、目的言語の各テキストに対するスコアを再計算する。
図25は、変更前後の感情意図ベクトルに基づくスコアを示す図である。
例えば、目的言語テーブル検索部114は、怒った口調の原言語音声「きれいな花が咲いてますね。」に対する感情意図ベクトル(0.5, 2, 1.5, 0)を原言語テーブル検索部108から取得するとともに、目的言語のテキスト「A beautiful flower is open.」に対する言語属性ベクトル(0, 0, 1, 1, 1.3, 0)と、「The flower is not beautiful.」に対する言語属性ベクトル(0, 0, 0, 0, 0.5, 0)と、「A very beautiful flower is open.」に対する言語属性ベクトル(0, 0, 2, 2, 2.3, 0)とを取得する。
そして、目的言語テーブル検索部114は、テキスト「A beautiful flower is open.」に対して、感情意図ベクトル(0.5, 2, 1.5, 0)および言語属性ベクトル(0, 0, 1, 1, 1.3, 0)の第1セットと、目的言語感情テーブル113aの行1101,1102,1103,1106にあるスコア対象の第2セットとの間のスコア「5」、「0」、「3」、「5」を算出する。さらに、目的言語テーブル検索部114は、テキスト「The flower is not beautiful.」に対して、感情意図ベクトル(0.5, 2, 1.5, 0)および言語属性ベクトル(0, 0, 0, 0, 0.5, 0)の第1セットと、目的言語感情テーブル113aの行1101,1102,1103,1106にあるスコア対象の第2セットとの間のスコア「8」、「3」、「0」、「8」を算出する。さらに、目的言語テーブル検索部114は、テキスト「A very beautiful flower is open.」に対して、感情意図ベクトル(0.5, 2, 1.5, 0)および言語属性ベクトル(0, 0, 2, 2, 2.3, 0)の第1セットと、目的言語感情テーブル113aの行1101,1102,1103,1106にあるスコア対象の第2セットとの間のスコア「11」、「3」、「6」、「2」を算出する。
翻訳制御部91は、このように算出されたスコアを取得すると、テキスト「A beautiful flower is open.」および「The flower is not beautiful.」の最小のスコアが「0」であって、テキスト「A very beautiful flower is open.」の最小のスコアが「2」であるため、テキスト「A very beautiful flower is open.」がテキスト「A beautiful flower is open.」および「The flower is not beautiful.」よりも下位になるようにこれらのテキストをソートする。また、原言語のテキスト「きれいな花が咲いてますね。」に対する目的言語のテキスト「A beautiful flower is open.」の類似度は、その原言語のテキストに対する目的言語のテキスト「The flower is not beautiful.」の類似度よりも大きいため、翻訳制御部91は、テキスト「A beautiful flower is open.」がテキスト「The flower is not beautiful.」よりも上位になるようにこれらのテキストをソートする。
翻訳制御部91は、図24に示すように、このようにソートされた結果にしたがって、上記各目的言語のテキストをディスプレイ203の翻訳結果欄1403に表示させる。
ここで、例えば、このようなディスプレイ203を見た話者は、感情意図ベクトルの要素「嫌悪」に対応する網掛けされた棒を伸ばし、その要素の値を「2」から「4」に変更する。その結果、ベクトル変更部118は、言語テーブル検索部108から出力された感情意図ベクトル(0.5, 2, 1.5, 0)を(0.5, 4, 1.5, 0)に変更して目的言語テーブル検索部114に出力する。
目的言語テーブル検索部114は、このように変更された感情意図ベクトルを取得すると、スコアを再計算する。例えば、目的言語テーブル検索部114は、テキスト「A beautiful flower is open.」に対して、感情意図ベクトル(0.5, 4, 1.5, 0)および言語属性ベクトル(0, 0, 1, 1, 1.3, 0)の第1セットと、目的言語感情テーブル113aの行1101,1102,1103,1106にあるスコア対象の第2セットとの間のスコア「6.5」、「2」、「5」、「3」を算出する。さらに、目的言語テーブル検索部114は、テキスト「The flower is not beautiful.」に対して、感情意図ベクトル(0.5, 4, 1.5, 0)および言語属性ベクトル(0, 0, 0, 0, 0.5, 0)の第1セットと、目的言語感情テーブル113aの行1101,1102,1103,1106にあるスコア対象の第2セットとの間のスコア「9.5」、「5」、「2」、「6」を算出する。さらに、目的言語テーブル検索部114は、テキスト「A very beautiful flower is open.」に対して、感情意図ベクトル(0.5, 4, 1.5, 0)および言語属性ベクトル(0, 0, 2, 2, 2.3, 0)の第1セットと、目的言語感情テーブル113aの行1101,1102,1103,1106にあるスコア対象の第2セットとの間のスコア「10」、「5」、「8」、「0」を算出する。
翻訳制御部91は、このように再び算出されたスコアを取得すると、テキスト「A very beautiful flower is open.」の最小のスコアが「0」であって、テキスト「A beautiful flower is open.」および「The flower is not beautiful.」の最小のスコアが「2」であるため、テキスト「A very beautiful flower is open.」がテキスト「A beautiful flower is open.」および「The flower is not beautiful.」よりも上位になるようにこれらのテキストをソートする。また、原言語のテキスト「きれいな花が咲いてますね。」に対する目的言語のテキスト「A beautiful flower is open.」の類似度は、その原言語のテキストに対する目的言語のテキスト「The flower is not beautiful.」の類似度よりも大きいため、翻訳制御部91は、テキスト「A beautiful flower is open.」がテキスト「The flower is not beautiful.」よりも上位になるようにこれらのテキストをソートする。
図26は、再計算されたスコアに基づいてディスプレイ203に表示される表示例を示す図である。
翻訳制御部91は、上述のように、感情意図ベクトルが変更されるとスコアを再計算し、目的言語の各テキストをそのスコアおよび類似度にしたがって再びソートする。そして、翻訳制御部91は、そのソート結果を翻訳結果欄1403に表示させる。即ち、ディスプレイ203は、テキスト「A very beautiful flower is open.」、「A beautiful flower is open.」、「The flower is not beautiful.」の順で、これらのテキストを表示する。その結果、感情意図ベクトルの変更前に最下位にあったテキスト「A very beautiful flower is open.」は、感情意図ベクトルの変更後には最上位に移動して表示される。
そして、そのテキスト「A very beautiful flower is open.」が選択されて音声合成されたときには、嫌味という複雑な感情および意図を含む目的言語の合成音声が出力される。
なお、例えば、感情意図ベクトルの要素「怒り」の値が大きくなるようにその感情意図ベクトルが変更されたときには、テキスト「The flower is not beautiful.」が最上位の位置に表示される。即ち、原言語のテキスト「きれいな花が咲いてますね。」に対して逆の意味を有する目的言語のテキストが、原言語音声に含まれる感情および意図を適切に伝えるテキストとして話者に提示される。
図27は、本変形例にかかる音声翻訳装置200aの動作を示すフローチャートである。
本変形例にかかる音声翻訳装置200aの動作は、上記実施の形態の図18に示す動作に対して、さらに、感情意図ベクトルの変更の指示があったか否かを判別するステップS117と、感情意図ベクトルを変更するステップS118とを含む。
即ち、目的言語テーブル検索部114はスコアを算出して(ステップS109)、翻訳制御部91はそのスコアおよび類似度にしたがって目的言語の各テキストをソートしてディスプレイ203に表示させる(ステップS110)。その後、ベクトル変更部118は、表示操作部117aから感情意図ベクトルの変更の指示があったか否か、即ち、話者がベクトル欄1402に表示されている網掛けされた棒を伸張して変更ボタン1408を選択したか否かを判別する(ステップS117)。ここで、変更の指示がなかったと判別したときには(ステップS117のNo)、ベクトル変更部118は感情意図ベクトルの変更を行なわず、翻訳制御部91は、テキストを選択して音声合成の開始を促す指示または音声合成の終了を促す指示をユーザから受け付ける(ステップS111)。
一方、変更の指示があったと判別したときには(ステップS117のYes)、ベクトル変更部118はその指示にしたがって感情意図ベクトルを変更する(ステップS118)。このように感情意図ベクトルが変更されると、目的言語テーブル検索部114は再びスコアを算出して(ステップS109)、翻訳制御部91はそのスコアおよび類似度にしたがって目的言語の各テキストをソートしてディスプレイ203に表示させる(ステップS110)。
このように本変形例では、例えば、原言語感情テーブル107aから検索された感情意図ベクトルの内容が、ユーザである話者の本来の感情や意図を適切に示していないような場合にも、その感情意図ベクトルがユーザの操作によって変更されるため、話者によって発話された原言語音声に含まれる話者の感情や意図を適切に特定することができる。つまり、ユーザである話者は、あらゆる感情や意図を、強調したり弱めたりすることにより、その話者から発話された原言語音声に自由に容易に設定することができ、翻訳の自由度を広げることができる。
(変形例3)
ここで、上記実施の形態における音声翻訳装置200の第2の変形例について説明する。
上記実施の形態では、目的言語の各テキストをスコアにしたがってソートし、スコアの等しいテキストがある場合には、それらのテキストの原言語に対する類似度にしたがって各テキストをソートした。
本変形例では、上述と同様、目的言語の各テキストをスコアにしたがってソートするが、スコアの等しいテキストがある場合には、それらのテキストの原言語に対する類似度と、言語属性ベクトルおよび音響特徴ベクトルの大きさとによって算出される評価値にしたがって各テキストをソートする。
例えば、評価値をSとし、原言語のテキストに対する目的言語のテキストの類似度をSimとし、言語属性ベクトルの大きさを|VL|とし、音響特徴ベクトルの大きさを|VA|とする。この場合、評価値は(式1)のように示される。
S=X×Sim+Y×|VL|+Z×|VA| ・・・(式1)
なお、(式1)において、Xは類似度の重みを示し、Yは言語属性ベクトルの重みを示し、Zは音響特徴ベクトルの重みを示す。さらに、重みX,Y,Zは、X+Y+Z=3と0≦X,Y,Z≦3の条件を満たす。
また、本変形例では、上述のような重みX,Y,Zを話者による操作にしたがって変更する。
図28は、本変形例にかかる音声翻訳装置の機能ブロック図である。
本変形例にかかる音声翻訳装置200bは、基本的に上記実施の形態の音声翻訳装置200と同様に構成されているが、表示操作部117の代わりに表示操作部117bを備え、翻訳部109の代わりに翻訳部109aを備え、目的言語テーブル検索部114の代わりに目的言語テーブル検索部114aを備えるとともに、ソート条件変更部119を備えている。
なお、本変形例では、目的言語テーブル検索部114aと翻訳部109aとソート条件変更部119とが検索特定手段として構成されている。
目的言語テーブル検索部114aは、翻訳部109aで生成された目的言語のテキストごとにスコアを算出すると、目的言語感情テーブル113aにおいてスコア対象の第2セットに含まれる言語属性ベクトルの大きさと、その第2セットに関連付けられている音響特徴ベクトルの大きさと、算出されたスコアとを翻訳部109aの翻訳制御部91に出力する。
表示操作部117bは、上述の重みX,Y,Zの変更の内容を示すとともに変更の実行を促す指示を話者から受け付けて、その指示をソート条件変更部119に出力する。そして、表示操作部117bは、翻訳部109aの翻訳制御部91によってソートされた順序で目的言語の各テキストを表示する。
ソート条件変更部119は、重みX,Y,Zの初期値をX=3、Y=0、およびZ=0とし、表示操作部117bからの指示に基づき、その重みX,Y,Zを変更する。
翻訳部109aの翻訳制御部91は、目的言語のテキストごとに、目的言語テーブル検索部114aから、そのテキストに対して算出されたスコアと、言語属性ベクトルの大きさと、音響特徴ベクトルの大きさとを取得する。
そしてこの翻訳制御部91は、目的言語テーブル検索部114aから取得したスコアにしたがって目的言語の各テキストをソートする。そして、スコアの等しいテキストがある場合には、翻訳制御部91は、上述の(式1)によって評価値を算出して、その評価値にしたがってそれらのテキストをソートする。
図29は、スコアと評価値とを示す図である。
例えば、目的言語テーブル検索部114aは、図29の(a)に示すように、穏やかな口調の原言語音声「きれいな花が咲いてますね。」に対する感情意図ベクトル( 2, 0, 0, 0)を原言語テーブル検索部108から取得するとともに、目的言語のテキスト「A beautiful flower is open.」に対する言語属性ベクトル( 0, 0, 1, 1, 1.3, 0)と、「A very beautiful flower is open.」に対する言語属性ベクトル( 0, 0, 2, 2, 2.3, 0)とを取得する。
ここで、目的言語テーブル検索部114aは、図29の(a)に示すように、テキスト「A beautiful flower is open.」に対して、感情意図ベクトル( 2, 0, 0, 0)および言語属性ベクトル( 0, 0, 1, 1, 1.3, 0)の第1セットと、目的言語感情テーブル113aの行1101,1107にあるスコア対象の第2セットとの間のスコア「0」、「3」を算出する。
そして、目的言語テーブル検索部114aは、そのスコア「0」および「3」を翻訳制御部91に出力する。さらに、目的言語テーブル検索部114aは、そのスコア「0」を算出するときに用いた目的言語感情テーブル113aの行1101にあるスコア対象の第2セット(感情意図ベクトル(2, 0, 0, 0)および言語属性ベクトル(0, 0, 1, 1, 1.3, 0))に含まれる言語属性ベクトル(0, 0, 1, 1, 1.3, 0)の大きさと、その第2セットに関連付けら得ている音響特徴ベクトル(2, 1, 1, 1, 1, 0)の大きさとを翻訳制御部91に出力する。さらに、目的言語テーブル検索部114aは、スコア「3」を算出するときに用いた目的言語感情テーブル113aの行1107にあるスコア対象の第2セット(感情意図ベクトル(2, 0, 0, 0)および言語属性ベクトル(0, 0, 2, 2, 2.3, 0))に含まれる言語属性ベクトル(0, 0, 2, 2, 2.3, 0)の大きさと、その第2セットに関連付けられている音響特徴ベクトル( 1, 0, 1, 1, 1, 0)の大きさとを翻訳制御部91に出力する。
また、目的言語テーブル検索部114aは、図29の(a)に示すように、テキスト「A very beautiful flower is open.」に対して、感情意図ベクトル(2, 0, 0, 0)および言語属性ベクトル(0, 0, 2, 2, 2.3, 0)の第1セットと、目的言語感情テーブル113aの行1101,1107にあるスコア対象の第2セットとの間のスコア「3」、「0」を算出する。
そして、目的言語テーブル検索部114aは、そのスコア「3」および「0」を翻訳制御部91に出力する。さらに、目的言語テーブル検索部114aは、そのスコア「3」を算出するときに用いた目的言語感情テーブル113aの行1101にあるスコア対象の第2セット(感情意図ベクトル(2, 0, 0, 0)および言語属性ベクトル(0, 0, 1, 1, 1.3, 0))に含まれる言語属性ベクトル(0, 0, 1, 1, 1.3, 0)の大きさと、その第2セットに関連付けられている音響特徴ベクトル(2, 1, 1, 1, 1, 0)の大きさとを翻訳制御部91に出力する。さらに、目的言語テーブル検索部114aは、スコア「0」を算出するときに用いた目的言語感情テーブル113aの行1107にあるスコア対象の第2セット(感情意図ベクトル(2, 0, 0, 0)および言語属性ベクトル( 0, 0, 2, 2, 2.3, 0))に含まれる言語属性ベクトル(0, 0, 2, 2, 2.3, 0)の大きさと、その第2セットに関連付けられている音響特徴ベクトル( 1, 0, 1, 1, 1, 0)の大きさとを翻訳制御部91に出力する。
翻訳制御部91は、上述のように算出されたスコアを取得すると、テキスト「A beautiful flower is open.」の最小のスコアとテキスト「A very beautiful flower is open.」の最小のスコアとが共に「0」であるため、(式1)に基づいて評価値を算出する。
翻訳制御部91は、ソート条件変更部119によって重みX,Y,Zが変更されていなければ、図29の(b)に示すように、X=3、Y=0、およびZ=0として、テキスト「A beautiful flower is open.」と「A very beautiful flower is open.」の評価値を算出する。
翻訳制御部91は、テキスト「A beautiful flower is open.」の評価値を算出するときには、そのテキストの最小のスコアが「0」であるため、目的言語テーブル検索部114aでそのスコア「0」を算出するときに使用された言語属性ベクトル(0, 0, 1, 1, 1.3, 0)の大きさと、その言語属性ベクトルに関連付けられている音響特徴ベクトル(2, 1, 1, 1, 1, 0)の大きさと、原言語に対する類似度「1.0」とを、上記(式1)に当てはめる。その結果、翻訳制御部91は、評価値S=3×1.0+0×(3.69)1/2+0×(8)1/2=3.0を算出する。
翻訳制御部91は、テキスト「A very beautiful flower is open.」の評価値を算出するときには、そのテキストの最小のスコアが「0」であるため、目的言語テーブル検索部114aでそのスコア「0」を算出するときに使用された言語属性ベクトル(0, 0, 2, 2, 2.3, 0)の大きさと、その言語属性ベクトルに関連付けられている音響特徴ベクトル(1, 0, 1, 1, 1, 0)の大きさと、原言語に対する類似度「0.7」とを、上記(式1)に当てはめる。その結果、翻訳制御部91は、評価値S=3×0.7+0×(13.29)1/2+0×(4)1/2=2.1を算出する。
ここで、例えば、ソート条件変更部119は、重みX,Y,Zを、図29の(b)に示すように、X=0、Y=3、およびZ=0に変更する。
このような場合、翻訳制御部91は、テキスト「A beautiful flower is open.」の評価値を算出するときには、そのテキストの最小のスコアが「0」であるため、目的言語テーブル検索部114aでそのスコア「0」を算出するときに使用された言語属性ベクトル(0, 0, 1, 1, 1.3, 0)の大きさと、その言語属性ベクトルに関連付けられている音響特徴ベクトル(2, 1, 1, 1, 1, 0)の大きさと、原言語に対する類似度「1.0」とを、上記(式1)に当てはめる。その結果、翻訳制御部91は、評価値S=0×1.0+3×(3.69)1/2+0×(8)1/2=5.76を算出する。
翻訳制御部91は、テキスト「A very beautiful flower is open.」の評価値を算出するときには、そのテキストの最小のスコアが「0」であるため、目的言語テーブル検索部114aでそのスコア「0」を算出するときに使用された言語属性ベクトル(0, 0, 2, 2, 2.3, 0)の大きさと、その言語属性ベクトルに関連付けられている音響特徴ベクトル(1, 0, 1, 1, 1, 0)の大きさと、原言語に対する類似度「0.7」とを、上記(式1)に当てはめる。その結果、翻訳制御部91は、評価値S=0×0.7+3×(13.29)1/2+0×(4)1/2=10.9を算出する。
さらに、例えば、ソート条件変更部119は、重みX,Y,Zを、図29の(b)に示すように、X=0、Y=0、およびZ=3に変更する。
このような場合、翻訳制御部91は、テキスト「A beautiful flower is open.」の評価値を算出するときには、そのテキストの最小のスコアが「0」であるため、目的言語テーブル検索部114aでそのスコア「0」を算出するときに使用された言語属性ベクトル(0, 0, 1, 1, 1.3, 0)の大きさと、その言語属性ベクトルに関連付けられている音響特徴ベクトル(2, 1, 1, 1, 1, 0)の大きさと、原言語に対する類似度「1.0」とを、上記(式1)に当てはめる。その結果、翻訳制御部91は、評価値S=0×1.0+0×(3.69)1/2+3×(8)1/2=8.48を算出する。
翻訳制御部91は、テキスト「A very beautiful flower is open.」の評価値を算出するときには、そのテキストの最小のスコアが「0」であるため、目的言語テーブル検索部114aでそのスコア「0」を算出するときに使用された言語属性ベクトル(0, 0, 2, 2, 2.3, 0)の大きさと、その言語属性ベクトルに関連付けられている音響特徴ベクトル(1, 0, 1, 1, 1, 0)の大きさと、原言語に対する類似度「0.7」とを、上記(式1)に当てはめる。その結果、翻訳制御部91は、評価値S=0×0.7+0×(13.29)1/2+3×(4)1/2=6を算出する。
図30は、表示操作部117bのディスプレイ203の重みが変更されていない場合における表示例を示す図である。
ディスプレイ203は、三角形のバランス表1409と、マーク1411と、変更ボタン1410とを表示させる。
マーク1411は、例えば話者によるマウス204のドラッグ・アンド・ドロップ操作によって、バランス表1409の各頂点に配置される。つまり、図30において、マーク1411がバランス表1409の下の頂点にあるときには、そのマーク1411は、類似度の重みXが「3」であって、言語表現すなわち言語属性ベクトルの重みYが「0」であって、音響的特徴すなわち音響特徴ベクトルの重みZが「0」であることを示す。また、マーク1411がバランス表1409の左上の頂点にあるときには、そのマーク1411は、類似度の重みXが「0」であって、言語表現すなわち言語属性ベクトルの重みYが「3」であって、音響的特徴すなわち音響特徴ベクトルの重みZが「0」であることを示す。さらに、マーク1411がバランス表1409の右上の頂点にあるときには、そのマーク1411は、類似度の重みXが「0」であって、言語表現すなわち言語属性ベクトルの重みYが「0」であって、音響的特徴すなわち音響特徴ベクトルの重みZが「3」であることを示す。言い換えれば、バランス表1409およびマーク1411は、原言語音声に含まれる感情および意図を目的言語音声で聴取者に伝えるにあたり、テキストの類似性と、言語表現と、音響的特徴とのうち何れに重みをおいてその感情および意図を目的言語音声に含めるかを示す。
このようなマーク1411は、初期状態においてバランス表1409の下の頂点に配置され、重みX,Y,ZがそれぞれX=3、Y=0,Z=0であって類似度に大きな重みをつけて評価値が算出されていることを示している。
また、翻訳制御部91は、図29の(b)に示すように、X=3、Y=0,Z=0に基づいて、テキスト「A beautiful flower is open.」の評価値S=3.0と、テキスト「A very beautiful flower is open.」の評価値S=2.1とを算出しているため、評価値の大きいテキスト「A beautiful flower is open.」がテキスト「A very beautiful flower is open.」よりも上位になるように、これらのテキストを翻訳結果欄1403に表示させている。
ここで、話者は、マウス204を操作することによりマーク1411をバランス表1409の左上の頂点に配置するとともに、変更ボタン1410を選択する。すなわち、ユーザは、マウス204の操作によりポインタ1405を変更ボタン1410上に配置してマウス204をクリックする。これにより、表示操作部117bは、重みX,Y,ZをそれぞれX=0、Y=3,Z=0に変更するようにソート条件変更部119に指示する。
その結果、ソート条件変更部119は、重みX,Y,ZをそれぞれX=0、Y=3,Z=0に変更して、それらの重みを翻訳制御部91に出力する。
翻訳制御部91は、ソート条件変更部119から変更された重みX,Y,Zを取得すると、その重みにしたがって、図29の(b)に示すように、テキスト「A beautiful flower is open.」の評価値S=5.76と、テキスト「A very beautiful flower is open.」の評価値S=10.9とを算出する。そして、翻訳制御部91は、評価値の大きいテキスト「A very beautiful flower is open.」がテキスト「A beautiful flower is open.」よりも上位になるように、これらのテキストをソートする。
図31は、表示操作部117bのディスプレイ203の重みが変更された場合における表示例を示す図である。
上述のように、マーク1411は、話者によるマウス204の操作によって、バランス表1409の左上に配置されて表示されている。そして、翻訳制御部91によるソートによって、ディスプレイ203の翻訳結果欄1403には、テキスト「A very beautiful flower is open.」が上位となり、テキスト「A beautiful flower is open.」が下位となるように、これらのテキストが表示される。
ここで、話者は、マウス204を操作することによりマーク1411をバランス表1409の右上の頂点に配置するとともに、変更ボタン1410を選択する。すなわち、ユーザは、マウス204の操作によりポインタ1405を変更ボタン1410上に配置してマウス204をクリックする。これにより、表示操作部117bは、重みX,Y,ZをそれぞれX=0、Y=0,Z=3に変更するようにソート条件変更部119に指示する。
その結果、ソート条件変更部119は、重みX,Y,ZをそれぞれX=0、Y=0,Z=3に変更して、それらの重みを翻訳制御部91に出力する。
翻訳制御部91は、ソート条件変更部119から変更された重みX,Y,Zを取得すると、その重みにしたがって、図29の(b)に示すように、テキスト「A beautiful flower is open.」の評価値S=8.48と、テキスト「A very beautiful flower is open.」の評価値S=6とを算出する。そして、翻訳制御部91は、評価値の大きいテキスト「A beautiful flower is open.」がテキスト「A very beautiful flower is open.」よりも上位になるように、これらのテキストをソートする。
図32は、表示操作部117bのディスプレイ203の重みが変更された場合における他の表示例を示す図である。
上述のように、マーク1411は、話者によるマウス204の操作によって、バランス表1409の右上に配置されて表示されている。そして、翻訳制御部91によるソートによって、ディスプレイ203の翻訳結果欄1403には、テキスト「A beautiful flower is open.」が上位となり、テキスト「A very beautiful flower is open.」が下位となるように、これらのテキストが表示される。
図33は、本変形例にかかる音声翻訳装置200bの動作を示すフローチャートである。
本変形例にかかる音声翻訳装置200bの動作は、上記実施の形態の図18に示す動作に対して、さらに、重みの変更の指示があったか否かを判別するステップS119と、重みを変更するステップS120とを含む。
即ち、目的言語属性計算部112によって目的言語のテキストの言語属性ベクトルが生成されると(ステップS108)、目的言語テーブル検索部114aは目的言語のテキストごとにスコアと言語属性ベクトルおよび音響特徴ベクトルの大きさとを算出する(ステップS109a)。さらに、翻訳制御部91は、スコアが等しいテキストがあれば評価値を算出し、そのスコアおよび評価値にしたがって目的言語の各テキストをソートしてディスプレイ203に表示させる(ステップS110a)。その後、ソート条件変更部119は、表示操作部117bから重みの変更の指示があったか否か、即ち、話者がマーク1411を移動させて変更ボタン1410を選択したか否かを判別する(ステップS119)。
ここで、変更の指示がなかったと判別したときには(ステップS119のNo)、ソート条件変更部119は重みX,Y,Zの変更を行なわず、翻訳制御部91は、テキストを選択して音声合成の開始を促す指示または音声合成の終了を促す指示をユーザから受け付ける(ステップS111)。
一方、変更の指示があったと判別したときには(ステップS119のYes)、ソート条件変更部119はその指示にしたがって重みX,Y,Zを変更する(ステップS120)。このように重みが変更されると、翻訳制御部91は、その変更された重みを用いて再び評価値を算出して、スコアおよびその評価値にしたがって目的言語の各テキストをソートしてディスプレイ203に表示させる(ステップS110a)。
このように本変形例では、原言語音声に含まれる感情および意図を目的言語音声で表現するにあたって、目的言語音声の言語属性による表現の度合いと音響的特徴による表現の度合いとのバランスを、ユーザである話者の操作によって自由に変更することができ、翻訳の自由度を広げることができる。
以上、本発明の音声翻訳装置について実施の形態およびその変形例を用いて説明したが、本発明はこれらに限定されるものではない。
例えば、実施の形態および変形例では、原言語属性辞書104aおよび目的言語属性辞書110a,110bの言語属性ベクトルの要素を、感情や意図に関するものとしたが、性別に関するもの(つまり、男性的語彙や女性的語彙)や、年齢に関するもの(言葉づかいによる推定年齢層)、方言などの地方に関する情報など、発話者の個人性に関するものとしてもよい。同じく、音響特徴ベクトルの要素を、音声の特徴から抽出できる性別に関する情報(例えば男性の声や女性の声)、年齢に関するもの(声から推定される年齢層)など、話者の個人性に関するものとしてもよい。さらに、言語属性ベクトルや音響特徴ベクトルに、上述のような要素を追加したときには、その要素に対応する要素を感情意図ベクトルの要素に追加してもよい。
また、実施の形態および変形例では、ユーザが翻訳結果欄1403のリストから所望の翻訳結果を選択して音声合成するようにしたが、最もスコアの高いものを自動的に音声合成するようにしてもよい。