特許第6235280号(P6235280)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社東芝の特許一覧

特許6235280音声同時処理装置、方法およびプログラム
<>
  • 特許6235280-音声同時処理装置、方法およびプログラム 図000002
  • 特許6235280-音声同時処理装置、方法およびプログラム 図000003
  • 特許6235280-音声同時処理装置、方法およびプログラム 図000004
  • 特許6235280-音声同時処理装置、方法およびプログラム 図000005
  • 特許6235280-音声同時処理装置、方法およびプログラム 図000006
  • 特許6235280-音声同時処理装置、方法およびプログラム 図000007
  • 特許6235280-音声同時処理装置、方法およびプログラム 図000008
  • 特許6235280-音声同時処理装置、方法およびプログラム 図000009
  • 特許6235280-音声同時処理装置、方法およびプログラム 図000010
  • 特許6235280-音声同時処理装置、方法およびプログラム 図000011
  • 特許6235280-音声同時処理装置、方法およびプログラム 図000012
  • 特許6235280-音声同時処理装置、方法およびプログラム 図000013
  • 特許6235280-音声同時処理装置、方法およびプログラム 図000014
  • 特許6235280-音声同時処理装置、方法およびプログラム 図000015
  • 特許6235280-音声同時処理装置、方法およびプログラム 図000016
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6235280
(24)【登録日】2017年11月2日
(45)【発行日】2017年11月22日
(54)【発明の名称】音声同時処理装置、方法およびプログラム
(51)【国際特許分類】
   G10L 15/08 20060101AFI20171113BHJP
   G10L 15/10 20060101ALI20171113BHJP
   G10L 15/00 20130101ALI20171113BHJP
【FI】
   G10L15/08 200Z
   G10L15/10 400M
   G10L15/00 200C
