以下、図面を参照して、本発明の一実施形態を詳細に説明する。なお、この実施形態により本発明が限定されるものではない。また、図面の記載において、同一部分には同一の符号を付して示している。
[実施の形態1]
本発明の実施の形態1について説明する。本発明の実施の形態1では、音声認識精度推定部からの出力に対して回帰分析に基づく補正を施すことによって、高精度な最終的な推定音声認識精度の出力を実現する。
[音声認識精度推定装置の構成]
まず、実施の形態1に係る音声認識精度推定装置の構成について説明する。図1は、実施の形態1における音声認識精度推定装置の構成の一例を模式的に示す図である。
図1に示すように、実施の形態1に係る音声認識精度推定装置10は、例えばROM(Read Only Memory)、RAM(Random Access Memory)、CPU(Central Processing Unit)等を含むコンピュータ等に所定のプログラムが読み込まれて、CPUが所定のプログラムを実行することで実現される。図1に示すように、音声認識精度推定装置10は、音声認識精度推定部400、補正部12、係数記憶部13及び不正推定精度補正部14(精度補正部)を有する。
音声認識精度推定部400は、入力された音声を音声認識し、認識された単語である認識結果単語ごとに正解確率、置換誤り確率、挿入誤り確率及び削除誤り確率を示す単語アライメントネットワークを用いて音声認識精度を推定し、推定した推定音声認識精度xを出力する。この単語アライメントネットワークは、認識結果単語が複数集まった認識結果単語列の一表現形式である単語コンフュージョンネットワークに、簡単な変換処理を施すことで得ることができる。なお、後述するセグメントは、単語区間に相当するため、認識結果単語と同義と言える。
図2は、音声認識精度推定部400の構成を示すブロック図である。図2に示すように、音声認識精度推定部400は、音声認識部430、単語アライメントネットワーク取得部440及び確率的認識精度計算部450を有する。
音声認識部430は、入力音声を音声認識し、認識結果を、単語コンフュージョンネットワークと呼ばれる複数の認識結果単語列をコンパクトに確率的に表現した形式で得る(詳細は、L. Mangu, E. Brill and A. Stolcke, “Finding consensus in speech recognition: word error minimization and other applications of confusion networks”, Computer Speech and Language, vol. 14, pp. 373-400, 2000.参照)。そして、音声認識部430は、音声認識の過程において、ディジタル音声信号の特徴量ベクトルの時系列への変換や、音響モデルと言語モデルとを用いた尤度計算等の処理を行う。
単語コンフュージョンネットワークは、セグメントごとにいずれかの認識結果単語が存在する確率、及び、いずれかの認識結果単語も存在しない確率(以下、εの存在確率という。)を表示する。例えば、単語コンフュージョンネットワークでは、そのセグメントに、認識結果として存在し得る複数の単語がアーク(弧)として記述されたものであり、セグメント境界では、各アークは、ノード(節)で束ねられている。
この場合、セグメントに対し、認識結果として存在し得る単語として、実際の単語のほかεも含まれる。ただし、εは、前述したように、このセグメントには認識結果単語は存在しないということを示す。そして、最初のセグメントから最後のセグメントまで、εも含めて、存在し得る単語の数を乗算した数が、この単語コンフュージョンネットワークが表現し得る認識結果単語列の種類数となる。各セグメントの中には確率値が付与されており、これらの値は、各単語がそのセグメント中に存在し得る確率を示す。なお、これらの確率は加算すると1となる。
ここで、ある入力音声を音声認識して得られる単語コンフュージョンネットワーク中のセグメント数をJ、j番目のセグメントをQj(j=1,2,・・・,J)、Qjに存在し得る単語数をWj,k(k=1,2,・・・,K)、それらの存在確率をP(Wj,k)とすることによって、この単語コンフュージョンネットワークで表される認識結果単語列種類数は、以下の(5)式となる。
また、以下の(6)式が成り立つ。
そして、単語アライメントネットワーク取得部431は、音声認識部430から出力された単語コンフュージョンネットワークを単語アライメントネットワークに変換する。単語アライメントネットワークは、いずれかのセグメントにおいて、εが最大存在確率とならない場合に、最大存在確率を有する単語の存在確率を、当該セグメントにおける正解確率とし、当該セグメントにおける最大存在確率を有しないε以外の単語の存在確率の合計を当該セグメントにおける置換誤り確率とし、当該セグメントにおけるεの存在確率を当該セグメントにおける挿入誤り確率とし、いずれかのセグメントにおいてεが最大存在確率となる場合に、当該セグメントにおける最大存在確率を有しない単語の存在確率の合計を当該セグメントにおける削除誤り確率として、セグメントごとに、正解/置換誤り/挿入誤り/削除誤りの確率を示したものである。
このように、単語アライメントネットワークとは、このアライメント結果を示すものであり、基になる単語コンフュージョンネットワークが複数の認識結果単語列を確率的に表現するものであることから、単語アライメントネットワークは、複数のアライメント結果を示すものとなる。
単語アライメントネットワーク取得部440は、一つの発話に対する一つの認識結果単語列中の各単語wj(j=1,2,・・・,J:Jは、認識結果単語列中の単語数である。)が、正解(C)である確率P(Cj)、置換誤り(S)である確率P(Sj)、挿入誤り(I)である確率P(Ij)を推定する。なお、P(Cj)+P(Sj)+P(Ij)=1である。そして、単語アライメントネットワーク取得部440は、(J+1)番目のダミーの単語として、文末単語を考慮し、wjに先行する単語「間」(w(j−1)とwjとの間)に、削除誤りが存在する確率P(Dj)(j=1,2,・・・,j+1)を推定する。
ここでは、wjを基準として、wjに「先行」する単語間に存在する削除誤りを考えているが、これに限らず、wjに「後続」する単語間に存在する削除誤りを考えてもよい。両者の違いは、単語間を指し示す際に、どの単語を基準に考えるかであり、両者に本質的な違いはない。また、一つの単語間に複数の削除誤りが存在する可能性があり、そのような場合には、P(Dj)の値が1より大きくなることもある。したがって、厳密には、P(Dj)は確率値とは言えないが、ここでは便宜的に確率値と呼ぶ。
図3は、単語アライメントネットワーク取得部440の構成を示すブロック図である。図3に示すように、単語アライメントネットワーク取得部440は、1−best認識結果単語列取得部441、正解確率計算部442、置換誤り確率計算部443、挿入誤り確率計算部444及び削除誤り確率計算部445を有する。
1−best認識結果単語列取得部441は、単語コンフュージョンネットワークから1−best認識結果単語列を取得する。ここで、一つの単語コンフュージョンネットワーク中の各セグメントで最大の存在確率を持つ単語を連結したものを1−best認識結果単語列という。通常の場合、1−best認識結果単語列は、最終的な音声認識結果単語列である。なお、単語コンフュージョンネットワークを介さずに、最終的な音声認識結果単語列を得る方法もある。
正解確率計算部442は、得られた1−best認識結果単語が、正味の単語である場合には、当該εでない1−best認識結果単語を、セグメントjにおける正解単語を表す単語アライメント結果シンボルCj(jはセグメント番号)に変え、当該1−best認識結果単語の存在確率を正解確率であるP(Cj)として付与する。
置換誤り確率計算部443は、εでない1−best認識結果単語が実は正解単語ではなく、これに競合、対立する認識結果単語(εではない)が正解単語である場合には、対立する認識結果単語(εではない)を一つに束ねて置換誤りを表す単語アライメント結果シンボルSjとし、置換誤り確率P(Sj)を、εでない対立候補の存在確率の和として付与する。これは、εでない1−best認識結果単語に競合、対立する認識結果単語(εではない)が正解単語であるとすると、1−best認識結果単語は置換誤り(Substitution_error)となるためである。
挿入誤り確率計算部444は、εでない1−best認識結果単語が、実は正解単語ではなくε(単語なし)が正しい場合には、このεを、挿入誤りを表す単語アライメント結果シンボルに変え、挿入誤り確率P(Ij)をP(ε)として付与する。このεでない1−best認識結果単語は挿入誤り(Insertion_error)となるためである。
一方、1−best認識結果単語がεである場合、このεと競合(対立)する認識結果単語が存在する場合には、ε、すなわち、「単語なし」が実は正しくなく、このセグメントに他のεでない対立候補が存在するのが正しいとすると、このεは、削除誤り(Delition_error)となる。よって、削除誤り確率計算部445は、他のεでない対立候補を一つに束ねて削除誤りを表す単語アライメント結果シンボルDjとし、削除誤り確率P(Dj)を、εでない対立候補の存在確率の和として付与する。
そして、図2に戻り、確率的認識精度計算部450は、単語アライメントネットワーク取得部440から出力された単語アライメントネットワークを入力として、音声認識精度を計算し、出力する。確率的認識精度計算部450は、単語アライメントネットワーク上の各セグメント中の各単語アライメント結果シンボルの確率値を加算することで計算する。
まず、確率的認識精度計算部450は、単語アライメントネットワーク取得部440が推定したCSIDの確率値を、そのままCSIDの個数とみなして、正解単語数の推定値E(#C)、置換誤り単語数の推定値E(#S)、挿入誤り単語数の推定値E(#I)、削除誤り単語数の推定値E(#D)、正解単語列中の単語数の推定値E(#N)を、それぞれ以下に示す(7)〜(11)式を用いて求める。なお、j番目のセグメントをQj(j=1,2,・・・,J)、Qjに存在し得る単語アライメント結果シンボルをAj(A=C/S/I/D(なお、「/」は「または」の意味である。))、その存在確率をP(Aj)とする。
0以上の整数である#C,#S,#D,#Iとは異なり、これらのE(#C),E(#S),E(#I),E(#D),E(#N)は、小数点以下の数値を取り得る。また、E(#C),E(#S),E(#I),E(#D),E(#N)は、それぞれの認識結果単語列に含まれるCSIDの数、及び、単語数Nの推定値となる。確率的認識精度計算部450は、これらの値を得ることによって、以下の(12)式及び(13)式を用いて、認識結果単語列の単語正解率と、単語正解精度とを求めることができる。
前述の図23の例の場合、確率的認識精度計算部450は、E(#C),E(#S),E(#I),E(#D),E(#N)を、以下の(14)〜(18)式に示すように、推定できる。
したがって、確率的認識精度計算部450は、図23の例に対して、認識結果単語列の単語正解率と、単語正解精度とを、以下の(19),(20)式を用いて推定する。確率的認識精度計算部450は、(19),(20)式を用いて推定した単語正解率或いは単語正解精度を、推定音声認識精度xとして、補正部12に出力する。
なお、この例では、一つの認識結果単語列の音声認識精度を推定したが、上記の通り、複数発声に対する複数の認識結果単語列に対して、E(#C),E(#S),E(#I),E(#D),E(#N)を推定して、その複数の認識結果単語列に対する音声認識精度を推定することもある。この後者の例の方が多い。そして、以下では、音声認識精度を推定する対象を、音声認識精度推定単位と呼ぶ。上記の通り、一つの認識結果単語列が音声認識精度推定単位となることがある。また、複数の講演を含む講演音声コーパスを用いた音声認識を例とし、講演ごとに音声認識精度を推定するのであれば、「講演」が音声認識精度推定単位となる。
続いて、図1に戻り、補正部12について説明する。補正部12は、以下の(21)式に示す単回帰式により、音声認識精度推定部400から出力された元の推定音声認識精度xを、推定音声認識精度yに補正する。
なお、予め、本実施の形態1では、学習データとして準備されたN個のxとyとのペア(xn,yn)(n=1,2,・・・,N)を基に、最小二乗法により、解析的に、以下の(22),(23)式から係数(a,b)が求められている。補正処理に使用する係数は、音声認識精度推定装置10が求めてもよく、他の装置が求めたものを音声認識精度推定装置10が取得してもよい。
そして、係数記憶部13は、上記(22),(23)式を用いて予め求められた係数(a,b)を記憶する。
ここで、(22),(23)式を用いて求めた係数(a,b)を用いて、(21)式によってxをyに補正した場合、yが不正な値を取ることもあり得る。例えば、不正な値とは、(1)式で定義される単語正解率である場合には、0%より小さな値、または、100%より大きな値である。
このため、不正推定精度補正部14は、補正の結果として、yが0%より小さな値を取った場合には、yの値を0%に補正する。また、不正推定精度補正部14は、yが100%より大きな値を取った場合には、yの値を100%にさらに補正する。またyが(2)式で定義される単語正解精度である場合には、不正な値は、100%より大きな値である((2)式での定義より、単語正解精度は0%よりも小さな値を取り得る)。このため、不正推定精度補正部14は、補正の結果としてyが100%より大きな値を取った場合には、yの値を100%にさらに補正する。不正推定精度補正部14は、yの値をさらに補正した結果を、最終的な推定音声認識精度として出力する。
[音声認識精度推定装置の処理手順]
次に、音声認識精度推定装置10が、入力音声に対する最終的な推定音声認識精度を出力するまでの処理について説明する。図4は、図1に示す音声認識精度推定装置10が、入力音声に対する最終的な推定音声認識精度を出力するまでの処理手順を示すフローチャートである。
まず、音声認識精度推定装置10では、音声認識精度推定部400が、音声入力を受け付け(ステップS11)、入力された音声に対して、単語アライメントネットワークに基づいて音声認識精度の推定を実行し、推定音声認識精度xを出力する音声認識精度推定処理を行う(ステップS12)。
続いて、補正部12は、単回帰式により、音声認識精度推定部400から出力された元の推定音声認識精度xを、推定音声認識精度yに補正する単回帰式による補正処理を行う(ステップS13)。そして、不正推定精度補正部14は、yが0%より小さな値を取った場合にはyの値を0%に補正し、yが100%より大きな値を取った場合にはyの値を100%にさらに補正する不正推定精度補正処理を行い(ステップS14)、最終的な推定音声認識精度を出力する(ステップS15)。
[実施の形態1の効果]
ここで、音声認識精度推定部400から出力された推定音声認識精度である、30個の講演を含む講演音声コーパスに対する音声認識結果に対し、音声認識精度推定単位を講演として、音声認識精度を推定した結果について例示する。図5は、音声認識精度推定部400から出力された単語正解精度と、真の単語正解精度との対応関係を示す図である。図5では、横軸に、人手で作成した正解文を用いて算出した真の単語正解精度を示し、縦軸に、音声認識精度推定部400から出力された単語正解精度を示す。
この図5に示すように、対角線上に音声認識精度推定部400による推定結果が分布すれば、高い精度で音声認識精度推定が実現されていることになるものの、音声認識精度推定部400による実際の推定結果は、特に真の単語正解精度が低い領域において、真の単語正解精度からのずれが大きい。また、図5に示すように、音声認識精度推定部400による実際の推定結果は、対角線上ではないものの、ほぼ直線上に分布することが多いことが分かる。
そこで、本実施の形態1では、補正部12において、単回帰式により、音声認識精度推定部400から出力された推定音声認識精度xを、推定音声認識精度yに補正している。
図6は、音声認識精度推定装置10から出力された単語正解精度と、真の単語正解精度との対応関係を示す図である。図6に示すように、音声認識精度推定装置10により補正された推定音声認識精度は、ほぼ対角線上に分布しており、高精度な補正が行えていることが分かる。
このように、本実施の形態1によれば、回帰式により、音声認識精度推定部400から出力された推定音声認識精度を補正することによって、音声認識精度を精度よく推定できる。
なお、図3及び図4の例では、音声認識精度推定単位は、「講演」であったが、一つの発話(一つの認識結果単語列)としてもよいし、他の単位であってもよい。
[変形例1]
実施の形態1においては、音声認識精度推定装置として、音声認識精度推定部400を有する構成を例として説明したが、音声認識精度推定部400に代えて、図7に示す音声認識精度推定部500を有する構成であってもよい。図7は、音声認識精度推定部の他の構成を示すブロック図である。
図7に示すように、音声認識精度推定部500は、音声認識部430、単語アライメントネットワーク取得部440、1−best単語アライメント結果シンボル列取得部560及び認識精度計算部570を有する。
1−best単語アライメント結果シンボル列取得部560は、単語アライメントネットワークを1−best単語アライメントシンボル列に変換する。1−best単語アライメントシンボル列とは、単語アライメントネットワークにおいて、いずれのセグメントにおける最大確率が正解確率である場合にシンボルC、いずれかのセグメントにおける最大確率が置換誤り確率である場合にシンボルS、いずれかのセグメントにおける最大確率が挿入誤り確率である場合にシンボルI、いずれかのセグメントにおける最大確率が削除誤り確率である場合にシンボルDを、セグメントごとに付与して連結したものである。
1−best単語アライメント結果シンボル列への変換処理は、上記した単語コンフュージョンネットワークから、1−best認識結果単語列を得る処理と同じで、単語アライメントネットワーク上の各セグメント中で最高の存在確率を持つ単語アライメント結果シンボルを連結していく。ここで、1−best単語アライメント結果シンボルCの個数を正解単語数の推定値E(#C)、1−best単語アライメント結果シンボルSの個数を置換誤り単語数の推定値E(#S)、1−best単語アライメント結果シンボルDの個数を削除誤り単語数の推定値E(#D)、1−best単語アライメント結果シンボルC,S,Dの個数の和を認識結果単語数の推定値E(#N)と書くことができる。したがって、E(#C),E(#S),E(#D),E(#N)は、0以上の整数として数え上げることができる。
ただし、1−best単語アライメント結果シンボル列には、挿入誤りを示す単語アライメント結果シンボルIが含まれてないため、認識結果単語列中の挿入誤り単語数の推定値E(#I)は得られない。しかし、ここで、音声認識においては、挿入誤りと脱落(削除)誤り数が同じような値になることが多いため(L. Zhou, Y. Shi, D. Zhang and A. Sears, “Discovering Cues to Error Detection in Speech Recognition Output: A User-Centered Approach”,Journal of Management Information Systems,Spring 2006, vol. 22, no. 4, pp. 237-270.参照)、E(#I)=E(#D)と推定することは可能である。このため、認識精度計算部570において、以下の(24),(25)式を用いて単語正解率、単語正解精度を算出する。
このように、本変形例1における音声認識精度推定部500は、認識結果単語列中の正解単語数、置換誤り単語数、挿入誤り単語数、削除誤り単語数、正解単語列中の単語数の推定値を整数値で得ることができ、音声認識精度も細かな数値で得ることができる。
[変形例2]
次に、変形例2における識別的音声認識精度推定部600について説明する。実施の形態1では、音声認識精度推定部400に代えて、図8に示す識別的音声認識精度推定部600を有する構成であってもよい。図8は、音声認識精度推定部の他の構成を示すブロック図である。
変形例2における識別的音声認識精度推定部600は、音声認識部630、単語アライメントネットワーク取得部440、1−best単語アライメント結果シンボル列取得部560、1−best認識結果単語列取得部680、単語特徴量ベクトル作成部690、単語関連情報記憶部100、認識結果単語確率的分類モデル記憶部110、認識結果単語確率的分類部120、確率的認識精度計算部130を備える。
音声認識部630は、入力された音声を音声認識し、当該音声認識結果を、単語ラティス及び単語コンフュージョンネットワークの形式で生成する。音声認識部630は、さらに、対立候補情報(後述)を生成し、生成した単語ラティスと、単語コンフュージョンネットワークと、対立候補情報とを出力する。また、音声認識部630は、音声認識の過程において、ディジタル音声信号の特徴量ベクトルの時系列への変換や、音響モデルと言語モデルとを用いた尤度計算などを行う。
図9は、図8に示す音声認識部630の構成を示すブロック図である。図9に示すように、音声認識部630は、単語ラティス生成部631、単語コンフュージョンネットワーク生成部632、対立候補情報生成部633を備える。
単語ラティス生成部631は、単語ラティスを生成する。単語ラティスは、複数の認識結果単語列の表現形式であり、これを変換して単語コンフュージョンネットワークが生成される(詳細は、L. Mangu, E. Brill and A. Stolcke, “Finding consensus in speech recognition: word error minimization and other applications of confusion networks”, Computer Speech and Language, vol. 14, pp. 373-400, 2000.参照)。単語コンフュージョンネットワークのほうが単語ラティスよりも効率よくコンパクトに複数の認識結果単語列を表現するが、単語ラティスには単語コンフュージョンネットワークには保存されていない情報、例えば、認識結果単語の音響尤度や言語尤度が記録されている。
単語コンフュージョンネットワーク生成部632は、生成された単語ラティスから単語コンフュージョンネットワークを生成する。そして、対立候補情報生成部633は、単語ラティス及び単語コンフュージョンネットワークから対立候補情報を生成する。対立候補情報とは、ある認識結果を認識中(探索処理実行中)に、対立候補の単語はいくつあったかを示す情報のことである。
そして、単語アライメントネットワーク取得部440による処理、1−best単語アライメント結果シンボル列取得部560による処理が実行されることによって、それぞれ単語アライメントネットワーク、1−best単語アライメント結果シンボル列が生成される。
そして、1−best認識結果単語列取得部680は、図3に示す1−best認識結果単語列取得部441と同様の処理を行うことによって、音声認識部630から出力された単語コンフュージョンネットワークを入力として、1−best認識結果単語列を取得する。
単語特徴量ベクトル作成部690は、1−best認識結果単語列中の各単語(εも含む)に対して、単語コンフュージョンネットワークから得られる情報(存在確率、競合単語の数)、単語ラティスから得られる情報(音響尤度、言語尤度)、対立候補情報、単語アライメントネットワークから得られる情報(単語アライメント結果シンボルAj(A=C/S/I/D)の存在確率P(Aj))、1−best単語アライメント結果シンボル列から得られる情報(単語アライメント結果シンボル)を取得する。また、同時に、単語関連情報記憶部100から認識結果単語に関する情報(単語関連情報)を取得する。単語関連情報は認識結果単語の品詞情報などを表す。これらの情報は、単語関連情報記憶部100から抽出する。単語特徴量ベクトル作成部690は、これらの入力情報を並べて、単語特徴量ベクトル列を作成する。
認識結果単語確率的分類部120は、単語特徴量ベクトル作成部690で作成された1−best認識結果単語列中の各単語(εも含む)の単語特徴量ベクトル列を入力として、認識結果単語確率的分類モデル記憶部110に記憶された認識結果単語確率的分類モデル(モデルパラメータ)を用いて、1−best認識結果単語列中の各単語(εも含む)を確率的に単語アライメント結果シンボルに分類し、各シンボルに対し確率を付与する。なお、セグメントごとに単語アライメント結果シンボルと各シンボルの確率とを対にして表記した結果を確率的単語分類結果と呼ぶ。
これを別の表現にした場合、1−best認識結果単語列中の各単語(εも含む)の単語特徴量ベクトル列と、予め学習された認識結果単語確率的分類モデル(モデルパラメータ)とを用いて付与した、1−best認識結果単語列中の各単語が正解である確率、置換誤りである確率、挿入誤りである確率、削除誤りである確率、ε(認識結果単語なし)である確率、をセグメントごとに表記した結果を、確率的単語分類結果ということができる。
すなわち、例えば、1−best認識結果単語列中のj番目の1−best認識結果単語に対して、それが正解である確率P(Cj)、置換誤りである確率P(Sj)、挿入誤りである確率P(Ij)、削除誤りである確率P(Dj)、εである確率P(εj)を付与する。ここで、P(Cj)+P(Sj)+P(Ij)+P(Dj)+P(εj)=1である。
なお、認識結果単語確率的分類モデルは、条件付確率場(Conditional Random_Fields:CRF)(例えば、J. Lafferty, A. McCallum and F. Pereira, “Conditional Random Fields: Probabilistic Models for Segmenting and Labeling Sequence Data,”Proc. ICML, pp. 282-289, 2001.参照)などであり、学習データを用いて、1−best認識結果単語列中の各単語の単語特徴量ベクトル列(当該単語の単語特徴量ベクトルのみではなく、当該単語の前後の数単語の単語特徴量ベクトルが用いられることもある。これは、以下の変形例でも同様である。)と、当該単語が正解である確率、置換誤りである確率、挿入誤りである確率、削除誤りである確率、εである確率の関係をあらかじめ学習しておく。
そして、確率的認識精度計算部130は、図2に示す確率的認識精度計算部450と同様に、確率的単語分類結果を用いて、音声認識精度を計算し、計算した音声認識精度を出力する。
なお、1−best認識結果単語列中の正解単語数の推定値E(#C)、置換誤り単語数の推定値E(#S)、挿入誤り単語数の推定値E(#I)、削除誤り単語数の推定値E(#D)は、それぞれ(7)〜(10)式を用いて計算できる。
また、本変形例では、単語特徴量ベクトル作成部690は、音声認識部630から取得するいずれの情報を用いて、単語特徴量ベクトル列を生成してもよい。この場合、認識結果単語確率的分類モデル記憶部110には、上記入力情報のバリエーションに合わせて予め学習した認識結果単語確率的分類モデルを記憶しておく。そして、認識結果単語確率的分類部120は、単語特徴量ベクトル作成部690で作成された1−best認識結果単語列中の各単語(εも含む)の単語特徴量ベクトル列を入力として、認識結果単語確率的分類モデル記憶部110に記憶された認識結果単語確率的分類モデルを用いて、1−best認識結果単語列中の各単語(εも含む)を確率的に単語アライメント結果シンボルに分類し、各シンボルに対して確率を付与することとすればよい。
このように、本変形例2における識別的音声認識精度推定部600は、認識結果単語確率的分類モデルを用いることによって、認識結果単語列中の各単語の分類(正解/置換誤り/挿入誤り/削除誤り)を確率的に推定でき、さらに、それらを基に、認識結果単語列中の正解単語数、置換誤り単語数、挿入誤り単語数、削除誤り単語数、正解単語列中の単語数の推定値が得られ、かつ、音声認識精度も本来の細かな数値で得ることができる。そして、変形例2においては、従来よりも、より詳細な単語単位の特徴量ベクトルを用いるので、より高精度な認識精度推定が可能になる。
そして、変形例2では、識別的音声認識精度推定部600において、認識結果単語確率的分類モデルの学習データ量が少なく音声認識精度の補正を行うことが難しい場合であっても、後段の補正部12によって回帰的に音声認識精度を補正できるため、音声認識精度を精度よく推定できる。認識結果単語確率的分類モデルを用いる以降の変形例3〜5についても同様の効果を奏する。
[変形例3]
次に、変形例3における識別的音声認識精度推定部700について説明する。実施の形態1では、音声認識精度推定部400に代えて、図10に示す識別的音声認識精度推定部700を有する構成であってもよい。図10は、音声認識精度推定部の他の構成を示すブロック図である。
図10に示すように、変形例3における識別的音声認識精度推定部700は、変形例2における識別的音声認識精度推定部600と比して、さらに、認識結果単語分類確定部140、認識精度計算部150を有する。
認識結果単語分類確定部140は、認識結果単語の確率的分類を基に、認識結果単語の単語アライメント結果シンボルを確定する。すなわち、認識結果単語に付与されている、正解である確率P(Cj)、置換誤りである確率P(Sj)、挿入誤りである確率P(Ij)、削除誤りである確率P(Dj)、εである確率P(εj)を比較し、最高の確率を与える単語アライメント結果シンボルに認識結果単語の分類を確定する。なお、変形例3においても、E(#C),E(#S),E(#D),E(#N)は、0以上の整数として数え上げることができる。
なお、認識精度計算部150は、図2に示す確率的認識精度計算部450と同様に、認識結果単語分類確定部140が出力結果を用いて、音声認識精度を計算し、計算した音声認識精度を出力する。
このように、変形例3における識別的音声認識精度推定部700を用いた場合、変形例2と同様に、認識結果単語列中の各単語の分類(正解/置換誤り/挿入誤り/削除誤り)を確率的に推定でき、さらに、それらを基に、認識結果単語列中の正解単語数、置換誤り単語数、挿入誤り単語数、削除誤り単語数、正解単語列中の単語数の推定値が得られ、かつ、音声認識精度も本来の細かな数値で得ることができる。そして、変形例3では、変形例2と同様に、従来よりも、より詳細な単語単位の特徴量ベクトルを用いるので、より高精度な認識精度推定が可能になる。
[変形例4]
次に、変形例4における識別的音声認識精度推定部800について説明する。実施の形態1では、音声認識精度推定部400に代えて、図11に示す識別的音声認識精度推定部800を有する構成であってもよい。図11は、音声認識精度推定部の他の構成を示すブロック図である。
図11に示すように、変形例4における識別的音声認識精度推定部800は、音声認識部630、単語アライメントネットワーク取得部440、1−best単語アライメント結果シンボル列取得部560、1−best認識結果単語列取得部680、単語特徴量ベクトル作成部690、単語関連情報記憶部100、認識結果単語確率的分類モデル記憶部110、CSI分類部160、削除誤り確率的検出部170、削除誤り確率的検出モデル記憶部180、確率的認識精度計算部130を有する。この識別的音声認識精度推定部800は、変形例2の識別的音声認識精度推定部600の構成に加えて、削除誤り確率的検出部170、削除誤り確率的検出モデル記憶部180を有する。また、この識別的音声認識精度推定部800においては、変形例2の識別的音声認識精度推定部600の認識結果単語確率的分類部120が、CSI分類部160及び削除誤り確率的検出部170に変更されている。
前述の変形例2では、1−best認識結果単語列中の正味の単語及びεに対して、同一内容の単語特徴量ベクトル列を付与している。実際には、ε以外の正味の単語と、εとに、同一内容の単語特徴量ベクトル列を付与することは難しい場合がある。例えば、ε以外の正味の単語に対しては言語確率を特徴量ベクトルの一次元として付与することが可能であるが、εに対しては付与することができない。また、変形例2では、1−best認識結果単語列中の各単語(εも含む)を、一つの認識結果単語確率的分類部120で、正解(C)、置換誤り(S)、挿入誤り(I)、削除誤り(D)、ε(認識結果単語なし)という5シンボルに分類しているが、分類器の数に対してシンボル数が多く、高い分類精度を得ることができない場合がある。
そこで、本変形例4では、単語アライメントネットワークによる分類結果(正解(C)、置換誤り(S)、挿入誤り(I)、削除誤り(D)、ε(認識結果単語なし)をある程度正しいものとする。すなわち、1−best認識結果単語列中のε以外の正味の単語は、単語アライメントネットワークによる分類結果(正解(C)、置換誤り(S)、挿入誤り(I)、削除誤り(D)、ε(認識結果単語なし)、すなわち、図2の出力結果)をある程度正しいものとして正解(C)、置換誤り(S)、挿入誤り(I)、削除誤り(D)に分類され、εの区間は、削除誤り(D)かεのまま(すなわち削除誤りなし、No−D)に分類されるものとする。このような考えの下で、1−best認識結果単語列中のε以外の正味の単語とεとに、それぞれ別の内容の単語特徴量ベクトル列を付与し、それぞれ別の分類部で分類を実行することにする。
したがって、CSI分類部160は、1−best認識結果単語列中のε以外の正味の単語を、認識結果単語確率的分類モデルを用いて、正解(C)、置換誤り(S)、挿入誤り(I)の3シンボルのいずれかに分類し、各シンボルに対し確率を付与して、CSI単語分類結果として出力する。
そして、削除誤り確率的検出部170は、1−best認識結果単語列のεを、削除誤り確率的検出モデル(モデルパラメータ)を用いて削除誤り(D)、削除なし誤り(No−D,ε)の2シンボルのいずれかに分類し、各シンボルに対し確率を付与して、確率的削除誤り検出結果として出力する。
なお、別の表現では、CSI分類部160は、1−best認識結果単語列中のε以外の各単語の単語特徴量ベクトル列と、予め学習された認識結果単語確率的分類モデルとを用いて、1−best認識結果単語列中のε以外の各単語が、正解である確率P(Cj)、置換誤りである確率P(Sj)、挿入誤りである確率P(Ij)を、セグメントごとに表記したCSI単語分類結果を生成する。また、削除誤り確率的検出部170は、1−best認識結果単語列中のεの単語特徴量ベクトル列と、予め学習された削除誤り確率的検出モデルとを用いて、1−best認識結果単語列中のεが、削除誤りである確率P(Dj)、εである確率P(εj)を、セグメントごとに表記した確率的削除誤り検出結果を生成する。
そして、確率的認識精度計算部130は、CSI単語分類結果と、確率的削除誤り検出結果とを併せて、確率的単語分類結果として扱い、これらの確率的単語分類結果を用いて、音声認識精度を計算し、計算した音声認識精度を出力する。
[変形例5]
次に、変形例5における識別的音声認識精度推定部1000について説明する。実施の形態1では、音声認識精度推定部400に代えて、図12に示す識別的音声認識精度推定部1000を有する構成であってもよい。図12は、音声認識精度推定部の他の構成を示すブロック図である。
図12に示すように、変形例5における識別的音声認識精度推定部1000は、変形例4における単語特徴量ベクトル作成部690に代えて、連結単語特徴量ベクトル作成部190を有し、削除誤り確率的検出部170に代えて、削除誤り数検出部200を有する。
変形例4では、単語アライメントネットワークによる分類結果(正解(C)、置換誤り(S)、挿入誤り(I)、削除誤り(D)、ε(認識結果単語なし)、すなわち、図2の出力結果)をある程度正しいものとして考えたため、削除誤りが生じる可能性のある個所は、元の単語アライメントネットワークのεの区間に限られていた。これに対し、実際には、削除誤りは、単語アライメントネットワークのεの区間だけでなく、文頭及び文末も含めた任意の単語間に複数個出現する可能性がある。
そこで、本変形例5では、1−best認識結果単語列中の各正味タイミングの単語を、変形例4と同様にCSI分類部160により、正解(C)、置換誤り(S)、挿入誤り(I)の3シンボルに分類するとともに、各正味の単語を基準として、その前の(先行する)正味の単語との間に削除誤りが何個あるかを示す削除誤り確率を、変形例4と同様に、削除誤り数検出部200において検出する。
具体的には、連結単語特徴量ベクトル作成部190は、正味の単語(ε以外の単語)に対して、単語特徴量ベクトル列を生成し、当該正味の単語に先行する正味の単語との間に存在するεの単語特徴量ベクトルを生成して、これらの単語特徴量ベクトル列を連結して連結単語特徴量ベクトルを取得する。連結単語特徴量ベクトル作成部190は、この処理を、全ての正味の単語について行い、連結単語特徴量ベクトルを生成する。
そして、CSI分類部160は、この連結単語特徴量ベクトルを用いて、変形例4と同様に、1−best認識結果単語列中の正味の単語を、正解(C)、置換誤り(S)、挿入誤り(I)の3シンボルに分類して、確率を付与する。
削除誤り数検出部200は、各正味の単語と先行する正味の単語との間に何個の削除誤りがあるかを示す確率(削除誤りごとの削除誤り確率)を検出する。ここで、Dxを、削除誤りがx個あることを表すシンボルとし、P(Dx)を、削除誤りがx個ある確率、P(ε)をεである確率とする場合、以下の(26)式が成り立つ。
ただし、一つの単語間における削除誤りの数を無限まで考慮することは現実的ではない。このため、xの最大値をy−1として、D´yの意味を削除誤りがy個以上あることを表すシンボルとして、P(D´y)を削除誤りがy個以上ある確率として、無限までをカバーすることが現実的である。この場合、以下の(27)式が成り立つ。
なお、y=1の場合には、以下の(28)式となる。
y=1の場合には、(28)式となるため、削除誤りの数を数えることを中断し、単語間に削除誤りがあるか否かのみを検出する。本変形例5では、CSI単語分類結果と削除誤り数ごとの削除誤り確率とを併せて確率的単語分類結果として扱う。
このため、確率的認識精度計算部130は、変形例2,4と同様に、これらの確率的単語分類結果を用いて、音声認識精度を計算し、計算した音声認識精度を出力する。
ただし、変形例5では、削除誤り数E(#D)の計算(上述の(10)式)については、変更を加える。これは、上述したように、削除誤りに関しては、その数(特に数が多い場合)まで正確に推定することが困難であるためである。このため、現実的には、上述の(27)式で表現されるように、ある単語間に「削除誤りがない(ε)」か、「削除誤りが一つある(D1)」か、「削除誤りが二つある(D2)か、・・・・、「削除誤りがy個以上あるか」、のいずれであるかについて分類を行う。そして、この分類結果から削除誤り数を計算する際には、「削除誤りがy個以上ある(D´y)」を「削除誤りがy個ある(Dy)」として、以下の(29)式により、削除誤り数E(#D)の計算を行う。
ここで、nは、正味の単語間のIDを示し、Dn,xは、単語間nの削除誤り数がx個であることを示し、P(Dn,x)は、Dn,xの確率を示す。
また、上記では、各正味の単語を基準として、その前の(先行する)正味の単語との間に削除誤りが何個あるかを検出するものとしたが、各正味の単語を基準として、その後ろの(後続する)正味の単語との間に削除誤りが何個あるかを検出するものとしてもよい。或いは、これらを両方行って、得られた検出結果確率を平均してもよい。
この変形例5では、任意の単語間に複数個出現する可能性のある削除誤りの検出が可能となる。
[実施の形態2]
次に、実施の形態2について説明する。図13は、実施の形態2における音声認識精度推定装置の構成の一例を模式的に示す図である。
図13に示すように、実施の形態2に係る音声認識精度推定装置20は、図1に示す音声認識精度推定装置10と比して、補正部12及び係数記憶部13に代えて、補正部22及び係数記憶部23を有するとともに、補正部22(第1の補正部)と不正推定精度補正部14との間に、不正CSID数補正部25(第2の補正部)及び認識精度算出部26を有する。
なお、音声認識精度推定装置20では、音声認識精度推定部400は、推定部として機能し、セグメントごとに、正解である確率、置換誤りである確率、挿入誤りである確率、削除誤りである確率を示す単語アライメントネットワークに基づいて求めた、認識結果単語列(一つの発話)に含まれる正解単語数の推定値、置換誤り単語数の推定値、挿入誤り単語数の推定値、削除誤り単語数の推定値を出力する。言い換えると、音声認識精度推定部400は、音声認識精度を算出する根拠となっているCSID数推定値x’(認識結果単語列に含まれる正解単語数の推定値E(#C)、置換誤り単語数の推定値E(#S)、挿入誤り単語数の推定値E(#I)、削除誤り単語数の推定値E(#D))を出力する。
補正部22は、音声認識精度推定部400から出力されたCSID数推定値x’を、単回帰式を用いて補正し、補正されたCSID数推定値y’(E’(#C),E’(#S),E’(#I),E’(#D))を出力する。
具体的には、補正部22は、音声認識精度推定部400から出力されたCSID数推定値x’(E(#C),E(#S),E(#I),E(#D))を、単回帰式((21)式)を用いて補正し、補正後のCSID数(E’(#C),E’(#S),E’(#I),E’(#D))を基に補正された音声認識精度を算出する。ここで、CSID数推定値x’は、E(#C),E(#S),E(#I),E(#D)のいずれかであり、y’は、このCSID数推定値x’対応して補正されたE’(#C),E’(#S),E’(#I),E’(#D)である。なお、補正部22は、予め、E(#C),E(#S),E(#I),E(#D)のそれぞれについて、係数記憶部23が記憶する係数(a,b)を用いて、補正を行う。
係数記憶部23は、予め、E(#C),E(#S),E(#I),E(#D)のそれぞれに対して、個別に(22)式及び(23)式を用いて求められた係数(a,b)を記憶する。この係数(a,b)は、実施の形態1と同様に、学習データとして準備されたN個のx’とy’とのペア(x’n,y’n)(n=1,2,・・・,N)を基に、最小二乗法により、解析的に、(22),(23)式から求められたものである。
ここで、補正部22によって補正されたCSID数推定値y’が不正な値を取り得ることもある。この補正されたCSID数推定値y’は、個数であるので、不正な値とは、0より小さい値である。
このため、不正CSID数補正部25は、補正部22によって補正されたCSID数推定値y’が0より小さな値を取る場合には、補正されたCSID数推定値y’を0に補正する。
認識精度算出部26は、不正CSID数補正部25によってさらに補正されたCSID数推定値を基に、(12)式或いは(13)式を用いて、推定音声認識精度を算出する。なお、ここで得られる推定認識精度は不正である可能性があるので、不正推定精度補正部14は、実施の形態1と同様に、推定精度をさらに補正し、補正後の推定精度を、最終的な推定音声認識精度として出力する。
[音声認識精度推定装置の処理手順]
次に、音声認識精度推定装置20が、入力音声に対する最終的な推定音声認識精度を出力するまでの処理について説明する。図14は、図13に示す音声認識精度推定装置20が、入力音声に対する最終的な推定音声認識精度を出力するまでの処理手順を示すフローチャートである。
図14に示すステップS21は、図4に示すステップS11である。そして、音声認識精度推定部400が、入力された音声に対して、単語アライメントネットワークに基づいて音声認識精度の推定を実行し、CSID数推定値x’を出力する音声認識精度推定処理を行う(ステップS22)。続いて、補正部22は、単回帰式により、音声認識精度推定部400から出力された元のCSID数推定値x’を、CSID数推定値y’に補正する、単回帰式による補正処理を行う(ステップS23)。
そして、不正CSID数補正部25は、補正部22によって補正されたCSID数の推定値y’が0より小さな値を取る場合には、補正されたCSID数推定値y’を0に補正する不正CSID数補正処理を行う(ステップS24)。
続いて、認識精度算出部26は、不正CSID数補正部25によってさらに補正されたCSID数を基に、(12)式或いは(13)式を用いて、推定音声認識精度を算出する認識精度算出処理を行う(ステップS25)。さらに、不正推定精度補正部14は、実施の形態1と同様に、推定精度をさらに補正する不正推定精度補正処理を行って(ステップS26)、補正後の推定精度を、最終的な推定音声認識精度として出力する(ステップS27)。
[実施の形態2の効果]
この実施の形態2のように、音声認識精度推定部400がCSID数推定値x’(認識結果単語列に含まれる正解単語数の推定値E(#C)、置換誤り単語数の推定値E(#S)、挿入誤り単語数の推定値E(#I)、削除誤り単語数の推定値E(#D))を出力した場合も、単回帰式を用いて補正し、補正後のCSID数推定値y’(E’(#C),E’(#S),E’(#I),E’(#D))を基に補正された音声認識精度を算出する。したがって、実施の形態2においても、実施の形態1と同様に、回帰式により、音声認識精度推定部400から出力された推定音声認識精度を補正することによって、音声認識精度を精度よく推定できる。
また、音声認識精度推定装置20は、実施の形態1と同様に、音声認識精度推定部400に代えて、変形例1〜5における音声認識精度推定部500或いは識別的音声認識精度推定部600,700,800,1000を有してもよい。このうち識別的音声認識精度推定部600,700,800,1000を採用した場合、識別的音声認識精度推定部600,700,800,1000からは、認識結果単語確率的分類モデルを用いて補正した正解単語数の推定値、置換誤り単語数の推定値、挿入誤り単語数の推定値及び削除誤り単語数の推定値を出力する。
また、実施の形態2においても、実施の形態1と同様に、音声認識精度推定単位は、図3,4の説明において例示した「講演」のような単位であってもよいし、一つの発話(一つの認識結果単語)としてもよいし、他の単位であってもよい。
[実施の形態3]
次に、実施の形態3について説明する。図15は、実施の形態3における音声認識精度推定装置の構成の一例を模式的に示す図である。
図13に示すように、実施の形態3に係る音声認識精度推定装置30は、図13に示す音声認識精度推定装置20と比して、補正部22及び係数記憶部23に代えて、補正部32及び係数記憶部33を有する。
補正部32は、正解単語数の推定値E’(#C)を、正解単語数の推定値E(#C)、置換誤り単語数の推定値E(#S)、挿入誤り単語数の推定値E(#I)、削除誤り単語数の推定値E(#D)から、重回帰式を用いて求める。補正部32は、E’(#S)、E’(#I),E’(#D)についても同様に、E(#C),E(#S)、E(#I)、E(#D)から、重回帰式を用いて求める。なお、実施の形態2では、補正部32は、例えば、正解単語数の推定値E’(#C)を、音声認識精度推定部400から出力された認識結果単語列に含まれる正解単語数の推定値E(#C)のみに基づき単回帰で求めている。
すなわち、補正部32は、下記に示す重回帰式(30)〜(33)式を用いて、補正されたCSID数推定値y’(E’(#C),E’(#S),E’(#I),E’(#D))を算出する。なお、補正部32は、係数記憶部33が記憶する係数(aL,bL,cL,dL)(L=C,S,I,D)を用いて、CSID数推定値y’を求める。
係数記憶部33は、予め、最小二乗法によって解析的に求めた係数(aL,bL,cL,dL)(L=C,S,I,D)を記憶する。この係数(aL,bL,cL,dL)(L=C,S,I,D)は、学習データとして準備されたN個のx’とy’とのペア(x’n,y’n)(n=1,2,・・・,N)を基に、最小二乗法により解析的に、求められたものである。なお、不正CSID数補正部25は、実施の形態2と同様に、補正部32によって補正されたCSID数推定値y’(E’(#C),E’(#S),E’(#I),E’(#D))が不正な値、すなわち、0より小さな値を取る場合には、補正されたCSID数推定値y’を0に補正する。
[音声認識精度推定装置の処理手順]
次に、音声認識精度推定装置30が、入力音声に対する最終的な推定音声認識精度を出力するまでの処理について説明する。図16は、図15に示す音声認識精度推定装置30が、入力音声に対する最終的な推定音声認識精度を出力するまでの処理手順を示すフローチャートである。
図16に示すステップS31は、図4に示すステップS11である。ステップS32は、図14に示すステップS22である。続いて、補正部32は、重回帰式により、音声認識精度推定部400から出力された元のCSID数推定値x’を、CSID数推定値y’に補正する、重回帰式による補正処理を行う(ステップS33)。図16に示すステップS34〜ステップS37は、図14に示すステップS24〜ステップS27である。
[実施の形態3の効果]
この実施の形態3のように、音声認識精度推定部400が出力したCSID数推定値x’を、重回帰式を用いて補正した場合も、音声認識精度を精度よく推定できる。
なお、上記したように、一つの認識結果単語wjのCSI確率に、P(Cj)+P(Sj)+P(Ij)=1という拘束があり、削除誤りが存在する確率P(Dj)は、直接的には、正解(C)である確率P(Cj)、置換誤り(S)である確率P(Sj)、挿入誤り(I)である確率P(Ij)とは関係ない。これを考慮し、補正部32は、E’(#D)については、実施の形態2と同様に、E(#D)のみから求め、E’(#C),E’(#S),E’(#I)を、下記(34)〜(36)式を用いて、E(#C),E(#S),E(#I)から求めてもよい。
また、音声認識精度推定装置30は、実施の形態2と同様に、音声認識精度推定部400に代えて、変形例1〜5における音声認識精度推定部500或いは識別的音声認識精度推定部600,700,800,1000を有してもよい。
[実施の形態4]
次に、実施の形態4について説明する。図17は、実施の形態4における音声認識精度推定装置の構成の一例を模式的に示す図である。
図17に示すように、実施の形態4に係る音声認識精度推定装置40は、図13に示す音声認識精度推定装置20と比して、補正部22、係数記憶部23及び不正CSID数補正部25に代えて、補正部42(第1の補正部)、係数記憶部43及び不正CSID確率補正部45(第2の補正部)を有する。そして、音声認識精度推定装置40は、音声認識精度推定装置20と比して、不正CSID確率補正部45と認識精度算出部26との間に、CSI確率正規化部46(第3の補正部)及びCSID数算出部47(単語数算出部)を有する。なお、音声認識精度推定装置40では、音声認識精度推定部400が確率出力部として機能し、一つの認識結果単語wjに付与されるCSID確率推定値x”(正解(C)である確率P(Cj)、置換誤り(S)である確率P(Sj)、挿入誤り(I)である確率P(Ij)及び削除誤りが存在する確率P(Dj))を出力する。
補正部42は、単回帰式により、音声認識精度推定部400から出力された、一つの認識結果単語wjに付与されるCSID確率推定値x”を、CSID確率推定値y”に補正する。補正部42が用いる単回帰式は、(21)式であり、x”が補正前のC/S/I/D確率(なお、「/」は「または」の意味である。)、すなわち、P(Cj),P(Sj),P(Ij),P(Dj)であり、y”が補正後のC/S/I/D確率、すなわち、P’(Cj),P’(Sj),P’(Ij),P’(Dj)である。
また、補正部42は、補正部12と同様に、係数記憶部43が記憶する係数(a,b)を用いて補正を行う。この係数(a,b)は、学習データとして準備されたN個のx”とy”とのペア(x”n,y”n)(n=1,2,・・・,N)を基に、最小二乗法により、解析的に、(22),(23)式から求められたものである。係数記憶部43は、この予め求められた係数(a,b)を記憶する。
そして、この補正されたCSID確率推定値y”から補正された音声認識精度を求める。まず、不正CSID確率補正部45は、y”が確率値であるので(厳密にはDの場合は除く)、補正部42による補正の結果、y”が不正な値を取る場合には、更なる補正を行う。
具体的には、不正CSID確率補正部45は、補正部42による補正の結果、y”が0より小さい値になる場合は、y”の値を、y”=0と補正する。一方、不正CSID確率補正部45は、補正部42による補正の結果、y”が1より大きい値になる場合には、y”の値を、y”=1と補正する。なお、Dの場合は、y”が1より大きくなり得るので、1より大きくなっても補正しない。不正CSID確率補正部45は、得られたCSID確率を、P”(Cj),P”(Sj),P”(Ij),P”(Dj)とする。
CSI確率正規化部46は、CSI確率については、全て加算すると1になるという拘束があることから、以下の(37)〜(39)式を用いて、各CSI確率を補正し、P’’’(Cj),P’’’(Sj),P’’’(Ij)を出力する。なお、CSI確率正規化部46は、Dについては、補正せず、P”(Dj)を出力する。
CSID数算出部47は、CSI確率正規化部46が算出したCSID確率の推定値、すなわちP’’’(Cj),P’’’(Sj),P’’’(Ij),P”(Dj)を基に、音声認識精度推定単位ごとにCISD確率を加算してCSID数を求め、推定CSID数を出力する。
認識精度算出部26は、実施の形態2と同様に、CSID数算出部47が出力した推定CSID数を基に、推定認識精度を算出する。そして、不正推定精度補正部14は、認識精度算出部26が算出した推定認識精度が不正である場合には、実施の形態1と同様に、この推定認識精度を補正し、補正した値を、最終的な推定音声認識精度として出力する。
[音声認識精度推定装置の処理手順]
次に、音声認識精度推定装置40が、入力音声に対する最終的な推定音声認識精度を出力するまでの処理について説明する。図18は、図17に示す音声認識精度推定装置40が、入力音声に対する最終的な推定音声認識精度を出力するまでの処理手順を示すフローチャートである。
図18に示すステップS41は、図4に示すステップS11である。そして、音声認識精度推定部400が、入力された音声に対して、単語アライメントネットワークに基づいて音声認識精度の推定を実行し、一つの認識結果単語wjに付与されるCSID確率推定値x”を出力する音声認識精度推定処理を行う(ステップS42)。続いて、補正部42は、単回帰式により、音声認識精度推定部400から出力されたCSID確率推定値x”を、補正後のCSID確率推定値y”に補正する、単回帰式による補正処理を行う(ステップS43)。
そして、不正CSID確率補正部45は、y”が0より小さい値になる場合は、y”の値をy”=0と補正する一方、y”が1より大きい値になる場合には、y”の値をy”=1と補正する不正CSID確率補正処理を行う(ステップS44)。
続いて、CSI確率正規化部46は、(37)〜(39)式を用いて、各CSI確率を補正するCSI確率正規化処理を行う(ステップS45)。そして、CSID数算出部47は、CSI確率正規化処理において算出されたCSID確率の推定値を基に、音声認識精度推定単位ごとにCSID確率を加算してCSID数を求め、推定CSID数を出力するCSID数算出処理を行う(ステップS46)。図18に示すステップS47〜ステップS49は、図14に示すステップS25〜ステップS27である。
[実施の形態4の効果]
この実施の形態4のように、音声認識精度推定部400が、一つの認識結果単語wjに付与されるCSID確率推定値x”を出力する場合についても、単回帰式を用いて補正を行うことによって、音声認識精度を精度よく推定できる。
なお、音声認識精度推定装置40は、音声認識精度推定部400に代えて、変形例1〜5における音声認識精度推定部500或いは識別的音声認識精度推定部600,700,800,1000を有してもよい。このうち識別的音声認識精度推定部600,700,800,1000を採用した場合、識別的音声認識精度推定部600,700,800,1000からは、認識結果単語確率的分類モデルを用いて補正したCSID確率推定値を出力する。
[実施の形態5]
次に、実施の形態5について説明する。図19は、実施の形態5における音声認識精度推定装置の構成の一例を模式的に示す図である。
図19に示すように、実施の形態5に係る音声認識精度推定装置50は、図17に示す音声認識精度推定装置40と比して、補正部42及び係数記憶部43に代えて、補正部52及び係数記憶部53を有する。前述の実施の形態2から実施の形態3への拡張と同じ拡張を、実施の形態4から、この実施の形態5に行う。
すなわち、補正部42では、P’(Cj)を、入力されたP(Cj)のみから単回帰式を用いて求めていたのに対し、補正部52は、P’(Cj)を、実施の形態3の(30)〜(33)式と同様に、P(Cj),P(Sj),P(Ij),P(Dj)から、重回帰式を用いて求める。補正部52は、P’(Sj),P’(Ij),P’(Dj)についても同様に、P(Cj),P(Sj),P(Ij),P(Dj)から、重回帰式を用いて求める。補正部52は、係数記憶部53が記憶する係数(aL,bL,cL,dL)(L=C,S,I,D)を用いて補正を行う。予め、最小二乗法によって解析的に求められた係数(aL,bL,cL,dL)(L=C,S,I,D)を用いて、補正を行う。
係数記憶部53は、予め、最小二乗法によって解析的に求められた係数(aL,bL,cL,dL)(L=C,S,I,D)を記憶する。この係数(aL,bL,cL,dL)(L=C,S,I,D)は、学習データとして準備されたN個のx”とy”とのペア(x”n,y”n)(n=1,2,・・・,N)を基に、最小二乗法により解析的に求められたものである。
[音声認識精度推定装置の処理手順]
次に、音声認識精度推定装置50が、入力音声に対する最終的な推定音声認識精度を出力するまでの処理について説明する。図20は、図19に示す音声認識精度推定装置40が、入力音声に対する最終的な推定音声認識精度を出力するまでの処理手順を示すフローチャートである。
図20に示すステップS51は、図4に示すステップS11である。ステップS52は、図18に示すステップS42である。続いて、補正部52は、重回帰式により、音声認識精度推定部400から出力されたCSID確率推定値x”を、CSID確率推定値y”に補正する、重回帰式による補正処理を行う(ステップS53)。図20に示すステップS54〜ステップS56は、図18に示すステップS44〜ステップS46である。図20に示すステップS57〜ステップS59は、図14に示すステップS25〜ステップS27である。
[実施の形態5の効果]
この実施の形態5のように、音声認識精度推定部400が出力した、一つの認識結果単語wjに付与されるCSID確率推定値x”を、重回帰式を用いて補正した場合も、音声認識精度を精度よく推定できる。
なお、P(Cj)+P(Sj)+P(Ij)=1という拘束があり、削除誤りが存在する確率P(Dj)は、直接的には、正解(C)である確率P(Cj)、置換誤り(S)である確率P(Sj)、挿入誤り(I)である確率P(Ij)とは関係ない。これを考慮し、P’(Dj)はP(Dj)のみから単回帰式で求め、P’(Cj),P’(Sj),P’(Ij)を、実施の形態3の(34)式〜(36)式と同様に、P(Cj),P(Sj),P(Ij)から重回帰式によりそれぞれ求めてもよい。
また、音声認識精度推定装置40は、実施の形態4と同様に、音声認識精度推定部400に代えて、変形例1〜5における音声認識精度推定部500或いは識別的音声認識精度推定部600,700,800,1000を有してもよい。
[実施の形態のシステム構成について]
図1,13,15,17,19で示す音声認識精度推定装置10,20,30,40,50の各構成要素は機能概念的なものであり、必ずしも物理的に図示のように構成されていることを要しない。すなわち、音声認識精度推定装置10,20,30,40,50の機能の分散および統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散または統合して構成することができる。
また、音声認識精度推定装置10,20,30,40,50において行われる各処理は、全部または任意の一部が、CPU(Central Processing Unit)およびCPUにより解析実行されるプログラムにて実現されてもよい。また、音声認識精度推定装置10,20,30,40,50において行われる各処理は、ワイヤードロジックによるハードウェアとして実現されてもよい。
また、実施の形態において説明した各処理のうち、自動的におこなわれるものとして説明した処理の全部または一部を手動的に行うこともできる。もしくは、手動的におこなわれるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。この他、上述および図示の処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて適宜変更することができる。
[プログラム]
図21は、プログラムが実行されることにより、音声認識精度推定装置10,20,30,40,50が実現されるコンピュータの一例を示す図である。コンピュータ2000は、例えば、メモリ1010、CPU1020を有する。また、コンピュータ2000は、ハードディスクドライブインタフェース1030、ディスクドライブインタフェース1040、シリアルポートインタフェース1050、ビデオアダプタ1060、ネットワークインタフェース1070を有する。これらの各部は、バス1080によって接続される。
メモリ1010は、ROM1011及びRAM1012を含む。ROM1011は、例えば、BIOS(Basic Input Output System)等のブートプログラムを記憶する。ハードディスクドライブインタフェース1030は、ハードディスクドライブ1090に接続される。ディスクドライブインタフェース1040は、ディスクドライブ1100に接続される。例えば磁気ディスクや光ディスク等の着脱可能な記憶媒体が、ディスクドライブ1100に挿入される。シリアルポートインタフェース1050は、例えばマウス1110、キーボード1120に接続される。ビデオアダプタ1060は、例えばディスプレイ1130に接続される。
ハードディスクドライブ1090は、例えば、OS1091、アプリケーションプログラム1092、プログラムモジュール1093、プログラムデータ1094を記憶する。すなわち、音声認識精度推定装置10,20,30,40,50の各処理を規定するプログラムは、コンピュータ2000により実行可能なコードが記述されたプログラムモジュール1093として実装される。プログラムモジュール1093は、例えばハードディスクドライブ1090に記憶される。例えば、音声認識精度推定装置10,20,30,40,50における機能構成と同様の処理を実行するためのプログラムモジュール1093が、ハードディスクドライブ1090に記憶される。なお、ハードディスクドライブ1090は、SSD(Solid State Drive)により代替されてもよい。
また、上述した実施の形態の処理で用いられる設定データは、プログラムデータ1094として、例えばメモリ1010やハードディスクドライブ1090に記憶される。そして、CPU1020が、メモリ1010やハードディスクドライブ1090に記憶されたプログラムモジュール1093やプログラムデータ1094を必要に応じてRAM1012に読み出して実行する。
なお、プログラムモジュール1093やプログラムデータ1094は、ハードディスクドライブ1090に記憶される場合に限らず、例えば着脱可能な記憶媒体に記憶され、ディスクドライブ1100等を介してCPU1020によって読み出されてもよい。あるいは、プログラムモジュール1093及びプログラムデータ1094は、ネットワーク(LAN、WAN等)を介して接続された他のコンピュータに記憶されてもよい。そして、プログラムモジュール1093及びプログラムデータ1094は、他のコンピュータから、ネットワークインタフェース1070を介してCPU1020によって読み出されてもよい。
以上、本発明者によってなされた発明を適用した実施の形態について説明したが、本実施の形態による本発明の開示の一部をなす記述及び図面により本発明は限定されることはない。すなわち、本実施の形態に基づいて当業者等によりなされる他の実施の形態、実施例及び運用技術等は全て本発明の範疇に含まれる。