JP2004294542A - 音声認識装置及びそのプログラム - Google Patents
音声認識装置及びそのプログラム Download PDFInfo
- Publication number
- JP2004294542A JP2004294542A JP2003083511A JP2003083511A JP2004294542A JP 2004294542 A JP2004294542 A JP 2004294542A JP 2003083511 A JP2003083511 A JP 2003083511A JP 2003083511 A JP2003083511 A JP 2003083511A JP 2004294542 A JP2004294542 A JP 2004294542A
- Authority
- JP
- Japan
- Prior art keywords
- subword
- phoneme
- word
- sub
- notation
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
Images
Abstract
【課題】音韻列が未知である表記の音韻列を推測して、その表記を利用者が発話した場合に、音韻列の組み合わせ数を抑制して、効率よく音声認識する手段を得る。
【解決手段】表記をサブワードに分割し、サブワードの生起確率に基づいてラティス構造を生成するサブワードラティス生成部3と、このラティス構造からサブワード列を選択して、そのサブワード列の音韻列を結合する音韻列推測部4と、結合された音韻列と利用者の発話した音韻列とを照合する照合部5とを備えた。
【選択図】 図1
【解決手段】表記をサブワードに分割し、サブワードの生起確率に基づいてラティス構造を生成するサブワードラティス生成部3と、このラティス構造からサブワード列を選択して、そのサブワード列の音韻列を結合する音韻列推測部4と、結合された音韻列と利用者の発話した音韻列とを照合する照合部5とを備えた。
【選択図】 図1
Description
【0001】
【発明の属する技術分野】
この発明は、発音が未知である表記の音韻列を推測して音声認識を行う音声認識装置及びそのプログラムに係るものであり、特に推測時に発生する音韻列の組み合わせ数を抑制する技術に関する。
【0002】
【従来の技術】
従来の音声認識技術においては、認識候補となる語を予め単語辞書として保持しておき、この単語辞書中の語の音韻列と発話の音韻列との照合により音声認識がなされる。
【0003】
ところで、単語辞書が保持する単語の個数は有限であり、現実に発話される語のすべてを保持することは容易ではない。また技術や文化の進歩とともに用いられる語彙は増加しており、すべての認識対象単語に対する音韻データを準備するのは困難である。
【0004】
かかる課題に対応するために、品詞、接尾語及び音韻などの未知語構成要素を用いて、未知語の発音を推測する技術が提案されている(例えば、特許文献1)。
【0005】
【特許文献1】
特開平2001−255889「音声認識装置および音声認識方法、並びに記録媒体」(第4図、第6図、第6頁〜第10頁)
【0006】
【発明が解決しようとする課題】
上記の従来技術によれば、品詞、接尾語、音韻の組み合わせから認識候補を生成し、発音が未知である表記の音韻データを推測することとされている。しかし、現実に存在する品詞や接尾語、音韻の組み合わせは多数にのぼる。したがって発音が未知である語と推測によって生成された多数の音韻データとの照合を行わなければならない。そのため、実時間性を要求される音声認識系や計算機資源の乏しい音声認識系には適用できないという課題があった。
【0007】
この発明はこのような課題を解決するためになされたものであって、表記をサブワードに分割し、さらにサブワード毎の音韻列の組み合わせから発音が未知である語の音韻列を推測することとした。またその一方で、サブワードの組み合わせを生起確率に基づいて制限した。これによって、推測により生成される音韻列の組み合わせ数を削減し、高精度な音声認識を少ない計算機資源によって高速に行うことを特徴とするものである。
【0008】
【課題を解決するための手段】
この発明に係る音声認識装置は、入力音声を音節単位に分離して、分離結果を認識候補の音韻列として出力する音韻列分離手段と、
サブワード毎に少なくとも音韻列と生起確率とを保持するサブワード辞書記憶手段と、
音韻列が未知である所定の表記をサブワードに分割するとともに、前記サブワード辞書記憶手段が保持しているサブワードの生起確率に基づいて、前記所定の表記についてサブワードによるラティス構造を生成するサブワードラティス生成手段と、
前記サブワードラティス生成手段が生成したラティス構造に基づいてサブワードの音韻列を結合して音節を生成し、生成された音節を前記所定の表記の音韻列として出力する音韻列推測手段と、
前記音韻列推測手段が生成した前記単語表記の音韻列と前記音韻列分離手段が出力した認識候補の音韻列とを照合し、合致するか否かを判定する照合手段とを備えるものである。
【0009】
【発明の実施の形態】
以下、この発明の実施の形態について説明する。
実施の形態1.
図1は、実施の形態1による音声認識装置の構成を示すブロック図である。図に示すように、実施の形態1の音声認識装置は、音韻列分離部1、サブワード辞書2、サブワードラティス生成部3、音韻列推測部4、照合部5より構成されている。また外部からの入力として、文字表記100と、文字表記100を利用者が発話した結果として生じた音声101を受け付けるようになっている。文字表記100は、音声データの不明な表記であって、文字コードのみから構成されている。例えば、ディクテーション機能(作業者の発話を音声認識して業務を行う機能)を有する業務システムにおいては、操作画面に表示された文字を作業者が音読して操作を行う。この場合、操作画面に表示された文字が文字表記100に相当し、作業者が音読した発生内容が音声101に相当する。入力音声101は、表記100を読みとった利用者が発話した結果により生じた音声データである。以下、実施の形態1による音声認識装置の構成要素について説明する。
【0010】
音韻列分離部1は、利用者の発話を図示せぬマイクによって取り込むことによって取得した入力音声100(電気信号)を音節単位に分離し、これらの音節を連接して認識候補の音韻列として出力するものである。
【0011】
サブワード辞書2は、サブワードの少なくとも表記と音節と生起確率を記憶する記憶装置であり、具体的にはハードディスク装置やフラッシュメモリ、ROM(Read Only Memory)などの不揮発性記憶装置や、CD−ROMなどの記憶媒体によって構成されている。図2は、サブワード辞書2の構成例を示すものである。
【0012】
ここでサブワードとは、音韻列が対応する表記文字列の最小単位をいう。したがって基本的には一つの文字で一つのサブワードを構成する。しかし例外もある。例えば、「山田は流石だ」(やまだはさすがだ)という句は、「山」(やま),「田」(だ),「は」(は),「流石」(さすが),「だ」(だ)という5つのサブワードから構成されるものと考える。ここで、「」内は表記文字列を示し、()内はこの表記文字列に対応する発音である。この例において、「山田は」という部分は上記の原則に基づいて「山」、「田」、「は」という3つのサブワードに分解できる。しかし残りの部分「流石」を一文字に分解してしまうと、「流」と「石」という文字からは(さすが)という読みが得られない。そこでこのような特定の文字の結合においてのみ固有の読みを発生する場合には、各文字には分解せずに、その読みを発生する最小単位(この例でいえば、「流石」)がサブワードとなる。
【0013】
サブワード単位で辞書を有することの技術的意義は、次のようなものである。
すなわち、単語単位で辞書を有することとすると、単語の変化(送りがなの変化、読みの変化など)に対応させることができないため、単語の活用変化(用言の語末変化など)や変形(慣用的に送りがなを省略する場合など)ごとに異なるデータを維持しなければならない。一方、音声辞書として最も小さい単位である音素や音韻などの単位で辞書を有することとすると、表記との対応付けが困難である。サブワード単位で辞書を有することとすれば、表記と音節との対応付けが容易であり、さらに単語の活用変化などによって異なる音韻列が必要となる場合であっても、異なるデータを維持する必要がない。
【0014】
さらに実施の形態1によるサブワードの生起確率は、例えば既存の国語辞書やコーパスなどの大語彙データにおける各語彙をサブワードに分割し、そのサブワードが出現する頻度に基づいて予め算出されたものである。
【0015】
図2に示されたサブワード辞書2では、さらに各サブワードにカテゴリを付している。カテゴリとは各サブワードに付した音節(読み)の分類を示すもので、たとえば「訓」とは、そのサブワードの文字を訓読みした場合の読みが付されていることを意味している。同様に「音」とは、そのサブワードの文字を音読みした場合の読みが付されていることを意味している。「当」とは、その読みが当て字読みであることを示すものである。例えば前例の「流石」(さすが)や、「小人」(こども)などは当て字読みであるから、「当」という分類が付される。なお、生起確率については後述する。
【0016】
続いて、サブワードラティス生成部3は、表記100をサブワードに分割し、サブワード辞書2に記憶されているサブワードの属性に基づいてラティス構造を生成する部位である。
【0017】
ここでラティス構造とは、サブワードを節(ノード)とし、サブワード間の関連を枝(アーク)として接続したデータ構造である。「自然言語処理<ソフトウェア科学15>」(長尾 真編 1996年4月26日 岩波書店刊行)123頁では、語をノードとし、ノード間語を枝で接続するラティス構造の例が紹介されている。サブワードラティス生成部3で用いるラティス構造は、上記の例とは、サブワードを節としている点で相違するが、節間の関係を枝で連結している点では同様である。
【0018】
音韻列推測部4は、サブワードラティス生成部3が生成したラティス構造の節の連結を辿って、表記100の音韻列を推測し、その音韻列を出力する部位である。
【0019】
照合部5は、音韻列分離部1が出力した認識候補の音韻列と、音韻列推測部4が生成した表記100の音韻列とを照合する部位である。照合の結果、文字表記100と入力音声101が一致する場合には、例えば業務システムのメニューが選択されるなど、特定の処理を行うようになっている。
【0020】
次に、実施の形態1の音声認識装置の動作について説明する。図3は、実施の形態1の音声認識装置による処理を示すフローチャートである。図のステップS301において、利用者は表記100を発話し、入力音声101が生成されると、音韻列分離部1は、この入力音声を電気的信号に変換する。具体的には、音韻列分離部1は、マイクの取り込んだアナログデータによる入力音声101をA/D変換し、量子化した後にスペクトル分析して、音節単位に分離した認識候補の一連を認識候補の音韻列として図示せぬメモリに記憶する。
【0021】
ここでは例として、文字表記100として「黄鼻兎」と「小人」という表記が図示せぬ画面に表示されており、利用者はこの画面の文字表記を選択するために、「こびと」と発声したものとする。その結果、音韻列分離部1は、認識候補の音韻列として、「kobito」という音韻列を出力したものとする。
【0022】
次にステップST302において、サブワードラティス生成部3は、文字表記100を取得して、サブワードに分割し、サブワードのラティス構造を生成する。文字表記100が複数の文字列を含む場合には、個々の文字列に対してこれらの処理を行う。以下処理対象となる文字列が「黄鼻兎」であるとして、ステップST302の処理について詳細に説明する。
【0023】
図4はステップST302の詳細なフローチャートである。図のステップST401において、サブワード辞書2に記憶されているサブワードすべてのチェック、すなわちサブワードすべての処理を行ったかどうかを判定する。サブワードすべてのチェックが完了していなければ、サブワード辞書2に記憶されているサブワードの中に、文字列「黄鼻兎」をサブワード分割するのに用いることができるサブワードが存在することになるので、ステップST402に進む(ST401:NO)。一方、サブワードすべてのチェックが完了している場合には、終了する(ST401:YES)。
【0024】
次にステップST402において、サブワード辞書2からサブワードを1つ取得する。ここでは説明のために、図2に示されるサブワード辞書2に記憶されたサブワードとして
「黄」、音韻列:ki 、カテゴリ:訓、生起確率:1.75385e−05が取り出されたとする。
【0025】
続いてステップST403において、取り出されたサブワードの表記文字列が、文字列「黄鼻兎」に前方一致するかチェックする。すなわち文字列「黄鼻兎」の先頭からサブワードの表記の文字分だけ比較し、一致するかどうかを調べる。
一致する場合は、ステップST404に進み(ST403:YES)、そうでない場合は、ステップST401に戻り、次のサブワードの評価を行う(ST403:NO)。文字列「黄鼻兎」の場合、その1文字目はサブワードの「黄」に一致する。
【0026】
ステップST404では、現在のサブワードのカテゴリが直前のサブワードのカテゴリに一致するかどうかを調べる。一致すれば、ステップST405に進み(ST404:YES)、一致しない場合には、ステップST401に戻る(ST404:NO)。サブワードが最初のサブワードである場合には、任意のカテゴリと一致するものとする。
【0027】
なお、ST404において、カテゴリが一致するかどうかを調べる理由は、異なるカテゴリのサブワードが接続される可能性が低いことにある。こうすることにより、カテゴリの一致という基準に基づいて処理を簡潔に行うことができる。
すなわち訓読みと音読み、あるいは音読みと訓読みが接続される場合などである。
【0028】
しかし、重箱読みのように音読みと訓読みが接続される場合もありうる。このような接続までラティス構造として表現するのであれば、複数サブワードのn−gram生起確率を求めておき、これをサブワード辞書2に記憶させておくようにしてもよい。この場合には、n−gram生起確率の大きさに基づいて、サブワード間の接続性を評価することになるので、サブワード辞書2にはカテゴリという属性を記憶させておく必要がない。
【0029】
具体的には、このようなn−gram生起確率の算出方法について説明すると、サブワード列の生起確率は次のようにして求められる。すなわち、いまサブワード列をWとし、Wが、式(1)で与えられるものとする。
【数1】
ただし、w1、w2、…、wmはサブワードであり、w1,w2はサブワードw1とw2を連結したものとする。
【0030】
この場合、サブワード列の生起確率P(W)はサブワードn−gramによる式(2)から算出される。
【数2】
【0031】
前述したカテゴリの一致を基準とする判断は、サブワード列の生起確率P(W)に基づく判断処理の特殊な場合であるといえる。
【0032】
なおサブワード列の生起確率は、従来の文法規則に基づく生起確率とは次のような点で異なる。すなわち、1234という文字列を音読すると、「いち・に・さん・し」、あるいは、「いち・に・さん・よん」のいずれかとなる。しかし7654という文字列と「なな・ろく・ご・よん」と音読しても、「なな・ろく・ご・し」と音読することはない。従来の品詞文法規則では、この同一品詞の並びのような例外処理を正しく扱えなかった。しかし、サブワードレベルの生起確率では、「なな・ろく・ご」というサブワード列の後に、「し」というサブワードが接続される確率の値を低く設定することができ、一方で「よん」というサブワードが接続される確率の値を高く設定することができる。こうすることで、「なな・ろく・ご・し」という、現実には発音されえない音韻列を生成することを防止できる。
【0033】
このようにして算出されたサブワード列の生起確率P(W)が、所定の値以上となる場合に、ステップST404に進み、所定の値以下となる場合には、ステップST401に進むようにする。
【0034】
次にステップST405では、前方一致したサブワードをラティスに追加する。ここで、ラティスの先頭からサブワードの表記の文字数を算出し、同一の文字位置にすでに同じサブワードが記憶されている場合には、サブワードの節を新たに追加するのではなく、すでに記憶されているサブワードの節を再利用することとする。そのようなサブワードの節が存在しない場合には、現在のサブワードについての新たな節を追加する。現在のサブワードについて新たな節をラティスに追加した場合、直前のサブワードの節と新たな節とをアーク(枝)で接続する。
具体的には直前のサブワードの節に新たな節のアドレスを示すポインタを記憶させる。
【0035】
次にステップS406において、前方一致した表記を文字列から削除する。文字列「黄鼻兎」とサブワードの「黄」が一致した場合には、削除の結果文字列は、「鼻兎」となる。
【0036】
続いてステップS407において、文字列に残存部分があるかどうかを調べる。残存部分がある場合はステップS401に進み、残りの文字列についてこれまでと同様にサブワード分割を行う(S407:YES)。残存部分がない場合は、この文字列についてのサブワード分割が終了したことを意味するので、終了する(S407:NO)。この場合は残存文字列として「鼻兎」が存在するので、ステップS401に進むことになる。以後、「鼻」、「兎」のそれぞれをサブワードに分割して、その結果として図5に示すようなラティス構造が生成される。
【0037】
以上が、ステップST302の詳細な処理の内容である。前述したとおり、このような処理は文字列「小人」についても行われる。最終的には、図6に示すようなラティス構造が生成されることになる。
【0038】
次に図3のフローチャートのステップST303において、音韻列推測部4は、サブワードについてのラティス構造において連結されているサブワードの組み合わせのそれぞれを取得し、認識候補の音韻列との比較により尤度を計算し、最尤の候補を算出する。そこで以下、この最尤候補の算出処理の詳細について説明する。
【0039】
図7は、ステップS303の処理を詳細に示したフローチャートである。図のステップST501において、最大尤度を保持する変数を初期化する。ここでは例として最大尤度を保持する変数の値を0とする。以降、最大尤度とは、最大尤度を保持する変数のことをいうものとする。
【0040】
次にステップST502において、ラティス構造のすべてのサブワード連携をチェックしたかどうかを調べる。サブワード連携とはラティス構造の左から右へのサブワード列を意味する。図6の例でいえば、STARTから始めてENDに至るまでの経路上に出現するサブワードの列一つ一つがサブワード連携である。
すべてのサブワード連携をチェックした場合には、これ以上評価すべきサブワード連携は存在しないので、ステップST508に進む(ST502;YES)。
ステップST508の処理については後述する。一方、そうでない場合は、評価すべきサブワード連携があるので、ステップS503に進む(ST502:NO)。
【0041】
続いて、ステップS503において、ラティス構造からサブワードを1つ取得する。ここでは以下のサブワード列を取り出したとする。
黄鼻兎:{「黄」(ki)訓,「鼻」(hana)訓, 「兎」(usagi)訓}
【0042】
次にステップS504において、サブワード列中の音韻列を抽出する。ここでは以下の音韻列が抽出される。
kihanausagi
【0043】
続いてステップS505において、認識候補の音韻列に最も類似するサブワード列の音韻列を選択する。この処理は、認識候補の音韻列Yに対する条件付き確率P(W|Y)を最大にするサブワード連携Wを算出することによって行う。具体的には、サブワード連携Wについてのこの条件付き確率は式(3)より算出される。
【数3】
【0044】
式(3)において、認識候補の音韻列Yは複数のW間で一定であるので、Yのみに依存するP(Y)の影響を無視することができ、結果としてP(Y|W)P(W)が最大となる場合に、P(W|Y)が最大になる。ここで、P(W)は式(2)によって算出されるサブワードの生起確率である。またP(Y|W)はサブワード連携Wが与えられたときの、音韻列Yの出現確率であり、次の方法によって算出される。すなわち時刻t=1,2,…,Lにおいて、音韻列Yが式(4)で与えられるものとする。
【数4】
ただし、y1、y2、…、yLは音韻であり、例えばy1,y2は音韻y1とy2を連結したものとする。
【0045】
そうすると、P(Y|W)は式(5)によって算出できる。
【数5】
【0046】
このような確率計算方法の詳細は、阿部他:「認識誤り傾向の確率モデルを用いた2段階探索法による大語彙連続音声認識」,電子情報通信学会論文誌D−II, VolJ83−D−II No12 , pp.2545−2553 (2000−12)に記載されている。
【0047】
ただし、以上の確率計算は必須ではない。たとえば、この例のようにラティス構造におけるサブワード連携の数があまり多くなく、また相互のサブワード連携による音韻列が、音響的に十分な距離が確保できる場合(類似性がそれほど高くない場合)には、例えば、音韻列の一致のあった場合を確率を1とし、ない場合を確率尤度を0としてもよい。このようにすると、候補の音韻列(kihanausagi)と認識音韻列(kobito)が一致しないため、尤度は0となる。
【0048】
したがって、語句をサブワードに分割して、さらに音節ラティスを構成して、サブワード組み合わせを絞り込んだため、辞書登録されていないような「黄鼻兎」(きはなうさぎ)を(こびと)と誤って認識することはない。
【0049】
次にステップS506において、ステップS505で算出された尤度と最大尤度を比較し、算出された尤度が最大尤度以下であれば、ステップS502に進み、次のサブワード連携の処理を行う(ST506:NO)。一方、最大尤度より大きければ、ステップST507に進む(ST506:YES)。
【0050】
ステップST507において、最大尤度より尤度が大きい確率を新たな最大尤度とする。そしてステップST502に戻る。このようにしてすべてのサブワード連携について処理を完了すると、ステップST502でYESとなって、ステップST508に進む。
【0051】
ステップST508において、最大尤度に等しいサブワード連携を出力して、終了する。
【0052】
以上から明らかなように、実施の形態1の音声認識装置によれば、生起確率に基づいてサブワードのラティス構成を生成し、このラティス構造に基づいてサブワードを連結することにより候補語を生成し、認識候補との照合を行うので、組み合わせ数の増大を防止することができ、効率よく未知語の音声認識を行うことができる。
【0053】
なお、実施の形態1の音声認識装置と同等の機能を、コンピュータプログラムとして実現し、コンピュータに実行させるようにしてもよい。この場合、このコンピュータプログラムは、音韻列分離部1に相当する処理を実行するプログラムと、サブワードラティス生成部3に相当する処理を実行するプログラムと、音韻列推測部4に相当する処理を実行するプログラムと、照合部5に相当する処理を実行するプログラムから構成される。
【0054】
実施の形態2.
実施の形態1による音声認識装置は、サブワードを連結して音韻列を生成することで、未知語についても音声認識することを特徴とするものであった。これに対して、実施の形態2による音声認識装置は、未知語が「音読する上で発音が省略される表記」を有する場合に、精度よく音声認識して未知語の表記を取得することを特徴とする。
【0055】
ここで、「音読する上で発音が省略される表記」とは、「・」(ナカグロ)や「−」(ハイフン)など、表記として用いられていても、その表記を音読する場合には発声されない表記要素を意味する。またインターネット関連の文書を音読する場合には、「http://」のような文字列を発声しないことが多い。ラジオ放送などで、インターネットのホームページのURL(UniversalResource Locator)を紹介する場合、例えばURLがhttp://www.x.comである場合には、「www.」以降の文字しか読み上げない。このような文字列も「音読する上で発音が省略される表記」に相当する。
【0056】
図8は、実施の形態2による音声認識装置の構成を示すブロック図である。図において、無音表記辞書6は、音読する上で発音が省略される表記を記憶する辞書である。具体的には、無音表記辞書6はファイルとしてハードディスク装置やフラッシュメモリ、ROMなどの不揮発性記憶装置や、CD−ROMなどの記憶媒体によって記憶されている。図9は、無音表記辞書6の構成の例を示す図である。また、サブワードラティス生成部3は文字表記100とサブワード辞書2に加えて、無音表記辞書6を入力として処理を行う。その他、図1と同一の符号を付した構成要素については、実施の形態1と同様であるので、説明を省略する。
【0057】
次に実施の形態2による音声認識装置の処理について説明する。実施の形態2における処理は、実施の形態1と比して、ST401−2及びST404−2が異なるのみである。そこで、この処理について説明し、他の処理については説明を省略する。
【0058】
ステップ401−2において、サブワード辞書2に記憶されているサブワードと無音表記辞書6のすべてに対して処理を完了したどうかを判定する。すべてのサブワード及び無音表記のチェックが完了していなければ、ステップST402に進む(ST401−2:NO)。一方、サブワードすべてのチェックが完了している場合には、終了する(ST401−2:YES)。
【0059】
ステップST402からステップST403については実施の形態1と同様であるので説明を省略する。次にステップST404−2において、現在のサブワードのカテゴリが、直前の無音サブワードの前のサブワードのカテゴリに一致するかどうかを調べる。一致すれば、ステップST404に進み(ST404:YES)、一致しない場合には、ステップST401に進む(ST404:NO)。なお、実施の形態1と同様にサブワード列の生起確率に基づいて判定してもよい。
【0060】
以後、ステップST405からステップST407の処理については実施の形態1と同様であるので、説明を省略する。
【0061】
以上から明らかなように、実施の形態2の音声認識装置によれば、無音表記については無音表示辞書6に記憶させて、発音するサブワードとは別に取り扱い、発話されない表記を省略してサブワードを結合し、認識候補との照合を行うので、利用者が発話のない部分を有する未知語を発話しても、正しく照合することができる。
【0062】
なお、上記の説明において、サブワード辞書2と無音表記辞書6とを別体のものとして構成したが、無音表記辞書6が記憶する無音サブワードの音韻を’−’(ハイフン)などと表現し、サブワード辞書2に含めるようにしてもよい。
【0063】
また、実施の形態1では推測する音声の列を音韻列として取り扱う方法を示したが、音韻列の代わりに音素列や音節列としてもよい。
【0064】
実施の形態3.
なお、「文字を表記する上で慣用的に省略される送りがなの音韻」を辞書に記憶させておき、サブワードを連結する場合に、これらの音韻を挿入して候補語を生成するようにしてもよい。実施の形態3による音声認識装置は、このような処理を行うことを特徴とする。
【0065】
ここで、「文字を表記する上で慣用的に省略される送りがな」とは、発音上は読みとして存在するが、その読みに対応する表記が慣用的に省略される送りがなを意味する。例えば「熊谷」(くまがや)や「山手」(やまのて)のように、サブワード「熊」、「谷」、「山」、「手」の読みとしては現れない「が」や「の」などの送りがなが相当する。
【0066】
このような用法は、前掲した「流石」(さすが)のように、一連の文字に対する当て字読みとしてサブワード辞書に記憶させておいてもよい。このような構成をとる場合には、実施の形態1の処理と同じとなる。
【0067】
しかし新聞の求人広告欄のように、限られたスペースに情報を表記する場合には、多様な送りがなが省略されることになる。このような用法に備えて、そのすべてをサブワード辞書に記憶させようとすると、サブワード辞書に要する記憶容量が増大することになる。
【0068】
そこで、省略されうる送りがなを辞書化しておき、サブワード辞書に記憶された基本的なサブワードの組と適宜組み合わせて、生起確率に基づいて候補語を生成することとする。
【0069】
図3は、実施の形態3による音声認識装置の構成を示すブロック図である。図において、無表記サブワード辞書7は、慣用上送りがなが省略される表記における送りがなの音韻列と生起確率とを記憶している。具体的には、無表記サブワード辞書7はファイルとしてハードディスク装置やフラッシュメモリ、ROMなどの不揮発性記憶装置や、CD−ROMなどの記憶媒体によって記憶されている。図12は、無表記サブワード辞書7の構成の例を示す図である。
【0070】
また、サブワードラティス生成部3は文字表記100とサブワード辞書2に加えて、無表記サブワード辞書7を入力して処理を行う。その他、図1と同一の符号を付した構成要素については、実施の形態1と同様であるので、説明を省略する。
【0071】
次に、実施の形態3による音声認識装置の処理について説明する。実施の形態3による音声認識装置の処理は、実施の形態1と比して、ステップST504とステップST505の処理の間にステップST701の処理が追加されている点で異なるものであり、その他の処理については実施の形態1と同様であるので説明を省略する。
【0072】
ステップST701において、サブワード間に無表記サブワード辞書7が記憶している音韻列を挿入する処理を行う。音韻列の挿入は、無表記サブワード辞書が各音韻列について記憶する生起確率に基づいて行う。すなわち、n−gram生起確率を算出して、このn−gram生起確率が所定の値以上となる場合に、音韻列の挿入を行うものである。
【0073】
これによって、例えばサブワード列が{「熊」(kuma)「谷」(ya)}の場合には、(kumaya),(kumagaya),(kumanoya), (kumaQya) が候補として生成されることになる。
【0074】
以上から明らかなように、実施の形態3の音声認識装置によれば、サブワードの音節間に慣用的に省略される送りがなの音節を挿入して音韻列を生成し、認識候補との照合を行うので、利用者がそのような未知語を発話しても、正しい表記による認識結果が得られることとなり、認識精度が向上する。
【0075】
実施の形態4.
さらに、踊り字を辞書に記憶させておき、連結するサブワードの間に踊り字を挿入するようにしてもよい。具体的にはサブワードの表記の間に踊り字を挿入し、かつサブワードの音韻列の間に踊り字を挿入することによる効果に相当する音韻列を挿入する。実施の形態4による音声認識装置は、このような処理を行うことを特徴とする。
【0076】
ここで踊り字とは、「々」や「ゞ」など前の文字の繰り返しを意味する表記であって、繰り返し記号、あるいは繰り返し文字と呼ばれる場合もある。これらの表記の発音は、直前の文字に影響されることとなる。したがって、これらをすべてサブワード辞書に保持することとすると、そのために要する記憶容量が増大し、かつ音韻列生成のためのラティス構造も肥大化し、さらに生成された音韻列とと認識候補との照合処理にも時間を要することとなる。
【0077】
そこで、省略されうる送りがなを辞書化しておき、サブワード辞書に記憶された基本的なサブワードの組と適宜組み合わせて、生起確率に基づいて音韻列を生成することとする。
【0078】
図14は、実施の形態4による音声認識装置の構成を示すブロック図である。図において、踊り字辞書8は、踊り字を記憶する辞書である。具体的には、踊り字辞書8はファイルとしてハードディスク装置やフラッシュメモリ、ROMなどの不揮発性記憶装置や、CD−ROMなどの記憶媒体によって記憶されている。図15は、踊り字辞書8の構成の例を示す図である。踊り字辞書は各踊り字について、濁音化フラグと生起確率を保持している。濁音化フラグとは、踊り字に相当する発音が濁音を生ずるかどうかを示す情報である。具体的には、0、1、2の値をとり、それぞれの値は次のような意味を有している。
0 濁音化しない候補を生成
1 濁音化した候補を生成
2 濁音化しない候補と濁音化した候補の双方を生成
これらは踊り字の実際の用法に基づいて与えられる値である。また生起確率は、その踊り字が出現する確率であって、辞書やコーパスの分析から得られる値である。
【0079】
また、サブワードラティス生成部3は文字表記100とサブワード辞書2に加えて、踊り字辞書8を入力して処理を行う。その他、図1と同一の符号を付した構成要素については、実施の形態1と同様であるので、説明を省略する。
【0080】
次に、実施の形態4による音声認識装置の処理について説明する。実施の形態4による音声認識装置の処理は、実施の形態1と比して、ステップST401−3とステップST403−3が異なり、さらにステップST404−3とステップST405の間にステップST801及びST802の処理を行う点が異なる。そこで、以下の説明ではこれらの相違点についてのみ説明し、他の処理については説明を省略する。
【0081】
ステップST401−3において、サブワード辞書2に記憶されているサブワードと踊り字辞書8のすべてに対して、処理を完了したどうかを判定する。すべてのサブワード及び踊り字のチェックが完了していなければ、ステップST402に進む(ST401−3:NO)。一方、サブワードすべてのチェックが完了している場合には、終了する(ST401−3:YES)。
【0082】
ステップST404−3において、踊り字辞書8を参照することにより、現在のサブワードが踊り字かどうかを判定する。踊り字である場合には、ステップST801に進む(ST404−3:YES)。一方、踊り字でない場合には、ステップST405に進む(ST404−3:NO)。
【0083】
ステップST801において、踊り字のサブワード用のメモリ領域の音韻フィールドとカテゴリフィールドに、この踊り字の直前のサブワードの音韻とカテゴリをそれぞれコピーする。なお、ラティス構造を生成する際に、音韻の生起確率を基準とする場合には、直前のサブワードの音韻のみをコピーすれば十分である。
【0084】
次にステップST802において、踊り字の濁音化フラグに基づいて、この直前のサブワードからコピーしてきた音韻を濁音化する。具体的に説明すると、「みすゞ」という語の場合は、踊り字「ゞ」を用いているが、この場合は(みすず)と発音する。この場合の濁音化フラグが1であるので、直前のサブワード「す」の音韻を濁音化して(ず)という音韻を生成する。また踊り字が「々」である場合には、「代々」(だいだい)と「代々木」(よよぎ)のように濁音化する必要がある場合とない場合の双方が考えられる。このような場合には、濁音化フラグは2とされているので、濁音化しないサブワードと濁音化するサブワードの2つを生成する。
【0085】
以上から明らかなように、実施の形態4の音声認識装置によれば、踊り字によって生ずる表記と読みの影響を考慮して、候補語を生成し、認識候補との照合を行うので、利用者が踊り字表記を有する未知語を発話しても、精度よく認識できる。
【0086】
実施の形態5.
また、複数桁からなる数字の各位の音韻を、当該位の数字毎に辞書に記憶させておき、サブワードが数字である場合に、その数字の位を求めて、数字のサブワードの音韻を辞書に記憶させておいた音韻で置換するようにしてもよい。実施の形態5による音声認識装置は、このような処理を行うことを特徴とするものである。
【0087】
ここで、複数桁からなる数字とは、10(2桁)、100(3桁)など複数の数字が連続してなる数字列である。10という表記はサブワード「1」(いち)とサブワード「0」(れい、または、ぜろ)からなるが、「いちれい」とは発音せず、「じゅう」と発音する。このような読みの変化に対応することが実施の形態5による音声認識装置の目的である。
【0088】
図17は、実施の形態5による音声認識装置の構成を示すブロック図である。
図において、数字辞書9は0〜9の各数字について、複数の桁の数字列の各位における音韻列を記憶している。具体的には、数字辞書9はファイルとしてハードディスク装置やフラッシュメモリ、ROMなどの不揮発性記憶装置や、CD−ROMなどの記憶媒体によって記憶されている。図18は、数字辞書9の構成の例を示す図である。このように、数字辞書には各数字が1の位、10の位、100の位、1000の位などにある場合の音韻列が記憶されている。また’−’(ハイフン)は、その数字に対応する音韻列がないことを示す。
【0089】
また、サブワードラティス生成部3は、文字表記100とサブワード辞書2に加えて、数字辞書9を入力として処理を行う。その他、図1と同一の符号を付した構成要素については、実施の形態1と同様であるので、説明を省略する。
【0090】
次に、実施の形態5による音声認識装置の処理について説明する。実施の形態5による音声認識装置の処理は、実施の形態1と比して、ステップST401−4とステップST404−4が異なり、さらにステップST403−3とステップST405の間にステップST803及びST804の処理が増えている点が相違点であり、他の処理は実施の形態1と同様である。そこで、以下の説明ではこれらの相違点を中心に説明することとする。
【0091】
ステップST401−4において、サブワード辞書2に記憶されているサブワードと数字辞書9のすべてに対して処理を完了したどうかを判定する。すべてのサブワード及び数字のチェックが完了していなければ、ステップST402に進む(ST401−4:NO)。一方、サブワードすべてのチェックが完了している場合には、終了する(ST401−4:YES)。
【0092】
ステップST404−4において、現在のサブワードが数字かどうかを判定する。数字である場合には、ステップST803に進む(ST404−4:YES)。一方、数字でない場合には、ステップST405に進む(ST404−4:NO)。
【0093】
ステップST803において、現在のサブワードの直後に数字が何文字連続するかを算出する。これによって、このサブワードの数字から開始される数字列の桁数を算出し、現在のサブワードの位を算出することができる。さらにステップST804において、現在のサブワードの音韻列を数字辞書9から取得する。
【0094】
以上から明らかなように、実施の形態5の音声認識装置によれば、数字のサブワードの組み合わせと桁の読み方から音韻列を生成して、認識候補との照合を行うので、利用者が数を発話しても、精度よく認識できる。
【0095】
なお、業務システムにおいて用いられている数字列にはカンマ(,)が多用される。このような数字列を処理する場合には、実施の形態2の処理と組み合わせて、カンマを発音が省略されるサブワードとして分割するようにしてもよい。
【0096】
また数字列の前に、¥や$などの通貨記号がある場合には、これらを発音が省略されるサブワードとして処理するとともに、数字列のサブワードの最後に、「円」(えん)や「ドル」(どる)などのサブワードを挿入するようにしてもよい。
【0097】
実施の形態6.
さらに、英数字を用いた略語毎に表記と音節と生起確率とを辞書に記憶させておき、この略語とサブワード辞書のサブワードとのラティス構造を生成して、候補語を生成するようにしてもよい。実施の形態6による音声認識装置は、このような処理を行うことを特徴とする。
【0098】
英数字を用いた略語とは、英単語の頭文字やシラブルの頭文字などを用いて略記した表記であり、具体例としては「GC」(ゴルフクラブ)、「IC」(インターチェンジ)などがある。これらの表記は、発音に対応する表記が略されているので、通常のサブワード連結では対応が困難である。そこで実施の形態6による音声認識装置は、これらの略語が語句に存在する場合に正確に語句を選択することを目的とするものである。
【0099】
図20は、実施の形態6による音声認識装置の構成を示すブロック図である。
図において、略字辞書10は略字に用いられる英数字に対して割り当てられる音韻が、英数字一文字をサブワードとして記憶されている。具体的にいうと、ICであれば「I」(いんたー)、「C」(ちぇんじ)などである。数字を用いた略語の例としては、「1ST」(ふぁーすと)、「2ND」(せかんど)などである。また、略字辞書10はファイルとしてハードディスク装置やフラッシュメモリ、ROMなどの不揮発性記憶装置や、CD−ROMなどの記憶媒体によって記憶されている。図21は、略語辞書10の構成の例を示す図である。この例のように、ラティス構造におけるサブワード間を接続する判断基準として、カテゴリを用いる場合には、カテゴリとして「略語」という分類を作成しておく。
【0100】
また、サブワードラティス生成部3は、文字表記100とサブワード辞書2に加えて、略語辞書10を入力して処理を行う。その他、図1と同一の符号を付した構成要素については、実施の形態1と同様であるので、説明を省略する。
【0101】
次に実施の形態6による音声認識装置の処理について説明する。実施の形態6による音声認識装置の処理は、実施の形態1の音声認識装置の処理におけるステップST401とステップST403、ステップST405を除いて同様である。またステップST401に相当する処理においては、全サブワードのチェックに加えて、略語辞書に記憶されている略語サブワードのチェックも行う。さらにステップST403においては、語句と略語サブワードが前方一致するかどうかを調べ、またステップST405においては、略語サブワードをその音韻列とともにラティス構造に追加する。その他の処理については、実施の形態1と同様であるので、説明を省略する。
【0102】
以上から明らかなように、実施の形態6の音声認識装置によれば、略語辞書とサブワード辞書から候補語を生成し、認識候補との照合を行うので、利用者が略語表記で表される語を含む未知語を発話しても、精度よく認識できる。
【0103】
なお、略語には英数字以外の文字、たとえば’−’(ハイフン)や’/’(スラッシュ)を含んでいてもよいことはいうまでもない。その場合には、略語辞書10におけるこれらのサブワードの音韻列には、対応する音韻列がないことを示す’−’(ハイフン)が格納される。ただし英数字以外の文字に対しても何らかの読みが付与される略語の場合には、その音韻列を格納するようにする。
【0104】
また上記において、略語辞書とサブワード辞書は別体のものとして説明したが、略語を実施の形態1における当て字サブワードとして取り扱い、サブワード辞書に記憶させるようにしても同様の効果が得られる。
【0105】
実施の形態7.
なお、実施の形態1のサブワード辞書2に、旧仮名遣いによる表記とその音韻を当て字サブワードとして記録させておくことにより、利用者の旧仮名遣いによる表記の発話を認識させるようにしてもよい。
【0106】
実施の形態8.
また各サブワードの表記に対して、日本語とは異なる言語(中国語、韓国語、梵語など)による読みを、サブワードの読みとしてサブワード辞書2に記憶させておくことにより、利用者が発話した未知の外来語を認識させるようにしてもよい。
【0107】
例えば麻雀という語句は日本語の読みに基づいてサブワードに分割すると「麻」(ま、または、あさ)、「雀」(じゃく、または、すずめ、など)に分割されるが、これらのサブワードからは「まーじゃん」という読みは得られない。そこで、このような場合にそれぞれのサブワードの中国語読みをサブワード辞書に記憶させておけば、利用者が未知語として「まーじゃん」と発話しても、音声認識の結果、正しい表記が得られるようになる。
【0108】
以上から明らかなように、実施の形態8の音声認識装置によれば、他国語による読みをサブワード辞書に記憶させておき、このサブワードに基づいて候補語を生成して、認識候補との照合を行うので、利用者が略語表記で表される語を含む未知語を発話しても、精度よく認識できる。
【0109】
【発明の効果】
この発明の音声認識装置によれば、サブワード辞書の生起確率に基づいてラティス構造を生成し、このラティス構造に基づいて音韻列を生成して、利用者の発話に含まれる未知語と照合することとしたので、音韻列生成時に組み合わせ爆発を防止することができ、効率よく未知語を音声認識することができる、という効果を奏するものである。
【図面の簡単な説明】
【図1】この発明の実施の形態1の音声認識装置の構成を示すブロック図である。
【図2】この発明の実施の形態1のサブワード辞書の内容の例を示す図である。
【図3】この発明の実施の形態1、2の音声認識装置の処理のフローチャートである。
【図4】この発明の実施の形態1の音声認識装置によるラティス構造生成処理のフローチャートである。
【図5】この発明の実施の形態1、2の音声認識装置によって生成されるラティス構造の例を示す図である。
【図6】この発明の実施の形態1、2の音声認識装置によって生成されるラティス構造の例を示す図である。
【図7】この発明の実施の形態1、2の音声認識装置による音韻列照合処理のフローチャートである。
【図8】この発明の実施の形態2の音声認識装置の構成を示すブロック図である。
【図9】この発明の実施の形態2の無音表記サブワード辞書の内容の例を示す図である。
【図10】この発明の実施の形態2の音声認識装置によるラティス構造生成処理のフローチャートである。
【図11】この発明の実施の形態3の音声認識装置の構成を示すブロック図である。
【図12】この発明の実施の形態3の無表記サブワード辞書の内容の例を示す図である。
【図13】この発明の実施の形態3の音声認識装置によるラティス構造生成処理のフローチャートである。
【図14】この発明の実施の形態4の音声認識装置の構成を示すブロック図である。
【図15】この発明の実施の形態4の踊り字辞書の内容の例を示す図である。
【図16】この発明の実施の形態4の音声認識装置によるラティス構造生成処理のフローチャートである。
【図17】この発明の実施の形態5の音声認識装置の構成を示すブロック図である。
【図18】この発明の実施の形態5の数字辞書の内容の例を示す図である。
【図19】この発明の実施の形態5の音声認識装置によるラティス構造生成処理のフローチャートである。
【図20】この発明の実施の形態6の音声認識装置の構成を示すブロック図である。
【図21】この発明の実施の形態6の略語辞書の内容の例を示す図である。
【符号の説明】
1:音韻列分離部、2:サブワード辞書、3:サブワードラティス生成部、
4:音韻列推測部、5:照合部、6:無音表記辞書、
7:無表記サブワード辞書、8:踊り字辞書、9:数字辞書、10:略語辞書、100:文字表記、101:入力音声
【発明の属する技術分野】
この発明は、発音が未知である表記の音韻列を推測して音声認識を行う音声認識装置及びそのプログラムに係るものであり、特に推測時に発生する音韻列の組み合わせ数を抑制する技術に関する。
【0002】
【従来の技術】
従来の音声認識技術においては、認識候補となる語を予め単語辞書として保持しておき、この単語辞書中の語の音韻列と発話の音韻列との照合により音声認識がなされる。
【0003】
ところで、単語辞書が保持する単語の個数は有限であり、現実に発話される語のすべてを保持することは容易ではない。また技術や文化の進歩とともに用いられる語彙は増加しており、すべての認識対象単語に対する音韻データを準備するのは困難である。
【0004】
かかる課題に対応するために、品詞、接尾語及び音韻などの未知語構成要素を用いて、未知語の発音を推測する技術が提案されている(例えば、特許文献1)。
【0005】
【特許文献1】
特開平2001−255889「音声認識装置および音声認識方法、並びに記録媒体」(第4図、第6図、第6頁〜第10頁)
【0006】
【発明が解決しようとする課題】
上記の従来技術によれば、品詞、接尾語、音韻の組み合わせから認識候補を生成し、発音が未知である表記の音韻データを推測することとされている。しかし、現実に存在する品詞や接尾語、音韻の組み合わせは多数にのぼる。したがって発音が未知である語と推測によって生成された多数の音韻データとの照合を行わなければならない。そのため、実時間性を要求される音声認識系や計算機資源の乏しい音声認識系には適用できないという課題があった。
【0007】
この発明はこのような課題を解決するためになされたものであって、表記をサブワードに分割し、さらにサブワード毎の音韻列の組み合わせから発音が未知である語の音韻列を推測することとした。またその一方で、サブワードの組み合わせを生起確率に基づいて制限した。これによって、推測により生成される音韻列の組み合わせ数を削減し、高精度な音声認識を少ない計算機資源によって高速に行うことを特徴とするものである。
【0008】
【課題を解決するための手段】
この発明に係る音声認識装置は、入力音声を音節単位に分離して、分離結果を認識候補の音韻列として出力する音韻列分離手段と、
サブワード毎に少なくとも音韻列と生起確率とを保持するサブワード辞書記憶手段と、
音韻列が未知である所定の表記をサブワードに分割するとともに、前記サブワード辞書記憶手段が保持しているサブワードの生起確率に基づいて、前記所定の表記についてサブワードによるラティス構造を生成するサブワードラティス生成手段と、
前記サブワードラティス生成手段が生成したラティス構造に基づいてサブワードの音韻列を結合して音節を生成し、生成された音節を前記所定の表記の音韻列として出力する音韻列推測手段と、
前記音韻列推測手段が生成した前記単語表記の音韻列と前記音韻列分離手段が出力した認識候補の音韻列とを照合し、合致するか否かを判定する照合手段とを備えるものである。
【0009】
【発明の実施の形態】
以下、この発明の実施の形態について説明する。
実施の形態1.
図1は、実施の形態1による音声認識装置の構成を示すブロック図である。図に示すように、実施の形態1の音声認識装置は、音韻列分離部1、サブワード辞書2、サブワードラティス生成部3、音韻列推測部4、照合部5より構成されている。また外部からの入力として、文字表記100と、文字表記100を利用者が発話した結果として生じた音声101を受け付けるようになっている。文字表記100は、音声データの不明な表記であって、文字コードのみから構成されている。例えば、ディクテーション機能(作業者の発話を音声認識して業務を行う機能)を有する業務システムにおいては、操作画面に表示された文字を作業者が音読して操作を行う。この場合、操作画面に表示された文字が文字表記100に相当し、作業者が音読した発生内容が音声101に相当する。入力音声101は、表記100を読みとった利用者が発話した結果により生じた音声データである。以下、実施の形態1による音声認識装置の構成要素について説明する。
【0010】
音韻列分離部1は、利用者の発話を図示せぬマイクによって取り込むことによって取得した入力音声100(電気信号)を音節単位に分離し、これらの音節を連接して認識候補の音韻列として出力するものである。
【0011】
サブワード辞書2は、サブワードの少なくとも表記と音節と生起確率を記憶する記憶装置であり、具体的にはハードディスク装置やフラッシュメモリ、ROM(Read Only Memory)などの不揮発性記憶装置や、CD−ROMなどの記憶媒体によって構成されている。図2は、サブワード辞書2の構成例を示すものである。
【0012】
ここでサブワードとは、音韻列が対応する表記文字列の最小単位をいう。したがって基本的には一つの文字で一つのサブワードを構成する。しかし例外もある。例えば、「山田は流石だ」(やまだはさすがだ)という句は、「山」(やま),「田」(だ),「は」(は),「流石」(さすが),「だ」(だ)という5つのサブワードから構成されるものと考える。ここで、「」内は表記文字列を示し、()内はこの表記文字列に対応する発音である。この例において、「山田は」という部分は上記の原則に基づいて「山」、「田」、「は」という3つのサブワードに分解できる。しかし残りの部分「流石」を一文字に分解してしまうと、「流」と「石」という文字からは(さすが)という読みが得られない。そこでこのような特定の文字の結合においてのみ固有の読みを発生する場合には、各文字には分解せずに、その読みを発生する最小単位(この例でいえば、「流石」)がサブワードとなる。
【0013】
サブワード単位で辞書を有することの技術的意義は、次のようなものである。
すなわち、単語単位で辞書を有することとすると、単語の変化(送りがなの変化、読みの変化など)に対応させることができないため、単語の活用変化(用言の語末変化など)や変形(慣用的に送りがなを省略する場合など)ごとに異なるデータを維持しなければならない。一方、音声辞書として最も小さい単位である音素や音韻などの単位で辞書を有することとすると、表記との対応付けが困難である。サブワード単位で辞書を有することとすれば、表記と音節との対応付けが容易であり、さらに単語の活用変化などによって異なる音韻列が必要となる場合であっても、異なるデータを維持する必要がない。
【0014】
さらに実施の形態1によるサブワードの生起確率は、例えば既存の国語辞書やコーパスなどの大語彙データにおける各語彙をサブワードに分割し、そのサブワードが出現する頻度に基づいて予め算出されたものである。
【0015】
図2に示されたサブワード辞書2では、さらに各サブワードにカテゴリを付している。カテゴリとは各サブワードに付した音節(読み)の分類を示すもので、たとえば「訓」とは、そのサブワードの文字を訓読みした場合の読みが付されていることを意味している。同様に「音」とは、そのサブワードの文字を音読みした場合の読みが付されていることを意味している。「当」とは、その読みが当て字読みであることを示すものである。例えば前例の「流石」(さすが)や、「小人」(こども)などは当て字読みであるから、「当」という分類が付される。なお、生起確率については後述する。
【0016】
続いて、サブワードラティス生成部3は、表記100をサブワードに分割し、サブワード辞書2に記憶されているサブワードの属性に基づいてラティス構造を生成する部位である。
【0017】
ここでラティス構造とは、サブワードを節(ノード)とし、サブワード間の関連を枝(アーク)として接続したデータ構造である。「自然言語処理<ソフトウェア科学15>」(長尾 真編 1996年4月26日 岩波書店刊行)123頁では、語をノードとし、ノード間語を枝で接続するラティス構造の例が紹介されている。サブワードラティス生成部3で用いるラティス構造は、上記の例とは、サブワードを節としている点で相違するが、節間の関係を枝で連結している点では同様である。
【0018】
音韻列推測部4は、サブワードラティス生成部3が生成したラティス構造の節の連結を辿って、表記100の音韻列を推測し、その音韻列を出力する部位である。
【0019】
照合部5は、音韻列分離部1が出力した認識候補の音韻列と、音韻列推測部4が生成した表記100の音韻列とを照合する部位である。照合の結果、文字表記100と入力音声101が一致する場合には、例えば業務システムのメニューが選択されるなど、特定の処理を行うようになっている。
【0020】
次に、実施の形態1の音声認識装置の動作について説明する。図3は、実施の形態1の音声認識装置による処理を示すフローチャートである。図のステップS301において、利用者は表記100を発話し、入力音声101が生成されると、音韻列分離部1は、この入力音声を電気的信号に変換する。具体的には、音韻列分離部1は、マイクの取り込んだアナログデータによる入力音声101をA/D変換し、量子化した後にスペクトル分析して、音節単位に分離した認識候補の一連を認識候補の音韻列として図示せぬメモリに記憶する。
【0021】
ここでは例として、文字表記100として「黄鼻兎」と「小人」という表記が図示せぬ画面に表示されており、利用者はこの画面の文字表記を選択するために、「こびと」と発声したものとする。その結果、音韻列分離部1は、認識候補の音韻列として、「kobito」という音韻列を出力したものとする。
【0022】
次にステップST302において、サブワードラティス生成部3は、文字表記100を取得して、サブワードに分割し、サブワードのラティス構造を生成する。文字表記100が複数の文字列を含む場合には、個々の文字列に対してこれらの処理を行う。以下処理対象となる文字列が「黄鼻兎」であるとして、ステップST302の処理について詳細に説明する。
【0023】
図4はステップST302の詳細なフローチャートである。図のステップST401において、サブワード辞書2に記憶されているサブワードすべてのチェック、すなわちサブワードすべての処理を行ったかどうかを判定する。サブワードすべてのチェックが完了していなければ、サブワード辞書2に記憶されているサブワードの中に、文字列「黄鼻兎」をサブワード分割するのに用いることができるサブワードが存在することになるので、ステップST402に進む(ST401:NO)。一方、サブワードすべてのチェックが完了している場合には、終了する(ST401:YES)。
【0024】
次にステップST402において、サブワード辞書2からサブワードを1つ取得する。ここでは説明のために、図2に示されるサブワード辞書2に記憶されたサブワードとして
「黄」、音韻列:ki 、カテゴリ:訓、生起確率:1.75385e−05が取り出されたとする。
【0025】
続いてステップST403において、取り出されたサブワードの表記文字列が、文字列「黄鼻兎」に前方一致するかチェックする。すなわち文字列「黄鼻兎」の先頭からサブワードの表記の文字分だけ比較し、一致するかどうかを調べる。
一致する場合は、ステップST404に進み(ST403:YES)、そうでない場合は、ステップST401に戻り、次のサブワードの評価を行う(ST403:NO)。文字列「黄鼻兎」の場合、その1文字目はサブワードの「黄」に一致する。
【0026】
ステップST404では、現在のサブワードのカテゴリが直前のサブワードのカテゴリに一致するかどうかを調べる。一致すれば、ステップST405に進み(ST404:YES)、一致しない場合には、ステップST401に戻る(ST404:NO)。サブワードが最初のサブワードである場合には、任意のカテゴリと一致するものとする。
【0027】
なお、ST404において、カテゴリが一致するかどうかを調べる理由は、異なるカテゴリのサブワードが接続される可能性が低いことにある。こうすることにより、カテゴリの一致という基準に基づいて処理を簡潔に行うことができる。
すなわち訓読みと音読み、あるいは音読みと訓読みが接続される場合などである。
【0028】
しかし、重箱読みのように音読みと訓読みが接続される場合もありうる。このような接続までラティス構造として表現するのであれば、複数サブワードのn−gram生起確率を求めておき、これをサブワード辞書2に記憶させておくようにしてもよい。この場合には、n−gram生起確率の大きさに基づいて、サブワード間の接続性を評価することになるので、サブワード辞書2にはカテゴリという属性を記憶させておく必要がない。
【0029】
具体的には、このようなn−gram生起確率の算出方法について説明すると、サブワード列の生起確率は次のようにして求められる。すなわち、いまサブワード列をWとし、Wが、式(1)で与えられるものとする。
【数1】
ただし、w1、w2、…、wmはサブワードであり、w1,w2はサブワードw1とw2を連結したものとする。
【0030】
この場合、サブワード列の生起確率P(W)はサブワードn−gramによる式(2)から算出される。
【数2】
【0031】
前述したカテゴリの一致を基準とする判断は、サブワード列の生起確率P(W)に基づく判断処理の特殊な場合であるといえる。
【0032】
なおサブワード列の生起確率は、従来の文法規則に基づく生起確率とは次のような点で異なる。すなわち、1234という文字列を音読すると、「いち・に・さん・し」、あるいは、「いち・に・さん・よん」のいずれかとなる。しかし7654という文字列と「なな・ろく・ご・よん」と音読しても、「なな・ろく・ご・し」と音読することはない。従来の品詞文法規則では、この同一品詞の並びのような例外処理を正しく扱えなかった。しかし、サブワードレベルの生起確率では、「なな・ろく・ご」というサブワード列の後に、「し」というサブワードが接続される確率の値を低く設定することができ、一方で「よん」というサブワードが接続される確率の値を高く設定することができる。こうすることで、「なな・ろく・ご・し」という、現実には発音されえない音韻列を生成することを防止できる。
【0033】
このようにして算出されたサブワード列の生起確率P(W)が、所定の値以上となる場合に、ステップST404に進み、所定の値以下となる場合には、ステップST401に進むようにする。
【0034】
次にステップST405では、前方一致したサブワードをラティスに追加する。ここで、ラティスの先頭からサブワードの表記の文字数を算出し、同一の文字位置にすでに同じサブワードが記憶されている場合には、サブワードの節を新たに追加するのではなく、すでに記憶されているサブワードの節を再利用することとする。そのようなサブワードの節が存在しない場合には、現在のサブワードについての新たな節を追加する。現在のサブワードについて新たな節をラティスに追加した場合、直前のサブワードの節と新たな節とをアーク(枝)で接続する。
具体的には直前のサブワードの節に新たな節のアドレスを示すポインタを記憶させる。
【0035】
次にステップS406において、前方一致した表記を文字列から削除する。文字列「黄鼻兎」とサブワードの「黄」が一致した場合には、削除の結果文字列は、「鼻兎」となる。
【0036】
続いてステップS407において、文字列に残存部分があるかどうかを調べる。残存部分がある場合はステップS401に進み、残りの文字列についてこれまでと同様にサブワード分割を行う(S407:YES)。残存部分がない場合は、この文字列についてのサブワード分割が終了したことを意味するので、終了する(S407:NO)。この場合は残存文字列として「鼻兎」が存在するので、ステップS401に進むことになる。以後、「鼻」、「兎」のそれぞれをサブワードに分割して、その結果として図5に示すようなラティス構造が生成される。
【0037】
以上が、ステップST302の詳細な処理の内容である。前述したとおり、このような処理は文字列「小人」についても行われる。最終的には、図6に示すようなラティス構造が生成されることになる。
【0038】
次に図3のフローチャートのステップST303において、音韻列推測部4は、サブワードについてのラティス構造において連結されているサブワードの組み合わせのそれぞれを取得し、認識候補の音韻列との比較により尤度を計算し、最尤の候補を算出する。そこで以下、この最尤候補の算出処理の詳細について説明する。
【0039】
図7は、ステップS303の処理を詳細に示したフローチャートである。図のステップST501において、最大尤度を保持する変数を初期化する。ここでは例として最大尤度を保持する変数の値を0とする。以降、最大尤度とは、最大尤度を保持する変数のことをいうものとする。
【0040】
次にステップST502において、ラティス構造のすべてのサブワード連携をチェックしたかどうかを調べる。サブワード連携とはラティス構造の左から右へのサブワード列を意味する。図6の例でいえば、STARTから始めてENDに至るまでの経路上に出現するサブワードの列一つ一つがサブワード連携である。
すべてのサブワード連携をチェックした場合には、これ以上評価すべきサブワード連携は存在しないので、ステップST508に進む(ST502;YES)。
ステップST508の処理については後述する。一方、そうでない場合は、評価すべきサブワード連携があるので、ステップS503に進む(ST502:NO)。
【0041】
続いて、ステップS503において、ラティス構造からサブワードを1つ取得する。ここでは以下のサブワード列を取り出したとする。
黄鼻兎:{「黄」(ki)訓,「鼻」(hana)訓, 「兎」(usagi)訓}
【0042】
次にステップS504において、サブワード列中の音韻列を抽出する。ここでは以下の音韻列が抽出される。
kihanausagi
【0043】
続いてステップS505において、認識候補の音韻列に最も類似するサブワード列の音韻列を選択する。この処理は、認識候補の音韻列Yに対する条件付き確率P(W|Y)を最大にするサブワード連携Wを算出することによって行う。具体的には、サブワード連携Wについてのこの条件付き確率は式(3)より算出される。
【数3】
【0044】
式(3)において、認識候補の音韻列Yは複数のW間で一定であるので、Yのみに依存するP(Y)の影響を無視することができ、結果としてP(Y|W)P(W)が最大となる場合に、P(W|Y)が最大になる。ここで、P(W)は式(2)によって算出されるサブワードの生起確率である。またP(Y|W)はサブワード連携Wが与えられたときの、音韻列Yの出現確率であり、次の方法によって算出される。すなわち時刻t=1,2,…,Lにおいて、音韻列Yが式(4)で与えられるものとする。
【数4】
ただし、y1、y2、…、yLは音韻であり、例えばy1,y2は音韻y1とy2を連結したものとする。
【0045】
そうすると、P(Y|W)は式(5)によって算出できる。
【数5】
【0046】
このような確率計算方法の詳細は、阿部他:「認識誤り傾向の確率モデルを用いた2段階探索法による大語彙連続音声認識」,電子情報通信学会論文誌D−II, VolJ83−D−II No12 , pp.2545−2553 (2000−12)に記載されている。
【0047】
ただし、以上の確率計算は必須ではない。たとえば、この例のようにラティス構造におけるサブワード連携の数があまり多くなく、また相互のサブワード連携による音韻列が、音響的に十分な距離が確保できる場合(類似性がそれほど高くない場合)には、例えば、音韻列の一致のあった場合を確率を1とし、ない場合を確率尤度を0としてもよい。このようにすると、候補の音韻列(kihanausagi)と認識音韻列(kobito)が一致しないため、尤度は0となる。
【0048】
したがって、語句をサブワードに分割して、さらに音節ラティスを構成して、サブワード組み合わせを絞り込んだため、辞書登録されていないような「黄鼻兎」(きはなうさぎ)を(こびと)と誤って認識することはない。
【0049】
次にステップS506において、ステップS505で算出された尤度と最大尤度を比較し、算出された尤度が最大尤度以下であれば、ステップS502に進み、次のサブワード連携の処理を行う(ST506:NO)。一方、最大尤度より大きければ、ステップST507に進む(ST506:YES)。
【0050】
ステップST507において、最大尤度より尤度が大きい確率を新たな最大尤度とする。そしてステップST502に戻る。このようにしてすべてのサブワード連携について処理を完了すると、ステップST502でYESとなって、ステップST508に進む。
【0051】
ステップST508において、最大尤度に等しいサブワード連携を出力して、終了する。
【0052】
以上から明らかなように、実施の形態1の音声認識装置によれば、生起確率に基づいてサブワードのラティス構成を生成し、このラティス構造に基づいてサブワードを連結することにより候補語を生成し、認識候補との照合を行うので、組み合わせ数の増大を防止することができ、効率よく未知語の音声認識を行うことができる。
【0053】
なお、実施の形態1の音声認識装置と同等の機能を、コンピュータプログラムとして実現し、コンピュータに実行させるようにしてもよい。この場合、このコンピュータプログラムは、音韻列分離部1に相当する処理を実行するプログラムと、サブワードラティス生成部3に相当する処理を実行するプログラムと、音韻列推測部4に相当する処理を実行するプログラムと、照合部5に相当する処理を実行するプログラムから構成される。
【0054】
実施の形態2.
実施の形態1による音声認識装置は、サブワードを連結して音韻列を生成することで、未知語についても音声認識することを特徴とするものであった。これに対して、実施の形態2による音声認識装置は、未知語が「音読する上で発音が省略される表記」を有する場合に、精度よく音声認識して未知語の表記を取得することを特徴とする。
【0055】
ここで、「音読する上で発音が省略される表記」とは、「・」(ナカグロ)や「−」(ハイフン)など、表記として用いられていても、その表記を音読する場合には発声されない表記要素を意味する。またインターネット関連の文書を音読する場合には、「http://」のような文字列を発声しないことが多い。ラジオ放送などで、インターネットのホームページのURL(UniversalResource Locator)を紹介する場合、例えばURLがhttp://www.x.comである場合には、「www.」以降の文字しか読み上げない。このような文字列も「音読する上で発音が省略される表記」に相当する。
【0056】
図8は、実施の形態2による音声認識装置の構成を示すブロック図である。図において、無音表記辞書6は、音読する上で発音が省略される表記を記憶する辞書である。具体的には、無音表記辞書6はファイルとしてハードディスク装置やフラッシュメモリ、ROMなどの不揮発性記憶装置や、CD−ROMなどの記憶媒体によって記憶されている。図9は、無音表記辞書6の構成の例を示す図である。また、サブワードラティス生成部3は文字表記100とサブワード辞書2に加えて、無音表記辞書6を入力として処理を行う。その他、図1と同一の符号を付した構成要素については、実施の形態1と同様であるので、説明を省略する。
【0057】
次に実施の形態2による音声認識装置の処理について説明する。実施の形態2における処理は、実施の形態1と比して、ST401−2及びST404−2が異なるのみである。そこで、この処理について説明し、他の処理については説明を省略する。
【0058】
ステップ401−2において、サブワード辞書2に記憶されているサブワードと無音表記辞書6のすべてに対して処理を完了したどうかを判定する。すべてのサブワード及び無音表記のチェックが完了していなければ、ステップST402に進む(ST401−2:NO)。一方、サブワードすべてのチェックが完了している場合には、終了する(ST401−2:YES)。
【0059】
ステップST402からステップST403については実施の形態1と同様であるので説明を省略する。次にステップST404−2において、現在のサブワードのカテゴリが、直前の無音サブワードの前のサブワードのカテゴリに一致するかどうかを調べる。一致すれば、ステップST404に進み(ST404:YES)、一致しない場合には、ステップST401に進む(ST404:NO)。なお、実施の形態1と同様にサブワード列の生起確率に基づいて判定してもよい。
【0060】
以後、ステップST405からステップST407の処理については実施の形態1と同様であるので、説明を省略する。
【0061】
以上から明らかなように、実施の形態2の音声認識装置によれば、無音表記については無音表示辞書6に記憶させて、発音するサブワードとは別に取り扱い、発話されない表記を省略してサブワードを結合し、認識候補との照合を行うので、利用者が発話のない部分を有する未知語を発話しても、正しく照合することができる。
【0062】
なお、上記の説明において、サブワード辞書2と無音表記辞書6とを別体のものとして構成したが、無音表記辞書6が記憶する無音サブワードの音韻を’−’(ハイフン)などと表現し、サブワード辞書2に含めるようにしてもよい。
【0063】
また、実施の形態1では推測する音声の列を音韻列として取り扱う方法を示したが、音韻列の代わりに音素列や音節列としてもよい。
【0064】
実施の形態3.
なお、「文字を表記する上で慣用的に省略される送りがなの音韻」を辞書に記憶させておき、サブワードを連結する場合に、これらの音韻を挿入して候補語を生成するようにしてもよい。実施の形態3による音声認識装置は、このような処理を行うことを特徴とする。
【0065】
ここで、「文字を表記する上で慣用的に省略される送りがな」とは、発音上は読みとして存在するが、その読みに対応する表記が慣用的に省略される送りがなを意味する。例えば「熊谷」(くまがや)や「山手」(やまのて)のように、サブワード「熊」、「谷」、「山」、「手」の読みとしては現れない「が」や「の」などの送りがなが相当する。
【0066】
このような用法は、前掲した「流石」(さすが)のように、一連の文字に対する当て字読みとしてサブワード辞書に記憶させておいてもよい。このような構成をとる場合には、実施の形態1の処理と同じとなる。
【0067】
しかし新聞の求人広告欄のように、限られたスペースに情報を表記する場合には、多様な送りがなが省略されることになる。このような用法に備えて、そのすべてをサブワード辞書に記憶させようとすると、サブワード辞書に要する記憶容量が増大することになる。
【0068】
そこで、省略されうる送りがなを辞書化しておき、サブワード辞書に記憶された基本的なサブワードの組と適宜組み合わせて、生起確率に基づいて候補語を生成することとする。
【0069】
図3は、実施の形態3による音声認識装置の構成を示すブロック図である。図において、無表記サブワード辞書7は、慣用上送りがなが省略される表記における送りがなの音韻列と生起確率とを記憶している。具体的には、無表記サブワード辞書7はファイルとしてハードディスク装置やフラッシュメモリ、ROMなどの不揮発性記憶装置や、CD−ROMなどの記憶媒体によって記憶されている。図12は、無表記サブワード辞書7の構成の例を示す図である。
【0070】
また、サブワードラティス生成部3は文字表記100とサブワード辞書2に加えて、無表記サブワード辞書7を入力して処理を行う。その他、図1と同一の符号を付した構成要素については、実施の形態1と同様であるので、説明を省略する。
【0071】
次に、実施の形態3による音声認識装置の処理について説明する。実施の形態3による音声認識装置の処理は、実施の形態1と比して、ステップST504とステップST505の処理の間にステップST701の処理が追加されている点で異なるものであり、その他の処理については実施の形態1と同様であるので説明を省略する。
【0072】
ステップST701において、サブワード間に無表記サブワード辞書7が記憶している音韻列を挿入する処理を行う。音韻列の挿入は、無表記サブワード辞書が各音韻列について記憶する生起確率に基づいて行う。すなわち、n−gram生起確率を算出して、このn−gram生起確率が所定の値以上となる場合に、音韻列の挿入を行うものである。
【0073】
これによって、例えばサブワード列が{「熊」(kuma)「谷」(ya)}の場合には、(kumaya),(kumagaya),(kumanoya), (kumaQya) が候補として生成されることになる。
【0074】
以上から明らかなように、実施の形態3の音声認識装置によれば、サブワードの音節間に慣用的に省略される送りがなの音節を挿入して音韻列を生成し、認識候補との照合を行うので、利用者がそのような未知語を発話しても、正しい表記による認識結果が得られることとなり、認識精度が向上する。
【0075】
実施の形態4.
さらに、踊り字を辞書に記憶させておき、連結するサブワードの間に踊り字を挿入するようにしてもよい。具体的にはサブワードの表記の間に踊り字を挿入し、かつサブワードの音韻列の間に踊り字を挿入することによる効果に相当する音韻列を挿入する。実施の形態4による音声認識装置は、このような処理を行うことを特徴とする。
【0076】
ここで踊り字とは、「々」や「ゞ」など前の文字の繰り返しを意味する表記であって、繰り返し記号、あるいは繰り返し文字と呼ばれる場合もある。これらの表記の発音は、直前の文字に影響されることとなる。したがって、これらをすべてサブワード辞書に保持することとすると、そのために要する記憶容量が増大し、かつ音韻列生成のためのラティス構造も肥大化し、さらに生成された音韻列とと認識候補との照合処理にも時間を要することとなる。
【0077】
そこで、省略されうる送りがなを辞書化しておき、サブワード辞書に記憶された基本的なサブワードの組と適宜組み合わせて、生起確率に基づいて音韻列を生成することとする。
【0078】
図14は、実施の形態4による音声認識装置の構成を示すブロック図である。図において、踊り字辞書8は、踊り字を記憶する辞書である。具体的には、踊り字辞書8はファイルとしてハードディスク装置やフラッシュメモリ、ROMなどの不揮発性記憶装置や、CD−ROMなどの記憶媒体によって記憶されている。図15は、踊り字辞書8の構成の例を示す図である。踊り字辞書は各踊り字について、濁音化フラグと生起確率を保持している。濁音化フラグとは、踊り字に相当する発音が濁音を生ずるかどうかを示す情報である。具体的には、0、1、2の値をとり、それぞれの値は次のような意味を有している。
0 濁音化しない候補を生成
1 濁音化した候補を生成
2 濁音化しない候補と濁音化した候補の双方を生成
これらは踊り字の実際の用法に基づいて与えられる値である。また生起確率は、その踊り字が出現する確率であって、辞書やコーパスの分析から得られる値である。
【0079】
また、サブワードラティス生成部3は文字表記100とサブワード辞書2に加えて、踊り字辞書8を入力して処理を行う。その他、図1と同一の符号を付した構成要素については、実施の形態1と同様であるので、説明を省略する。
【0080】
次に、実施の形態4による音声認識装置の処理について説明する。実施の形態4による音声認識装置の処理は、実施の形態1と比して、ステップST401−3とステップST403−3が異なり、さらにステップST404−3とステップST405の間にステップST801及びST802の処理を行う点が異なる。そこで、以下の説明ではこれらの相違点についてのみ説明し、他の処理については説明を省略する。
【0081】
ステップST401−3において、サブワード辞書2に記憶されているサブワードと踊り字辞書8のすべてに対して、処理を完了したどうかを判定する。すべてのサブワード及び踊り字のチェックが完了していなければ、ステップST402に進む(ST401−3:NO)。一方、サブワードすべてのチェックが完了している場合には、終了する(ST401−3:YES)。
【0082】
ステップST404−3において、踊り字辞書8を参照することにより、現在のサブワードが踊り字かどうかを判定する。踊り字である場合には、ステップST801に進む(ST404−3:YES)。一方、踊り字でない場合には、ステップST405に進む(ST404−3:NO)。
【0083】
ステップST801において、踊り字のサブワード用のメモリ領域の音韻フィールドとカテゴリフィールドに、この踊り字の直前のサブワードの音韻とカテゴリをそれぞれコピーする。なお、ラティス構造を生成する際に、音韻の生起確率を基準とする場合には、直前のサブワードの音韻のみをコピーすれば十分である。
【0084】
次にステップST802において、踊り字の濁音化フラグに基づいて、この直前のサブワードからコピーしてきた音韻を濁音化する。具体的に説明すると、「みすゞ」という語の場合は、踊り字「ゞ」を用いているが、この場合は(みすず)と発音する。この場合の濁音化フラグが1であるので、直前のサブワード「す」の音韻を濁音化して(ず)という音韻を生成する。また踊り字が「々」である場合には、「代々」(だいだい)と「代々木」(よよぎ)のように濁音化する必要がある場合とない場合の双方が考えられる。このような場合には、濁音化フラグは2とされているので、濁音化しないサブワードと濁音化するサブワードの2つを生成する。
【0085】
以上から明らかなように、実施の形態4の音声認識装置によれば、踊り字によって生ずる表記と読みの影響を考慮して、候補語を生成し、認識候補との照合を行うので、利用者が踊り字表記を有する未知語を発話しても、精度よく認識できる。
【0086】
実施の形態5.
また、複数桁からなる数字の各位の音韻を、当該位の数字毎に辞書に記憶させておき、サブワードが数字である場合に、その数字の位を求めて、数字のサブワードの音韻を辞書に記憶させておいた音韻で置換するようにしてもよい。実施の形態5による音声認識装置は、このような処理を行うことを特徴とするものである。
【0087】
ここで、複数桁からなる数字とは、10(2桁)、100(3桁)など複数の数字が連続してなる数字列である。10という表記はサブワード「1」(いち)とサブワード「0」(れい、または、ぜろ)からなるが、「いちれい」とは発音せず、「じゅう」と発音する。このような読みの変化に対応することが実施の形態5による音声認識装置の目的である。
【0088】
図17は、実施の形態5による音声認識装置の構成を示すブロック図である。
図において、数字辞書9は0〜9の各数字について、複数の桁の数字列の各位における音韻列を記憶している。具体的には、数字辞書9はファイルとしてハードディスク装置やフラッシュメモリ、ROMなどの不揮発性記憶装置や、CD−ROMなどの記憶媒体によって記憶されている。図18は、数字辞書9の構成の例を示す図である。このように、数字辞書には各数字が1の位、10の位、100の位、1000の位などにある場合の音韻列が記憶されている。また’−’(ハイフン)は、その数字に対応する音韻列がないことを示す。
【0089】
また、サブワードラティス生成部3は、文字表記100とサブワード辞書2に加えて、数字辞書9を入力として処理を行う。その他、図1と同一の符号を付した構成要素については、実施の形態1と同様であるので、説明を省略する。
【0090】
次に、実施の形態5による音声認識装置の処理について説明する。実施の形態5による音声認識装置の処理は、実施の形態1と比して、ステップST401−4とステップST404−4が異なり、さらにステップST403−3とステップST405の間にステップST803及びST804の処理が増えている点が相違点であり、他の処理は実施の形態1と同様である。そこで、以下の説明ではこれらの相違点を中心に説明することとする。
【0091】
ステップST401−4において、サブワード辞書2に記憶されているサブワードと数字辞書9のすべてに対して処理を完了したどうかを判定する。すべてのサブワード及び数字のチェックが完了していなければ、ステップST402に進む(ST401−4:NO)。一方、サブワードすべてのチェックが完了している場合には、終了する(ST401−4:YES)。
【0092】
ステップST404−4において、現在のサブワードが数字かどうかを判定する。数字である場合には、ステップST803に進む(ST404−4:YES)。一方、数字でない場合には、ステップST405に進む(ST404−4:NO)。
【0093】
ステップST803において、現在のサブワードの直後に数字が何文字連続するかを算出する。これによって、このサブワードの数字から開始される数字列の桁数を算出し、現在のサブワードの位を算出することができる。さらにステップST804において、現在のサブワードの音韻列を数字辞書9から取得する。
【0094】
以上から明らかなように、実施の形態5の音声認識装置によれば、数字のサブワードの組み合わせと桁の読み方から音韻列を生成して、認識候補との照合を行うので、利用者が数を発話しても、精度よく認識できる。
【0095】
なお、業務システムにおいて用いられている数字列にはカンマ(,)が多用される。このような数字列を処理する場合には、実施の形態2の処理と組み合わせて、カンマを発音が省略されるサブワードとして分割するようにしてもよい。
【0096】
また数字列の前に、¥や$などの通貨記号がある場合には、これらを発音が省略されるサブワードとして処理するとともに、数字列のサブワードの最後に、「円」(えん)や「ドル」(どる)などのサブワードを挿入するようにしてもよい。
【0097】
実施の形態6.
さらに、英数字を用いた略語毎に表記と音節と生起確率とを辞書に記憶させておき、この略語とサブワード辞書のサブワードとのラティス構造を生成して、候補語を生成するようにしてもよい。実施の形態6による音声認識装置は、このような処理を行うことを特徴とする。
【0098】
英数字を用いた略語とは、英単語の頭文字やシラブルの頭文字などを用いて略記した表記であり、具体例としては「GC」(ゴルフクラブ)、「IC」(インターチェンジ)などがある。これらの表記は、発音に対応する表記が略されているので、通常のサブワード連結では対応が困難である。そこで実施の形態6による音声認識装置は、これらの略語が語句に存在する場合に正確に語句を選択することを目的とするものである。
【0099】
図20は、実施の形態6による音声認識装置の構成を示すブロック図である。
図において、略字辞書10は略字に用いられる英数字に対して割り当てられる音韻が、英数字一文字をサブワードとして記憶されている。具体的にいうと、ICであれば「I」(いんたー)、「C」(ちぇんじ)などである。数字を用いた略語の例としては、「1ST」(ふぁーすと)、「2ND」(せかんど)などである。また、略字辞書10はファイルとしてハードディスク装置やフラッシュメモリ、ROMなどの不揮発性記憶装置や、CD−ROMなどの記憶媒体によって記憶されている。図21は、略語辞書10の構成の例を示す図である。この例のように、ラティス構造におけるサブワード間を接続する判断基準として、カテゴリを用いる場合には、カテゴリとして「略語」という分類を作成しておく。
【0100】
また、サブワードラティス生成部3は、文字表記100とサブワード辞書2に加えて、略語辞書10を入力して処理を行う。その他、図1と同一の符号を付した構成要素については、実施の形態1と同様であるので、説明を省略する。
【0101】
次に実施の形態6による音声認識装置の処理について説明する。実施の形態6による音声認識装置の処理は、実施の形態1の音声認識装置の処理におけるステップST401とステップST403、ステップST405を除いて同様である。またステップST401に相当する処理においては、全サブワードのチェックに加えて、略語辞書に記憶されている略語サブワードのチェックも行う。さらにステップST403においては、語句と略語サブワードが前方一致するかどうかを調べ、またステップST405においては、略語サブワードをその音韻列とともにラティス構造に追加する。その他の処理については、実施の形態1と同様であるので、説明を省略する。
【0102】
以上から明らかなように、実施の形態6の音声認識装置によれば、略語辞書とサブワード辞書から候補語を生成し、認識候補との照合を行うので、利用者が略語表記で表される語を含む未知語を発話しても、精度よく認識できる。
【0103】
なお、略語には英数字以外の文字、たとえば’−’(ハイフン)や’/’(スラッシュ)を含んでいてもよいことはいうまでもない。その場合には、略語辞書10におけるこれらのサブワードの音韻列には、対応する音韻列がないことを示す’−’(ハイフン)が格納される。ただし英数字以外の文字に対しても何らかの読みが付与される略語の場合には、その音韻列を格納するようにする。
【0104】
また上記において、略語辞書とサブワード辞書は別体のものとして説明したが、略語を実施の形態1における当て字サブワードとして取り扱い、サブワード辞書に記憶させるようにしても同様の効果が得られる。
【0105】
実施の形態7.
なお、実施の形態1のサブワード辞書2に、旧仮名遣いによる表記とその音韻を当て字サブワードとして記録させておくことにより、利用者の旧仮名遣いによる表記の発話を認識させるようにしてもよい。
【0106】
実施の形態8.
また各サブワードの表記に対して、日本語とは異なる言語(中国語、韓国語、梵語など)による読みを、サブワードの読みとしてサブワード辞書2に記憶させておくことにより、利用者が発話した未知の外来語を認識させるようにしてもよい。
【0107】
例えば麻雀という語句は日本語の読みに基づいてサブワードに分割すると「麻」(ま、または、あさ)、「雀」(じゃく、または、すずめ、など)に分割されるが、これらのサブワードからは「まーじゃん」という読みは得られない。そこで、このような場合にそれぞれのサブワードの中国語読みをサブワード辞書に記憶させておけば、利用者が未知語として「まーじゃん」と発話しても、音声認識の結果、正しい表記が得られるようになる。
【0108】
以上から明らかなように、実施の形態8の音声認識装置によれば、他国語による読みをサブワード辞書に記憶させておき、このサブワードに基づいて候補語を生成して、認識候補との照合を行うので、利用者が略語表記で表される語を含む未知語を発話しても、精度よく認識できる。
【0109】
【発明の効果】
この発明の音声認識装置によれば、サブワード辞書の生起確率に基づいてラティス構造を生成し、このラティス構造に基づいて音韻列を生成して、利用者の発話に含まれる未知語と照合することとしたので、音韻列生成時に組み合わせ爆発を防止することができ、効率よく未知語を音声認識することができる、という効果を奏するものである。
【図面の簡単な説明】
【図1】この発明の実施の形態1の音声認識装置の構成を示すブロック図である。
【図2】この発明の実施の形態1のサブワード辞書の内容の例を示す図である。
【図3】この発明の実施の形態1、2の音声認識装置の処理のフローチャートである。
【図4】この発明の実施の形態1の音声認識装置によるラティス構造生成処理のフローチャートである。
【図5】この発明の実施の形態1、2の音声認識装置によって生成されるラティス構造の例を示す図である。
【図6】この発明の実施の形態1、2の音声認識装置によって生成されるラティス構造の例を示す図である。
【図7】この発明の実施の形態1、2の音声認識装置による音韻列照合処理のフローチャートである。
【図8】この発明の実施の形態2の音声認識装置の構成を示すブロック図である。
【図9】この発明の実施の形態2の無音表記サブワード辞書の内容の例を示す図である。
【図10】この発明の実施の形態2の音声認識装置によるラティス構造生成処理のフローチャートである。
【図11】この発明の実施の形態3の音声認識装置の構成を示すブロック図である。
【図12】この発明の実施の形態3の無表記サブワード辞書の内容の例を示す図である。
【図13】この発明の実施の形態3の音声認識装置によるラティス構造生成処理のフローチャートである。
【図14】この発明の実施の形態4の音声認識装置の構成を示すブロック図である。
【図15】この発明の実施の形態4の踊り字辞書の内容の例を示す図である。
【図16】この発明の実施の形態4の音声認識装置によるラティス構造生成処理のフローチャートである。
【図17】この発明の実施の形態5の音声認識装置の構成を示すブロック図である。
【図18】この発明の実施の形態5の数字辞書の内容の例を示す図である。
【図19】この発明の実施の形態5の音声認識装置によるラティス構造生成処理のフローチャートである。
【図20】この発明の実施の形態6の音声認識装置の構成を示すブロック図である。
【図21】この発明の実施の形態6の略語辞書の内容の例を示す図である。
【符号の説明】
1:音韻列分離部、2:サブワード辞書、3:サブワードラティス生成部、
4:音韻列推測部、5:照合部、6:無音表記辞書、
7:無表記サブワード辞書、8:踊り字辞書、9:数字辞書、10:略語辞書、100:文字表記、101:入力音声
Claims (11)
- 入力音声を音節単位に分離して、分離結果を認識候補の音韻列として出力する音韻列分離手段と、
サブワード毎に少なくとも音韻列と生起確率とを保持するサブワード辞書記憶手段と、
音韻列が未知である所定の表記をサブワードに分割するとともに、前記サブワード辞書記憶手段が保持しているサブワードの生起確率に基づいて、前記所定の表記についてサブワードによるラティス構造を生成するサブワードラティス生成手段と、
前記サブワードラティス生成手段が生成したラティス構造に基づいてサブワードの音韻列を結合して音節を生成し、生成された音節を前記所定の表記の音韻列として出力する音韻列推測手段と、
前記音韻列推測手段が生成した前記単語表記の音韻列と前記音韻列分離手段が出力した認識候補の音韻列とを照合し、合致するか否かを判定する照合手段と、を備えることを特徴とする音声認識装置。 - 音読する上で発音が省略される表記のサブワードを保持する無音表記辞書記憶手段をさらに備え、
前記サブワードラティス生成手段は、前記表記から分割されたサブワードが前記無音表記辞書記憶手段の保持している表記のサブワードである場合に、該サブワードを省略して前記ラティス構造を生成することを特徴とする請求項1に記載された音声認識装置。 - 表記上慣用的に省略される送りがなの音韻列を保持する無表記音韻記憶手段をさらに備え、
前記サブワードラティス生成手段は、慣用的に送りがなが省略される表記を含む前記所定の表記をサブワードに分割し、
前記音韻列推測手段は、慣用的に送りがなが省略された表記に対応する前記結合されたサブワードの音韻列間に、前記無表記音韻記憶手段が保持している音韻列を挿入し、該挿入結果である音韻列を前記所定の表記の音韻列として出力することを特徴とする請求項1に記載された音声認識装置。 - 前記サブワードラティス生成手段は、踊り字を含む前記所定の表記をサブワードに分割するとともに、踊り字のサブワードを該サブワードの直前のサブワードに置換して、前記ラティス構造を生成することを特徴とする請求項1に記載された音声認識装置。
- 前記サブワードラティス生成手段は、踊り字のサブワードを該サブワードの直前のサブワードに置換して、さらに踊り字の種類に基づいて置換後のサブワードの音韻を濁音化し、前記ラティス構造を生成することを特徴とする請求項4に記載された音声認識装置。
- 複数桁からなる数字の各位の音韻列を、当該位の数字毎に保持する数字辞書記憶手段をさらに備え、
前記サブワードラティス生成手段は、数字列を含む前記所定の表記をサブワードに分割するとともに、該サブワードの音韻列を該数字列の各々の位と該数字とについて前記数字辞書記憶手段が保持している音韻列に置換し、前記ラティス構造を生成することを特徴とする請求項1に記載された音声認識装置。 - 前記サブワードラティス生成手段は、通貨記号を用いた金額を含む前記所定の表記をサブワードに分割するとともに、該サブワードの音韻列を該数字列の各々の位と該数字とについて前記数字辞書記憶手段が保持している音韻列に置換し、前記数字列のサブワードの直後に通貨記号に対応するサブワードを挿入して、さらに前記ラティス構造を生成することを特徴とする請求項6に記載された音声認識装置。
- 前記サブワード辞書記憶手段は、略語のサブワードについて少なくとも音韻列と生起確率とをさらに保持し、
前記サブワードラティス生成手段は、略語を含む前記所定の表記をサブワードに分割するとともに、分割されたサブワードが略語についてのものである場合に該サブワードの音韻列を、前記サブワード辞書記憶手段が保持している略語のサブワードの音韻列に置換し、さらに前記ラティス構造を生成することを特徴とする請求項1に記載された音声認識装置。 - 前記サブワード辞書記憶手段は、旧仮名遣いのサブワードについて少なくとも音韻列と生起確率とをさらに保持し、
前記サブワードラティス生成手段は、旧仮名遣いを含む前記所定の表記をサブワードに分割するとともに、分割されたサブワードが旧仮名遣いについてのものである場合に該サブワードの音韻列を、前記サブワード辞書記憶手段が保持している旧仮名遣いのサブワードの音韻列に置換し、さらに前記ラティス構造を生成することを特徴とする請求項1に記載された音声認識装置。 - 前記サブワード辞書記憶手段は、サブワードについて日本語読みとは異なる読みによる音韻列とその生起確率とをさらに保持することを特徴とする請求項1に記載された音声認識装置。
- 入力音声を音節単位に分離して、分離結果を認識候補の音韻列として出力する音韻列分離手順と、
サブワード毎に少なくとも音韻列と生起確率とを保持するサブワード辞書記憶手順と、
音韻列が未知である所定の表記をサブワードに分割するとともに、前記サブワード辞書記憶手順により保持されているサブワードの生起確率に基づいて、前記所定の表記についてサブワードによるラティス構造を生成するサブワードラティス生成手順と、
前記サブワードラティス生成手順により生成されたラティス構造に基づいてサブワードの音韻列を結合し、該結合された音節を前記所定の表記の音韻列として出力する音韻列推測手順と、
前記音韻列推測手順により生成された前記単語表記の音韻列と前記音韻列分離手順により出力された認識候補の音韻列とを照合し、合致するか否かを判定する照合手順とを、コンピュータに実行させることを特徴とする音声認識プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003083511A JP2004294542A (ja) | 2003-03-25 | 2003-03-25 | 音声認識装置及びそのプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003083511A JP2004294542A (ja) | 2003-03-25 | 2003-03-25 | 音声認識装置及びそのプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004294542A true JP2004294542A (ja) | 2004-10-21 |
Family
ID=33398967
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003083511A Abandoned JP2004294542A (ja) | 2003-03-25 | 2003-03-25 | 音声認識装置及びそのプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004294542A (ja) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005258443A (ja) * | 2004-03-10 | 2005-09-22 | Microsoft Corp | 発音グラフを使用して新しい単語の発音学習を改善すること |
JP2006330577A (ja) * | 2005-05-30 | 2006-12-07 | Alpine Electronics Inc | 音声認識装置及び音声認識方法 |
US8719021B2 (en) | 2006-02-23 | 2014-05-06 | Nec Corporation | Speech recognition dictionary compilation assisting system, speech recognition dictionary compilation assisting method and speech recognition dictionary compilation assisting program |
JP2014145842A (ja) * | 2013-01-28 | 2014-08-14 | Fujitsu Ltd | 発話解析装置、音声対話制御装置、方法、及びプログラム |
JP2015227915A (ja) * | 2014-05-30 | 2015-12-17 | 富士通株式会社 | 音声認識装置、音声認識方法及び音声認識プログラム |
CN109753659A (zh) * | 2018-12-28 | 2019-05-14 | 北京猎户星空科技有限公司 | 语义处理方法、装置、电子设备和存储介质 |
-
2003
- 2003-03-25 JP JP2003083511A patent/JP2004294542A/ja not_active Abandoned
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005258443A (ja) * | 2004-03-10 | 2005-09-22 | Microsoft Corp | 発音グラフを使用して新しい単語の発音学習を改善すること |
JP2006330577A (ja) * | 2005-05-30 | 2006-12-07 | Alpine Electronics Inc | 音声認識装置及び音声認識方法 |
US8719021B2 (en) | 2006-02-23 | 2014-05-06 | Nec Corporation | Speech recognition dictionary compilation assisting system, speech recognition dictionary compilation assisting method and speech recognition dictionary compilation assisting program |
JP2014145842A (ja) * | 2013-01-28 | 2014-08-14 | Fujitsu Ltd | 発話解析装置、音声対話制御装置、方法、及びプログラム |
JP2015227915A (ja) * | 2014-05-30 | 2015-12-17 | 富士通株式会社 | 音声認識装置、音声認識方法及び音声認識プログラム |
CN109753659A (zh) * | 2018-12-28 | 2019-05-14 | 北京猎户星空科技有限公司 | 语义处理方法、装置、电子设备和存储介质 |
CN109753659B (zh) * | 2018-12-28 | 2023-08-04 | 北京猎户星空科技有限公司 | 语义处理方法、装置、电子设备和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5040909B2 (ja) | 音声認識辞書作成支援システム、音声認識辞書作成支援方法及び音声認識辞書作成支援用プログラム | |
KR100486733B1 (ko) | 음소 결합정보를 이용한 연속 음성인식방법 및 장치 | |
TWI532035B (zh) | 語言模型的建立方法、語音辨識方法及電子裝置 | |
JP5318230B2 (ja) | 認識辞書作成装置及び音声認識装置 | |
US5949961A (en) | Word syllabification in speech synthesis system | |
EP2477186B1 (en) | Information retrieving apparatus, information retrieving method and navigation system | |
JP5310563B2 (ja) | 音声認識システム、音声認識方法、および音声認識用プログラム | |
JP2008262279A (ja) | 音声検索装置 | |
JP2007047412A (ja) | 認識文法モデル作成装置、認識文法モデル作成方法、および、音声認識装置 | |
JP2008243080A (ja) | 音声を翻訳する装置、方法およびプログラム | |
JP4738847B2 (ja) | データ検索装置および方法 | |
JP2019012095A (ja) | 音素認識辞書生成装置および音素認識装置ならびにそれらのプログラム | |
JP5335165B2 (ja) | 発音情報生成装置、車載情報装置およびデータベース生成方法 | |
JP2012003090A (ja) | 音声認識装置および音声認識方法 | |
JP2004294542A (ja) | 音声認識装置及びそのプログラム | |
Pellegrini et al. | Automatic word decompounding for asr in a morphologically rich language: Application to amharic | |
JP3911178B2 (ja) | 音声認識辞書作成装置および音声認識辞書作成方法、音声認識装置、携帯端末器、音声認識システム、音声認識辞書作成プログラム、並びに、プログラム記録媒体 | |
JP2004133003A (ja) | 音声認識辞書作成方法及びその装置と音声認識装置 | |
JP2011007862A (ja) | 音声認識装置、音声認識プログラム、および音声認識方法 | |
JP4733436B2 (ja) | 単語・意味表現組データベースの作成方法、音声理解方法、単語・意味表現組データベース作成装置、音声理解装置、プログラムおよび記憶媒体 | |
Smit | Modern subword-based models for automatic speech recognition | |
JP2012255867A (ja) | 音声認識装置 | |
JP3378547B2 (ja) | 音声認識方法及び装置 | |
JP6003127B2 (ja) | 言語モデル作成プログラム及び言語モデル作成装置 | |
US20220138420A1 (en) | Difference extraction device, method and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20051222 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20080609 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080708 |
|
A762 | Written abandonment of application |
Free format text: JAPANESE INTERMEDIATE CODE: A762 Effective date: 20080805 |