【請求項の数】10
【全頁数】14
(21)【出願番号】特願2013-194639(P2013-194639)
(22)【出願日】2013年9月19日
(65)【公開番号】特開2015-60127(P2015-60127A)
(43)【公開日】2015年3月30日
【審査請求日】2016年3月16日
(73)【特許権者】
【識別番号】000003078
【氏名又は名称】株式会社東芝
(74)【代理人】
【識別番号】100108855
【弁理士】
【氏名又は名称】蔵田 昌俊
(74)【代理人】
【識別番号】100109830
【弁理士】
【氏名又は名称】福原 淑弘
(74)【代理人】
【識別番号】100088683
【弁理士】
【氏名又は名称】中村 誠
(74)【代理人】
【識別番号】100103034
【弁理士】
【氏名又は名称】野河 信久
(74)【代理人】
【識別番号】100075672
【弁理士】
【氏名又は名称】峰 隆司
(74)【代理人】
【識別番号】100153051
【弁理士】
【氏名又は名称】河野 直樹
(74)【代理人】
【識別番号】100140176
【弁理士】
【氏名又は名称】砂川 克
(74)【代理人】
【識別番号】100158805
【弁理士】
【氏名又は名称】井関 守三
(74)【代理人】
【識別番号】100172580
【弁理士】
【氏名又は名称】赤穂 隆雄
(74)【代理人】
【識別番号】100179062
【弁理士】
【氏名又は名称】井上 正
(74)【代理人】
【識別番号】100124394
【弁理士】
【氏名又は名称】佐藤 立志
(74)【代理人】
【識別番号】100112807
【弁理士】
【氏名又は名称】岡田 貴志
(74)【代理人】
【識別番号】100111073
【弁理士】
【氏名又は名称】堀内 美保子
(72)【発明者】
【氏名】釜谷 聡史
(72)【発明者】
【氏名】坂本 明子
【審査官】 菊池 智紀
(56)【参考文献】
【文献】 特開2009−058671(JP,A)
【文献】 特開2007−079122(JP,A)
【文献】 特開2001−242884(JP,A)
【文献】 国際公開第2011/033834(WO,A1)
【文献】 釜谷聡史 他,"対面業務の外国語会話を支援する同時通訳システム",東芝レビュー,2013年 9月 1日,Vol.68,No.9,pp.18-21
(58)【調査した分野】(Int.Cl.,DB名)
G10L 15/00−15/34
G06F 17/27−17/28
(57)【特許請求の範囲】
【請求項1】
音声信号を取得する取得部と、
前記音声信号のうち音声認識処理を完了して文字列に変換された音声区間に対応する文字列である確定文字列と、該確定文字列に続く音声区間であって音声認識の処理途上にあり、変換結果である文字列が確定していない音声区間に対応する複数の候補文字列とを生成する音声認識部と、
前記確定文字列と複数の前記候補文字列とをそれぞれ連結した複数の組合せ文字列に対し、自然言語処理における処理単位の開始位置となる形態素の位置を示す分割点により組合せ文字列を分割した際に、前記組合せ文字列における先頭から最初の分割点までの文字列のそれぞれ前記確定文字列と一致する場合、該文字列を処理単位文字列として検出する検出部と、
前記処理単位文字列を出力する出力部と、を具備することを特徴とする音声同時処理装置。
【請求項2】
新たに取得した第1処理単位文字列と以前に取得された第2処理単位文字列との関係により、前記分割点の位置が変化する場合、前記第2処理単位文字列を更新する更新部をさらに具備することを特徴とする請求項1に記載の音声同時処理装置。
【請求項3】
前記処理単位文字列と、該処理単位文字列が発話された音声区間に対応する音声信号の時間情報とを対応付けて処理単位情報として記憶する記憶部と、
前記記憶部に新たな処理単位情報である第1処理単位情報が追加された場合に、該第1処理単位情報に先行しかつ閾値以内の時間で連続して発話された音声区間に対応する第2処理単位情報が存在する場合、該第2処理単位情報と前記第1処理単位情報とに含まれる処理単位文字列を時系列順に連結して再処理単位文字列を生成し、該再処理単位文字列および該再処理単位文字列に対応する時間情報で前記記憶部に記憶される処理単位情報を更新する更新部と、をさらに具備することを特徴とする請求項1に記載の音声同時処理装置。
【請求項4】
前記音声認識部は、前記処理単位文字列が発話された時間に関する時間情報を取得し、
前記更新部は、前記時間情報を参照して、前記第2処理単位情報が存在するかどうかを判定することを特徴とする請求項3に記載の音声同時処理装置。
【請求項5】
前記音声認識部は、話者の話す速度である話速を取得し、
前記更新部は、前記話速を参照して、前記第2処理単位情報が存在するかどうかを判定することを特徴とする請求項3に記載の音声同時処理装置。
【請求項6】
前記自然言語処理が機械翻訳の場合、前記処理単位は、前記音声信号を同時並行して訳出するのに適する翻訳単位であることを特徴とする請求項1から請求項5のいずれか1項に記載の音声同時処理装置。
【請求項7】
前記自然言語処理が音声対話の場合、前記処理単位は、前記音声信号を同時並行して音声対話のタスクとして出力される単位であることを特徴とする請求項1から請求項5のいずれか1項に記載の音声同時処理装置。
【請求項8】
音声信号を取得し、
前記音声信号のうち音声認識処理を完了して文字列に変換された音声区間に対応する文字列である確定文字列と、該確定文字列に続く音声区間であって音声認識の処理途上にあり、変換結果である文字列が確定していない音声区間に対応する複数の候補文字列とを生成し、
前記確定文字列と複数の前記候補文字列とをそれぞれ連結した複数の組合せ文字列に対し、自然言語処理における処理単位の開始位置となる形態素の位置を示す分割点により組合せ文字列を分割した際に、前記組合せ文字列における先頭から最初の分割点までの文字列のそれぞれ前記確定文字列と一致する場合、該文字列を処理単位文字列として検出し、
前記処理単位文字列を出力することを特徴とする音声同時処理方法。
【請求項9】
コンピュータを、
音声信号を取得する取得手段と、
前記音声信号のうち音声認識処理を完了して文字列に変換された音声区間に対応する文字列である確定文字列と、該確定文字列に続く音声区間であって音声認識の処理途上にあり、変換結果である文字列が確定していない音声区間に対応する複数の候補文字列とを生成する音声認識手段と、
前記確定文字列と複数の前記候補文字列とをそれぞれ連結した複数の組合せ文字列に対し、自然言語処理における処理単位の開始位置となる形態素の位置を示す分割点により組合せ文字列を分割した際に、前記組合せ文字列における先頭から最初の分割点までの文字列のそれぞれ前記確定文字列と一致する場合、該文字列を処理単位文字列として検出する検出手段と、
前記処理単位文字列を出力する出力手段として機能させるための音声同時処理プログラム。
【請求項10】
音声信号を取得する取得部と、
前記音声信号のうち音声認識処理を完了して文字列に変換された音声区間に対応する文字列である確定文字列と、該確定文字列に続く音声区間であって音声認識の処理途上にあり、変換結果である文字列が確定していない音声区間に対応する候補文字列とを生成する音声認識部と、
前記確定文字列と前記候補文字列とを連結した組合せ文字列に対し、自然言語処理における処理単位の開始位置となる形態素の位置を示す分割点により該組合せ文字列を分割した際に、該組合せ文字列における先頭から最初の分割点までの文字列が前記確定文字列と一致する場合、該文字列を処理単位文字列として検出する検出部と、
前記処理単位文字列を出力する出力部と、を具備することを特徴とする音声同時処理装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施形態は、音声同時処理装置、方法およびプログラムに関する。
【背景技術】
【0002】
近年、音声処理技術の高度化に伴い、人の発話を受け付けて動作する様々なサービス、例えば、音声コマンド、音声検索および音声対話などのシステムが利用されている。人の発話、すなわち、話し言葉には、書き言葉に含まれる句読点のような明確な区切りがなく、上述したようなサービスを提供するには、受け付けた発話を、そのサービスに適した単位に分割する必要がある。サービスに適した処理単位に分割する手法としては、無音区間であるポーズを含む発話を、処理単位に分割する手法がある。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2009−58671号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかし、上述の手法では、話者や話し方によって変化の大きいポーズを発話の区切り情報として用いているため、適切な処理単位を検出できない場合がある。例えば、予め決められた長さのポーズ長で区切られた音声区間における音声認識結果の文字列を処理単位へ分割する場合、事前に与えておくべき適切なポーズ長は話者によって異なり、さらに同じ話者であっても常に一定のポーズ長とは限らないので、適切な処理単位を検出できない。
【0005】
また、ポーズ長の閾値を大きくすると、処理単位を確定するまでの時間が増加するため、元発話に対する後続処理の同時性が低下してしまう。一方、ポーズ長の閾値を小さくすると、同時性は向上するが、ポーズによって区切られる単位が増加するため、細切れの処理単位が検出されることになり、後続する処理の精度が低下してしまう。
【0006】
本発明は、上述した課題を解決するためになされたものであり、発話音声の認識結果を適切な処理単位に分割することができる音声同時処理装置、方法、およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【0007】
本発明の一実施形態に係る音声同時処理装置は、取得部と、音声認識部と、検出部と、出力部とを含む。取得部は、音声信号を取得する。音声認識部は、前記音声信号のうち音声認識処理を完了して文字列に変換された音声区間に対応する文字列である確定文字列と、該確定文字列に続く音声区間であって音声認識の処理途上にあり、変換結果である文字列が確定していない音声区間に対応する1以上の候補文字列とを生成する。検出部は、前記確定文字列と1以上の前記候補文字列とをそれぞれ連結した1以上の組合せ文字列に対し、自然言語処理における処理単位の開始位置となる形態素の位置を示す分割点により該組合せ文字列を分割した際に、前記組合せ文字列のそれぞれに共通して前記確定文字列に含まれる文字列が存在する場合、該文字列を処理単位文字列として検出する。出力部は、前記処理単位文字列を出力する。
【図面の簡単な説明】
【0008】
図1】第1の実施形態に係る音声同時処理装置を示すブロック図。
図2】第1の実施形態に係る音声同時処理装置の動作を示すフローチャート。
図3】認識結果記憶部に記憶される確定文字列と候補文字列との第1例を示す図。
図4】組合せ文字列の分割点の検出結果の第1例を示す図。
図5】第1の実施形態における処理単位記憶部に記憶される処理単位文字列を示す図。
図6】認識結果記憶部に記憶される確定文字列と候補文字列との第2例を示す図。
図7】組合せ文字列の分割点の検出結果の第2例を示す図。
図8】第2の実施形態に係る音声同時処理装置を示すブロック図。
図9】第2の実施形態に係る音声同時処理装置の動作を示すフローチャート。
図10】第2の実施形態に係る処理単位記憶部に記憶される処理単位情報の第1例を示す図。
図11】再処理単位文字列の分割点を検出した結果を示す図。
図12】処理単位記憶部に記憶される処理単位情報の第2例を示す図。
図13】処理単位記憶部に記憶される処理単位情報の第3例を示す図。
図14】再処理単位文字列の分割点を検出した結果を示す図。
図15】更新された処理単位情報の一例を示す図。
【発明を実施するための形態】
【0009】
以下、図面を参照しながら本開示の一実施形態に係る音声同時処理装置、方法およびプログラムについて詳細に説明する。なお、以下の実施形態では、同一の番号を付した部分については同様の動作を行なうものとして、重ねての説明を省略する。
(第1の実施形態)
第1の実施形態に係る音声同時処理装置について図1のブロック図を参照して説明する。
本実施形態に係る音声同時処理装置100は、取得部101、音声認識部102、認識結果記憶部103、検出部104、処理単位記憶部105および出力部106を含む。
【0010】
取得部101は、話者が発する音声を音声信号として取得する。音声信号は、例えば、マイクロフォンを通して集音し、これをアナログおよびデジタル変換器(A/D変換器)により処理することで得ることができる。また、予め記録媒体などに録音された音声を、再生デバイスなどにより記録媒体を読み込んで再生することで音声信号として取得してもよい。
【0011】
音声認識部102は、取得部101から音声信号を受け取り、音声信号に対して音声認識処理を行い、音声信号をテキスト文字列に変換する。音声認識処理は、例えば、隠れマルコフモデル(Hidden Markov Model:HMM)を利用するなど、一般的な方法で行えばよいのでここでの詳細な説明は省略する。また、音声認識部102は、音声認識処理を完了して文字列に変換された音声区間に対応する文字列である確定文字列と、該確定文字列に続く音声区間であって音声認識の処理途上にあり、変換結果である文字列が確定していない音声区間に対応する1以上の候補文字列と、を生成する。
【0012】
確定文字列および候補文字列の生成方法は、例えば、音声信号における一定の無音期間(ポーズ)を区切りとして生成すればよい。すなわち、ポーズよりも時間的に前の区間の音声に対応する、1以上の候補が決定された状態における最尤の文字列を確定文字列とし、ポーズよりも後の区間の音声に対応する1以上の文字列を候補文字列とすればよい。以下、候補文字列の集合を候補文字列集合と呼ぶ。
なお、確定文字列は、確定した音声区間に対する最尤の文字列のみでもよいし、確定した音声区間に対応する他の候補を含む形式、例えば文字列ラティス形式で生成してもよい。同様に、候補文字列集合も1つの候補文字列ごとに区別して生成してもよいし、文字列ラティス形式で出力してもよい。
また、確定文字列および候補文字列の生成方法の別例としては、音声認識処理中の音声に相当する文字列候補が予め決められた単語数に達した位置をポーズの代わりに用いたり、文字列候補の生成確率が一定の閾値を超える位置をポーズの代わりに用いることで、確定文字列および候補文字列を生成してもよい。
【0013】
認識結果記憶部103は、音声認識部102から確定文字列および1以上の候補文字列を受け取り、それぞれ対応付けて記憶する。なお、本実施形態では、確定文字列および候補文字列は、単語情報が付属しない平文を想定しているが、音声認識部102の音声認識処理結果として、単語ごとに区切れた系列を記憶してもよい。
【0014】
検出部104は、認識結果記憶部103から確定文字列および候補文字列集合を取得する。検出部104は、確定文字列と候補文字列集合に含まれるそれぞれの候補文字列とを連結して1以上の組合せ文字列を得る。検出部104は、それぞれの組合せ文字列を解析し、後続の自然言語処理の処理単位の開始位置となり得る形態素の位置で、組合せ文字列を部分文字列に分割する位置を示す分割点を1以上検出する。検出部104は、分割点により組合せ文字列を分割した際に、それぞれの組合せ文字列に共通して確定文字列に含まれる文字列が存在する場合、確定文字列に含まれる文字列を処理単位文字列として検出する。なお、それぞれの組合せ文字列の集合を、組合せ文字列集合とも呼ぶ。
【0015】
ここで、処理単位とは、音声同時処理装置100に接続される他のデバイスの動作に最適な文字列を示し、例えば、機械翻訳装置に接続する場合には、機械翻訳装置に入力された音声を同時並行的に訳出し、最良の翻訳結果が得られるような翻訳単位である。また、発話への高い追随性を要求される同時翻訳などの音声対話の場合には、翻訳結果の品質に加え、発話からの遅延時間を変数として、最適な通訳精度と通訳時間とを実現する単位として、音声を同時並行的に音声対話のタスクとして処理する単位が相当する。
また、検出部104では、処理単位となる分割点を、例えば、条件付き確率場(Conditioning Random Field)を用いて確率的に推定することができる。機械学習では、理想的な処理単位の情報が付与された学習データ(コーパス)を用いて分割点を学習してもよいし、あるいは、理想的な処理単位の情報が付与されていないデータにおいて、本実施形態に係る音声同時処理装置に接続する装置が理想的に動作する確率を最大化するような分割点を学習するようにしてもよい。
機械学習手法は、本実施の形態で説明した条件付き確率場の他にも、HMM、サポートベクターマシン(Support Vector Machine:SVM)といったその他のモデルを用いて分割点を推定してもよく、上述の実現形態に限るものではない。また、統計的に分割点を検出する方法以外にも、例えば、形態素系列におけるパターンマッチングによる手法や、構文情報を用いた手法などを適用することができる。
【0016】
処理単位記憶部105は、検出部104から処理単位文字列を受け取って記憶する。
出力部106は、認識結果記憶部103から確定文字列および候補文字列を、処理単位記憶部105から処理単位文字列をそれぞれ受け取り、外部へ出力する。外部への出力は、処理単位文字列が生成されるごとに出力してもよいし、ある程度処理単位文字列が蓄積されてからまとめて出力するようにしてもよい。なお、LCD(Liquid crystal display)やOLED(organic light emitting diode)ディスプレイのような表示デバイスや、プリンタデバイス、スピーカなどの音声デバイス、ハードディスクドライブなどの記憶媒体への記憶デバイスを含んでもよい。
【0017】
次に、第1の実施形態に係る音声同時処理装置100の動作について図2のフローチャートを参照して説明する。
ステップS201では、音声認識部102が、取得部101で取得した音声に対して音声認識処理を行ない、確定文字列と候補文字列集合とを得る。
ステップS202では、検出部104が、確定文字列と候補文字列集合に含まれるそれぞれの候補文字列とを連結して組合せ文字列を生成し、組合せ文字列を要素する組合せ文字列集合を得る。ここでは、候補文字列の数に対応する組合せ文字列が生成されることになる。
【0018】
ステップS203では、検出部104が、それぞれの組合せ文字列について分割点により分割した際に、それぞれの組合せ文字列に共通して確定文字列に含まれる文字列が存在するような分割点が存在するかどうかを判定する。それぞれの組合せ文字列に共通して確定文字列に含まれる文字列が存在するような分割点があればステップS204に進み、それぞれの組合せ文字列に共通して確定文字列に含まれる文字列が存在するような分割点がなければ、処理を終了する。
【0019】
ステップS204では、処理単位記憶部105が、確定文字列に含まれる文字列を処理単位文字列として記憶する。
【0020】
ステップS205では、出力部106が、処理単位記憶部105を参照して、未出力の処理単位文字列を外部へ出力する。以上で、第1の実施形態に係る音声同時処理装置100の動作を終了する。
【0021】
次に、第1の実施形態に係る音声同時処理装置100の動作の具体例について図3から図5までを参照して説明する。ここでは、音声同時処理装置100に、日本語から英語へ翻訳を行なう機械翻訳装置が接続される例を示す。
【0022】
ここでは、話者が「千葉市内で(V)ホテルを予約し(V)たいんですが良いホテルを見つけて(V)もらえませんか」という内容を連続的に発話し、音声同時処理装置100がこの発話を取得する状況を想定する。記号(V)は、音声同時処理装置100が無音区間(ポーズ)として認識する位置を示す。
【0023】
始めに、「千葉市内で(V)」と発話した場合について、音声認識部102が音声認識処理して確定文字列と1以上の候補文字列とを生成する。認識結果記憶部103に記憶される確定文字列と候補文字列とについて、図3を参照して説明する。
認識結果記憶部103には、確定文字列301と1以上の候補文字列302とが対応付けられて記憶される。ここでは、確定文字列301「千葉市内で」に対して、候補文字列302「火照るん」、「ホテルの」、「掘っているん」、「補填の」がそれぞれ対応付けられる。確定文字列301とそれぞれの候補文字列302とを連結することで、組合せ文字列を得ることができる。すなわち、組合せ文字列として、「千葉市内で火照るん」、「千葉市内のホテルで」、「千葉市内で掘っているん」および「千葉市内で補填の」が得られ、これら4つの組合せ文字列の集合が組合せ文字列集合となる。
【0024】
次に、検出部104が、それぞれの組合せ文字列を解析して分割点を検出する。分割点の検出結果について図4を参照して説明する。
図4は、条件付き確率場を用いて、組合せ文字列401に含まれる形態素に、処理単位への分割点の候補位置を示すラベル402を付与した例を示す。「B」は、処理単位の開始位置となる形態素の位置を示し、「I」は、処理単位の途中にある形態素の位置を示す。
【0025】
例えば、組合せ文字列401「千葉市内で火照るん」について、ラベル402の「B」の分割点の位置で部分文字列に分割することができるので、「千葉市内で」と「火照るん」との文字列に分割できることがわかる。同様に、組合せ文字列「千葉市内でホテルの」についても、ラベル402「B」の分割点の位置で「千葉市内で」と「ホテルの」に分割することができる。
【0026】
ここで、検出部104は、それぞれの組合せ文字列401に共通して確定文字列に含まれる文字列が存在するような分割点を検出する。図4の例では、分割点のうち、それぞれの組合せ文字列401に共通した確定文字列に含まれる文字列が存在するようにラベル402「B」で分割できる。すなわち、確定文字列である「千葉市内で」が存在するので、「千葉市内で」を処理単位文字列として検出する。
【0027】
検出部104で得られた処理単位文字列を処理単位記憶部105に記憶する一例を図5に示す。図5に示すように、処理単位文字列501「千葉市内で」が記憶される。その後、出力部106が、処理単位文字列「千葉市内で」を外部に出力する。
【0028】
続いて発話が進み、取得部101が「ホテルを予約し(V)」の発話を取得し、音声認識部102の処理により、確定文字列と候補文字列集合と得た処理結果を図6に示す。
ここでは、確定文字列601「ホテルの予約をし」と、確定文字列601に対応する1以上の候補文字列602が得られた場合を想定する。図6に示すように、候補文字列602としては、「たいん」、「退院」、「タイの」および「たインド」が得られる。
【0029】
次に、検出部104が、図6に示す確定文字列とそれぞれの候補文字列とを連結して組合せ文字列を生成し、それぞれの組合せ文字列について分割点を検出した結果を図7に示す。
図7に示すように、組合せ文字列701「ホテルの予約をしたいん」は、ラベル702「B」に対応する分割点が先頭の「ホテル」以外存在しないので、部分文字列に分割できない。一方、組合せ文字列701「ホテルの予約をし退院」は、ラベル702「B」に対応する分割点が先頭以外に存在するので、「ホテルの予約をし」と「退院」との文字列に分割できる。そのほか、候補文字列の先頭の文字列部分に該当するラベル702は、文字列「タイの」がラベル702「B」、文字列「たインド」がラベル702「I」として得られる。
この場合、全ての組合せ文字列701に共通し、かつ分割点で分割した結果が確定文字列に含まれるような文字列、つまり、それぞれの組合せ文字列でラベル702が「B」で共通する分割点が存在しない。よって、新たな処理単位文字列は生成されず、処理単位記憶部105には追加されない。
【0030】
従来の発話中のポーズを手掛かりとする手法を用いた場合は、「ホテルの予約をし(V)」という発話に対応する「ホテルの予約をし」の部分が処理単位として検出されるので、後続する「たいんですがどこに行けば」が別の処理単位として、分けられて処理されてしまう。これは、分割された文字列が機械翻訳装置の処理単位として用いられた場合、翻訳結果として“I book a hotel”と “I want, but where should I go”のように分かれてしまうことを示し、元の発話が持つ意図が正しく反映されない。
一方、第1の実施形態に係る音声同時処理装置では、発話の文脈を解析して処理単位を検出するため、元の発話が有する意図が正しく反映されない処理単位の出力を抑制することができる。
【0031】
すなわち、第1の実施形態によれば、発話音声の認識結果を適切な処理単位に分割することができ、例えば機械翻訳装置と接続される場合、処理単位文字列ごとに適切な翻訳をおこなうことができるので、発話を途中であっても追随して漸進的に出力することができる。
【0032】
(第2の実施形態)
第2の実施形態では、発話の状況に応じて処理単位文字列に関する情報を更新する点が第1の実施形態と異なる。このようにすることで、後続する音声の認識結果によって適切な処理単位が変わってしまう場合でも、元の発話が持つ意図が正しく反映された処理単位を出力できる。
【0033】
第2の実施形態に係る音声同時処理装置のブロック図について図8を参照して説明する。
第2の実施形態に係る音声同時処理装置800は、取得部101、認識結果記憶部103、検出部104、出力部106、音声認識部801、処理単位記憶部802および更新部803を含む。
取得部101、認識結果記憶部103、検出部104および出力部106については、第1の実施形態と同様の動作を行なうのでここでの説明は省略する。
【0034】
音声認識部801は、第1の実施形態に係る音声認識部102と同様の処理を行なうが、音声が発話された時刻に関する時間情報と、音声を発話した話者の話す速度(以下、話速という)とを取得する点が異なる。
【0035】
処理単位記憶部802は、第1の実施形態に係る処理単位記憶部105と同様の処理を行なうが、処理単位文字列と、処理単位文字列を検出した区間に対応する音声の時間情報と対応づけて、処理単位情報として記憶する点が異なる。
【0036】
更新部803は、処理単位記憶部802に記憶される処理単位情報を参照し、新たな処理単位情報が処理単位記憶部802に追加された場合、追加された処理単位情報に時間的に先行して、予め設定した時間内に連続して発話された音声区間に対応する処理単位情報であるかどうかを判定する。この判定は、音声認識部801から時間情報および話速の少なくともどちらか1つを受け取り、受け取った情報を参照して判定してもよい。
さらに、更新部803は、追加された処理単位情報に先行して、予め設定した時間内に連続して発話された音声区間に対応する処理単位情報が存在する場合、対応する処理単位情報に含まれる処理単位文字列を時系列順に連結して、再処理単位文字列を生成する。さらに、再処理単位文字列の分割点と処理単位記憶部802に記憶された処理単位文字列の分割点とが異なる場合、連結された以前の処理単位情報に含まれる処理単位文字列と時間情報とを、再処理単位文字列と再処理単位文字列に対応する時間情報とに置き換える。
【0037】
連続して発話された音声区間を決定する際に用いる閾値は、例えば時間情報を参照する場合は、先行する処理単位情報に対応する音声の終了時刻と、後続する処理単位情報に対応する音声の開始時刻との差に基づいて設定してもよい。また、評価対象となる連続した処理単位情報の時間長の和に基づいて設定してもよい。
【0038】
なお、話速を参照する場合は、1以上の話者の話速の統計値により、ポーズの長さの閾値を決定してもよいし、話者ごとの話速を予め取得し、話者ごとに閾値を設定してもよい。また、閾値は、事前に設定した値でもよいし、発話の状況に応じて動的に設定してもよい。
【0039】
次に、第2の実施形態に係る音声同時処理装置800の動作について図9のフローチャートを参照して説明する。
ステップS201からステップS203まで、およびステップS205の処理については、第1の実施形態に係る音声同時処理装置100の動作と同様であるので説明を省略する。
【0040】
ステップS901では、処理単位記憶部802が、処理単位文字列と処理単位文字列に対応する音声区間の時間情報とを対応付けて、処理単位情報として記憶する。
ステップS902では、更新部803が、未出力の処理単位情報が存在するかどうかを判定する。未出力の処理単位情報が存在する場合は、ステップS903へ進み、未出力の処理単位情報が存在しない場合は、ステップS205に進む。
ステップS903では、予め設定した時間内に連続して発話された処理単位文字列が複数あれば、複数の処理単位文字列を時系列順に沿って連結し、再処理単位文字列を生成する。
【0041】
ステップS904では、更新部803が、再処理単位文字列について、分割点を検出する。分割点の検出の方法は、検出部104における分割点を算出する方法と同様の方法を用いればよい。
ステップS905では、更新部803が、再処理単位文字列について、処理単位記憶部802に記憶される処理単位文字列の分割点と異なる分割点を検出したかどうかを判定する。異なる分割点を検出した場合はステップS906に進み、異なる分割点を検出しない場合はステップS205に進む。
ステップS906では、更新部803が、処理単位記憶部802に記憶される処理単位情報を再処理単位文字列を含む新たな処理単位情報で更新し、ステップS205へ進む。以上で第2の実施形態に係る音声同時処理装置800の動作を終了する。
【0042】
次に、第2の実施形態に係る処理単位記憶部802に記憶される処理単位情報の一例について図10を参照して説明する。
図10は、処理単位情報1000を示すテーブルであり、処理単位情報1000として、処理単位文字列501と時間情報1001とが対応付けられて記憶される。ここでは、時間情報1001として、処理単位文字列501を検出した区間に対応する音声の開始時刻1002と終了時刻1003とが処理単位文字列501に対応付けられる。具体的には、図10に示す処理単位文字列501「千葉市内で」と、開始時刻1002「10:03:31.21」と、終了時刻1003「10:03:32.73」とが対応付けられる。
【0043】
次に、第2の実施形態に係る音声同時処理装置800の動作の具体例について図11から図15を参照して説明する。
まず、図10に示す処理単位情報1000に含まれる処理単位文字列「千葉市内で」が未出力であり、予め設定した時間内で連続する発話に対応する文字列は、「千葉市内で」のみであると仮定する。このとき、更新部803のステップS902の処理において、未出力の処理単位情報が存在すると判定され、処理単位文字列「千葉市内で」について分割点を検出する。
【0044】
再処理単位文字列について分割点を検出した結果を図11に示す。再処理単位文字列1101「千葉市内で」に対応するラベル1102は、図5に示す処理単位文字列501について検出された分割点のラベル(図4の「千葉市内で」のラベル「B,I,I」)と同じであるので、更新部803の処理が終了する。
【0045】
さらに発話が進み、第1の実施形態において発話された音声に続き、音声「たいんですが良いホテルを見つけて(V)」を音声認識部102が取得して検出部104が解析し、処理単位記憶部802が処理単位情報として「良いホテルを見つけて」を記憶する例を図12に示す。
ここで、図12に示す処理単位情報が出力部106から全て出力された状態、すなわち、「千葉市内で」、「ホテルの予約をしたいんですが」、「良いホテルを見つけて」が順に出力された状態を仮定する。音声同時処理装置800が機械翻訳装置に接続される場合は、「In Chiba city」、「I’d like to make a hotel reservation.」、「Please find a good hotel.」が出力されると仮定する。
【0046】
続いて、取得部101が音声「もらえませんか」を取得して、音声認識部102および検出部104の処理により新たな発話の処理単位文字列として「もらえませんか」を得る。その後、この処理単位文字列に対応する音声区間の開始時刻と終了時刻とを対応付けて処理単位情報として、処理単位記憶部802に記憶した例を図13に示す。
図9に示す更新部803の更新処理において、処理単位情報1301「もらえませんか」が未出力であるため、処理単位情報1301「もらえませんか」が処理対象となる。このとき、連続して発話したかどうかの閾値が、1秒であった場合、処理単位情報1302「千葉市内で」と処理単位情報1303「ホテルを予約したいんですが」との発話間の差は、0.05秒であり、処理単位情報1303「ホテルを予約したいんですが」と処理単位情報1304「良いホテルを見つけて」との差は0.17秒、および、処理単位情報1304「良いホテルを見つけて」と処理単位情報1301「もらえませんか」との差は、0.31秒であるため、これらの処理単位情報に対応する発話は、予め設定した時間内に連続して発話されたと決定する。よって、これらの処理単位文字列を時系列順に連結した組合せ文字列「千葉市内でホテルの予約をしたいんですが良いホテルをみつけてもらえませんか」が、再処理単位文字列として生成される。
【0047】
続いて、再処理単位文字列「千葉市内でホテルの予約をしたいんですが良いホテルをみつけてもらえませんか」について、分割点を検出した結果を図14に示す。
図14に示すように分割点の検出結果として、図13に示す処理単位文字列「良いホテルを見つけて」と「もらえませんか」とは異なる処理単位文字列「良いホテルを見つけてもらえませんか」が検出される。
【0048】
最終的に更新された処理単位記憶部802の処理単位情報について図15に示す。
処理単位情報として、図13に示す処理単位情報1304「良いホテルを見つけて」と処理単位情報1301「もらえませんか」とが、図15に示す処理単位情報1501「良いホテルを見つけてもらえませんか」に更新される。また、処理単位文字列「良いホテルを見つけてもらえませんか」の音声に対応する開始時刻1002と終了時刻1003とが、処理単位情報1304「良いホテルを見つけて」の開始時刻「10:03:37.72」と処理単位情報1301「もらえませんか」の終了時刻「10:03:41.97」とに更新される。
【0049】
なお、更新部803がない場合は、処理単位の更新が行われないため、図13に示す処理単位情報に対応した全ての処理単位文字列が出力されるため、“In Chiba city”、“I’d like to make a hotel reservation”、“Please find a good hotel”、“I cannot get it?”という一連の翻訳がなされ、元の発話に存在しない、「もらえないです?」という意味の訳が余分に生成されるか農政がある。一方、第2の実施形態に係る音声同時処理装置では、処理単位文字列の機械翻訳として、「良いホテルを見つけてもらえませんか」が得られるため、ここで、機械翻訳装置に処理単位文字列を与えると、例えば、「Could you find a good hotel for me?」といった訳出が得られる。
【0050】
以上に示した第2の実施形態によれば、後続する発話の認識結果によって適切な処理単位が変わってしまう場合にも、元の発話の意図を正しく反映させる処理単位を出力できる。
【0051】
上述の実施形態の中で示した処理手順に示された指示は、ソフトウェアであるプログラムに基づいて実行されることが可能である。汎用の計算機システムが、このプログラムを予め記憶しておき、このプログラムを読み込むことにより、上述した音声同時処理装置による効果と同様な効果を得ることも可能である。上述の実施形態で記述された指示は、コンピュータに実行させることのできるプログラムとして、磁気ディスク(フレキシブルディスク、ハードディスクなど)、光ディスク(CD−ROM、CD−R、CD−RW、DVD−ROM、DVD±R、DVD±RW、Blu−ray(登録商標)Discなど)、半導体メモリ、又はこれに類する記録媒体に記録される。コンピュータまたは組み込みシステムが読み取り可能な記録媒体であれば、その記憶形式は何れの形態であってもよい。コンピュータは、この記録媒体からプログラムを読み込み、このプログラムに基づいてプログラムに記述されている指示をCPUで実行させれば、上述した実施形態の音声同時処理装置と同様な動作を実現することができる。もちろん、コンピュータがプログラムを取得する場合又は読み込む場合はネットワークを通じて取得又は読み込んでもよい。
また、記録媒体からコンピュータや組み込みシステムにインストールされたプログラムの指示に基づきコンピュータ上で稼働しているOS(オペレーティングシステム)や、データベース管理ソフト、ネットワーク等のMW(ミドルウェア)等が本実施形態を実現するための各処理の一部を実行してもよい。
さらに、本実施形態における記録媒体は、コンピュータあるいは組み込みシステムと独立した媒体に限らず、LANやインターネット等により伝達されたプログラムをダウンロードして記憶または一時記憶した記録媒体も含まれる。
また、記録媒体は1つに限られず、複数の媒体から本実施形態における処理が実行される場合も、本実施形態における記録媒体に含まれ、媒体の構成は何れの構成であってもよい。
【0052】
なお、本実施形態におけるコンピュータまたは組み込みシステムは、記録媒体に記憶されたプログラムに基づき、本実施形態における各処理を実行するためのものであって、パソコン、マイコン等の1つからなる装置、複数の装置がネットワーク接続されたシステム等の何れの構成であってもよい。
また、本実施形態におけるコンピュータとは、パソコンに限らず、情報処理機器に含まれる演算処理装置、マイコン等も含み、プログラムによって本実施形態における機能を実現することが可能な機器、装置を総称している。
【0053】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行なうことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【0054】
100,800・・・音声同時処理装置、101・・・取得部、102,801・・・音声認識部、103・・・認識結果記憶部、104・・・検出部、105,802・・・処理単位記憶部、106・・・出力部、301,601・・・確定文字列、302,602・・・候補文字列、401,701・・・組合せ文字列、402,702,1102・・・ラベル、501・・・処理単位文字列、803・・・更新部、1000,1301〜1304,1501・・・処理単位情報、1001・・・時間情報、1002・・・開始時刻、1003・・・終了時刻、1101・・・再処理単位文字列。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15