(57)【特許請求の範囲】
【請求項１】
選択部が、音声データに対する音声認識によって得られた複数の認識結果（単語列）からなる集合から、認識誤り率が高い順、または、認識結果の認識スコアであるスコア指標の低い順に当該集合に含まれる認識結果数より小さい所定数の認識結果を選択する選択ステップと、
誤り訂正部が、上記選択された集合（以下、認識結果集合という）に対して、上記スコア指標を記憶部から読み出したこのスコア指標への重みであるスコア指標重みによって重み付けした演算結果と、上記認識結果が有する特徴量を上記記憶部から読み出したこの特徴量への重みである特徴量重みによって重み付けした演算結果との和が最大となる認識結果を出力する誤り訂正ステップと、
パラメータ更新部が、上記誤り訂正ステップにおいて得られる認識結果を用いて、上記特徴量重みを更新する計算を行い、更新後の特徴量重みを上記記憶部に記憶するパラメータ更新ステップと
を有し、
複数の音声データの認識結果に対して、上記選択ステップと上記誤り訂正ステップと上記パラメータ更新ステップを実施する
ことを特徴とする誤り訂正モデルの学習方法。
【請求項２】
上記認識結果集合は、音声認識の正解単語列を含む
ことを特徴とする請求項１に記載の誤り訂正モデルの学習方法。
【請求項３】
上記演算結果の和において、上記スコア指標重みによって重み付けされた演算結果の寄与度を低減させるように、上記スコア指標重みが設定される
ことを特徴とする請求項１または請求項２に記載の誤り訂正モデルの学習方法。
【請求項４】
上記演算結果の和において、上記スコア指標重みをゼロとする
ことを特徴とする請求項１から請求項３に記載の誤り訂正モデルの学習方法。
【請求項５】
上記スコア指標が上記スコア指標重みによって重み付けされた演算結果が上記スコア指標と逆相関を持つように、スコア指標重みが設定される
ことを特徴とする請求項１または請求項２に記載の誤り訂正モデルの学習方法。
【請求項６】
上記特徴量は、単語の並びに基づき上記単語列の特徴を表す指標である
ことを特徴とする請求項１から請求項５のいずれかに記載の誤り訂正モデルの学習方法。
【請求項７】
音声データに対する音声認識によって得られた認識結果の認識スコアであるスコア指標への重みであるスコア指標重みと、当該認識結果が有する特徴量への重みである特徴量重みとを記憶する記憶部と、
音声データに対する音声認識によって得られた複数の認識結果（単語列）からなる集合から、認識誤り率が高い順、または、上記スコア指標の低い順に当該集合に含まれる認識結果数より小さい所定数の認識結果を選択する選択手段と、
上記選択された集合（以下、認識結果集合という）に対して、上記スコア指標を上記記憶部から読み出した上記スコア指標重みによって重み付けした演算結果と、上記特徴量を上記記憶部から読み出した上記特徴量重みによって重み付けした演算結果との和が最大となる認識結果を出力する誤り訂正手段と、
上記誤り訂正手段によって得られる認識結果を用いて、上記特徴量重みを更新する計算を行い、更新後の特徴量重みを上記記憶部に格納するパラメータ更新手段と、
複数の音声データの認識結果に対して、上記選択手段による処理と上記誤り訂正手段による処理と上記パラメータ更新手段による処理を実施する制御を行う制御部と
を含む
ことを特徴とする誤り訂正モデルの学習装置。
【請求項８】
上記演算結果の和において、上記スコア指標重みによって重み付けされた演算結果の寄与度を低減させるように、上記スコア指標重みが設定される
ことを特徴とする請求項７に記載の誤り訂正モデルの学習装置。
【請求項９】
上記演算結果の和において、上記スコア指標重みをゼロとする
ことを特徴とする請求項７または請求項８に記載の誤り訂正モデルの学習装置。
【請求項１０】
上記スコア指標が上記スコア指標重みによって重み付けされた演算結果が上記スコア指標と逆相関を持つように、スコア指標重みが設定される
ことを特徴とする請求項７に記載の誤り訂正モデルの学習装置。
【請求項１１】
コンピュータに請求項１から請求項６のいずれかに記載の誤り訂正モデルの学習方法の各処理を実行させるためのプログラム。
【請求項１２】
請求項１１に記載のプログラムを記録したコンピュータに読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
パターン認識などに用いられる誤り訂正モデルの学習に関する。
【背景技術】
【０００２】
音声認識、手書き文字認識、言語翻訳などのパターン認識では、入力データに対して一つまたは複数の認識結果をスコア順に提示することが行われる。一般的に、認識結果はスコアの最も高い結果である。しかし、実時間処理を必要としない場合などでは、全結果に対して誤り訂正モデルを用いたスコアの再付与を行い、認識誤り率のより低い認識結果を獲得することが行われる。
【０００３】
例えば音声認識のように認識結果として単語列が出力される場合では、誤り訂正の一手法に、単語の並び（単語Ｎ-gram）に応じたスコアを再付与する方法がある。この誤り訂正モデルの学習では、各単語の並びに応じたスコアの推定を行う。正解単語列から得られる単語の並びに高いスコアを与え、その他の単語列から得られる単語の並びに小さなスコアを与える。誤り訂正という問題の性質上、従来、正解より高いスコアを持つ単語列から得られる単語の並びに小さな値を付与することが重要視されてきた。
【０００４】
このような言語処理分野における誤り訂正学習方法として、例えば非特許文献１が挙げられる。この非特許文献１に開示される手法は、認識結果の単語列である仮説ごとのＮ-gram頻度を素性としたパーセプトロンアルゴリズムによって誤り訂正モデルを学習するものである。
また、自然言語処理分野における誤り訂正学習方法として、非特許文献２を挙げることもできる。
【非特許文献１】Brian Roark, Murat Saraclar, Michael Collins, “Corrective Language Modeling for Large Vocabulary ASR with the Perceptron Algorithm,”Proceedings of ICASSP, vol.1, pp.749-752, 2004.
【非特許文献２】Zhengyu Zhou, Jianfeng Gao, Frank K. Soong and Helen Meng, “A Comparative Study of Discriminative Methods for Reranking LVCSR Hypotheses in Domain Adaptation and Generalization,” Proc. ICASSP, vol.1, pp.141-144, 2006.
【発明の開示】
【発明が解決しようとする課題】
【０００５】
従来の誤り訂正モデルの学習では、正解よりも高いスコアを持つ認識結果のスコア低減が重視されており、誤りパターンの獲得が十分になされていなかった。このため、誤り訂正モデルの精度に悪影響を及ぼしていた。
【０００６】
上記問題点に鑑み、本発明の目的は、誤り訂正モデルの精度向上に寄与する誤り訂正モデルの学習である。
【課題を解決するための手段】
【０００７】
上記課題を解決するため、本発明では、パターン認識による複数の認識結果からなる集合（以下、認識結果集合という）に対して、各認識結果のスコアに依存する指標（以下、スコア指標という）と、このスコア指標に対する重み（以下、スコア指標重みという）と、各認識結果の特徴量と、この特徴量に対する重み（以下、特徴量重みという）とを用いて誤り訂正を行い、この誤り訂正で得られる誤り訂正結果を用いて特徴量重みを更新することを含む誤り訂正モデル学習であって、認識結果集合を、パターン認識によって得られた複数の認識結果からなる集合（以下、集合Ａという）に含まれる部分集合であって、認識誤り率が高いものからなる集合とする。
従来では集合Ａに含まれる全ての認識結果を用いて学習していたが、本発明では、認識誤り率基準で学習に使用する認識結果を制限する。このため、誤りの少ない認識結果の影響が除外され、誤りを多く含む認識結果の影響が強く反映された誤り訂正モデルの学習が実現される。これにより、効率的な誤りパターンの獲得が期待できる。
【０００８】
また、学習の収束を考慮して、認識結果集合は、パターン認識の正解を含むようにしてもよい。
【０００９】
また、認識結果集合に含まれる各認識結果に応じて得られる、スコア指標がスコア指標重みによって重み付けされた演算結果（演算結果Ａ）および特徴量が特徴量重みによって重み付けされた演算結果（演算結果Ｂ）の和について、これらの間の大小関係を、特徴量が特徴量重みによって重み付けされた演算結果が支配的に決定するように、スコア指標重みを設定してもよい。演算結果Ａと演算結果Ｂとの和の大小関係が、演算結果Ａによって支配的に決定されると、誤りパターンの獲得が十分とならない可能性があるから、スコア指標重みを適切に設定してこれを防止する。
あるいは、スコア指標がスコア指標重みによって重み付けされた演算結果が認識結果のスコアと逆相関を持つように、スコア指標重みを設定してもよい。
【００１０】
パターン認識が認識結果として単語列を求めるものであれば、特徴量を単語の並びに基づき上記単語列の特徴を表す指標とし、認識結果集合を、認識結果として単語列を求めるパターン認識によって得られた複数の認識結果からなる集合に含まれる部分集合であって、単語誤り率が高いものまたはスコアが低いものからなる集合とすることができる。
【００１１】
本発明の誤り訂正モデル学習方法の各処理をコンピュータに実行させるプログラムによって、コンピュータを誤り訂正モデル学習装置として作動させることができる。そして、このプログラムを記録した、コンピュータに読み取り可能なプログラム記録媒体によって、他のコンピュータを誤り訂正モデル学習装置として機能させることや、プログラムを流通させることなどが可能になる。
【発明の効果】
【００１２】
本発明によれば、誤りパターンの獲得が十分になるため、より高精度な誤り訂正モデルが生成される。また、学習に用いる認識結果集合が、認識誤り率基準で制限された認識結果の部分集合であるため、コンパクトな誤り訂正モデルの生成にも寄与する。
【発明を実施するための最良の形態】
【００１３】
《理論》
実施形態の説明に先立ち、本発明の誤り訂正モデル学習の理論を説明する。本発明はパターン認識一般の誤り訂正モデル学習に適用可能であるが、説明を具体的なものとするため、音声認識を例にして説明を行う。まず、素性および素性ベクトルについて説明する。その後、リスコアリングによる誤り訂正と誤り訂正モデルのパラメータ学習方法について概説した後、本発明の要項を説明する。
【００１４】
[素性]
パターン認識の認識結果にスコアを与える場合、各認識結果が如何なる特徴を有しているかを表現する必要がある。この特徴を表す指標が特徴量である。この特徴量としては、任意に種々のものを選択できる。特徴量は、一般にベクトルで表現されるが、１次元ベクトルという意味でスカラーも包含する。
【００１５】
例えば音声認識において、認識結果である単語列にスコアを与える場合、各単語列が如何なる特徴を有しているかを表現する必要がある。即ち、単語列の特徴量を規定する必要がある。これを実現するため「素性」という概念を導入する。素性は、一般的には、属性および属性値をまとめたものとして理解される。そして、属性値をベクトル化したものを素性ベクトルと呼び、これが特徴量となる。
【００１６】
素性の規定の仕方、つまり属性と属性値の与え方は設計者に裁量がある。ここでは説明の便宜から、一例として単語Ｎ-gramとその頻度を利用した素性について言及する。
【００１７】
単語Ｎ-gramとは単語Ｎ個並びのことである。今、単語列
私  は  朝  必ず  牛乳  を  飲む
が与えられた場合、朝という文字のある位置３番目における１-gramは‘朝’、２-gramは‘は＋朝’、３-gramは‘私＋は＋朝’となる。ここでは、これらのそれぞれが属性である。単語列内に各単語Ｎ-gramが観測される個数を頻度とすると、上記３属性に対応する頻度はいずれも１であり、これらが各属性に対応する属性値である。一方、２-gram ‘私＋朝’といった単語列に存在しない属性の属性値は０となる。
【００１８】
上記のように単語Ｎ-gramとその頻度を素性に利用した場合、素性ベクトルは各単語Ｎ-gramに対応する頻度の配列に相当する。単語１-gramのみを利用する場合、素性ベクトルの長さは前提としている語彙のサイズと考えてよい。例えば、語彙サイズとして最大１万語を前提としている場合、上記の単語列から得られる素性ベクトルは、‘私’‘は’‘朝’‘必ず’‘牛乳’‘を’‘飲む’の各単語１-gramに対応する７箇所のみ成分が１で、その他の９９９３箇所の成分は０である。
【００１９】
単語Ｎ-gramのＮは単語の連結数であるので、その素性ベクトルの長さは語彙サイズのＮ乗のオーダーとなる。しかし、実際は学習データから獲得した素性分の領域で十分なためベクトル長は抑えられ、一般的な計算機のメモリ装置上に格納可能なサイズに収まる。
【００２０】
[リスコアリングによる誤り訂正]
ｋ番目の入力データに対するパターン認識処理によって出力された認識結果の集合をHypsk とし、そのｎ番目の認識結果をｗk,n と表記する。認識結果ｗk,n の認識スコアをＰk,n 、認識スコアＰk,n に依存する指標（スコア指標）をΦ(Ｐk,n )とするとき、認識結果ｗk,n の特徴量φ(ｗk,n )、特徴量φ(ｗk,n )への重みα、スコア指標Φ(Ｐk,n )、およびスコア指標Φ(Ｐk,n )への重みλを用いて式（１）によって誤り訂正が実現される。関数ｆは、スコア指標Φ(Ｐk,n )と重みλを入力とし、スコア指標Φ(Ｐk,n )が所定の演算により重み付けされた演算結果を返す関数であり、関数ｇは、特徴量φ(ｗk,n )と重みαを入力とし、特徴量φ(ｗk,n )が所定の演算により重み付けされた演算結果を返す関数である。スコア指標Φ(Ｐk,n )およびスコア指標重みλはそれぞれ、一般にベクトルで表現されるが、１次元ベクトルという意味でスカラーも包含する。関数ｆおよび関数ｇは出力としてスカラー値を返すように設定されるのが通常である。式（１）において、ｆ(Φ(Ｐk,n ),λ)は認識スコアに依存し、ｇ(φ(ｗk,n ),α)は認識スコアに非依存である。
【数１】
0004981579.tif 000002
【００２１】
例えば音声認識の場合では、ｋ番目の発話データに対する音声認識の仮説集合をHypsk とし、そのｎ番目の仮説をｗk,n とする。仮説とは、音声認識の出力する単語列と考えてよい。仮説ｗk,n のスコア指標Φ(Ｐk,n )をlogＰk,n とするとき、仮説ｗk,n の素性ベクトルφ(ｗk,n )とその重みベクトルα、およびスコア指標Φ(Ｐk,n )logＰk,nへの重みλを用いて式（２）によって誤り訂正が実現される。記号・は内積を表す。
【数２】
0004981579.tif 000003
【００２２】
仮説集合Hypsk は、音声認識処理によって出力されたＮ-best仮説リストとすればよい（単語ラティスといわれる単語列をネットワーク表現したものを用いる場合については非特許文献１参照）。ここでＮ-bestは、スコア順で上位Ｎ個の認識結果である。ここでのＮは単語Ｎ-gramのＮと全く関係がない。
αは学習により推定された誤り訂正モデルのパラメータであり、次にこの学習方法について説明する。
【００２３】
[誤り訂正モデルのパラメータの学習]
学習にはパーセプトロンアルゴリズムや、条件付確率場，Minimum Sample Riskといった識別学習の技術を利用する場合が多い。いずれも正解から得られる特徴量に高いスコアを与え、それ以外に低いスコアを与える方針をとる。音声認識の例では、正解単語列から得られる素性に高いスコアを与え、それ以外に低いスコアを与える方針をとる。
【００２４】
ここでは、αの学習方法の一例としてパーセプトロンアルゴリズムについて説明する（非特許文献１参照）。学習に先立ち、αはゼロベクトルに初期化される。λは任意の定数に設定され、一般には正の値が与えられる。そしてｋ＝１番目のデータに対して式（２）を適用し、仮説ｗ*k を決定する。学習の最初はαがゼロベクトルであるため、この仮説は音声認識スコアのみで決まる。次にこの仮説を対立仮説として式（３）により、パラメータ更新を行う。式（３）は、α＋φ（ｗkref）−φ（ｗ*k）を新たなαとすることを意味する。ｗkrefは正解単語列であるが、ここでは単語誤り率の最も低い仮説（オラクル）で代用するのがよい。真の正解よりオラクル仮説を用いた方が高精度なモデルになることが知られている（非特許文献１参照）。以上の処理式（２，３）を全学習データに対し再帰的に適用することでパラメータαの学習が行われる。
【数３】
0004981579.tif 000004
【００２５】
[誤り訂正モデルの適用]
学習によって得られた誤り訂正モデルを適用する場合、音声認識処理によって出力された認識結果の集合に対して、式（１）を適用して誤り訂正を行う。音声認識の例では、音声認識処理によって出力されたＮ-best仮説リストに対して、式（２）を適用すればよい。このときのαは、学習で得られたものを用いる。また、λは、学習時と同値に設定される。なお、λはαと同様の手順で学習することも可能である。この場合は、学習で得られたλを用いる。
【００２６】
[本発明について]
正解とそれに近い認識結果との識別は、学習データに対するオーバーフィッティングの要因となる上、誤りのパターンの効率的な獲得を阻害する。しかし、通常の手順で学習を行うと、こうした認識結果の識別が学習の大半を占める傾向が強い。
そこで本発明では、誤りの多い認識結果との識別を支配的に行うため、以下の二つの処理を行う。
【００２７】
一つ目の処理は、認識結果の集合Hypsk に関する事項である。通常、パターン認識処理で得られた認識結果の集合Hypskに含まれる認識結果の全部を用いて学習が行われるが、本発明では認識誤り率基準で制限された部分集合を使用して学習する。具体的には、認識誤り率の高い認識結果からなる部分集合〔正解を除く部分集合の要素は一つでもよい。〕を式（１）におけるHypsk として学習する。この処理は小さな誤り訂正モデルの生成という側面も有する。ただし、学習の収束のため、このHypsk は正解も要素に持つものとする。認識誤り率基準として、具体的には、特徴量誤り率や認識スコアなどを用いることができる。特徴量誤り率を用いるならば、特徴量誤り率の高い認識結果からなる部分集合を選定する。また、一般的に認識スコアの低い認識結果は特徴量誤り率が高いと考えられるので、認識スコアを用いるならば、認識スコアの低い認識結果からなる部分集合を選定する。特徴量誤り率や認識スコアに限らず、類似の基準を用いてもよい。
音声認識の例では、通常、Ｎ-best仮説リストに含まれる全仮説を用いて学習するが、単語誤り率（あるいは音声認識スコア）基準で制限された仮説集合（Ｎ-best仮説リストの部分集合）を使用する。つまり単語誤り率の高い仮説のみを学習で使用する。ただし使用上、学習の収束のためHypsk は正解単語列も要素に持つものとする。
【００２８】
二つ目の処理は、各認識結果に応じて得られる、スコア指標Φ(Ｐk,n )がスコア指標重みλによって重み付けされた演算結果ｆ(Φ(Ｐk,n ),λ)と、特徴量φ(ｗk,n )が特徴量重みαによって重み付けされた演算結果ｇ(φ(ｗk,n ),α)との和について、これらの間の大小関係を、演算結果ｇ(φ(ｗk,n ),α)が支配的に決定するように、スコア指標重みλを設定することである。
【００２９】
部分集合に含まれる各認識結果ｗk,nについて得られるｆ(Φ(Ｐk,n ),λ)＋ｇ(φ(ｗk,n ),α)の大小関係は、演算結果ｆ(Φ(Ｐk,n ),λ)の分散が演算結果ｇ(φ(ｗk,n ),α)の分散よりも十分に小さい場合を除き、演算結果ｆ(Φ(Ｐk,n ),λ)に依存する。
このような場合、各認識結果に対するｆ(Φ(Ｐk,n ),λ)＋ｇ(φ(ｗk,n ),α)の大小関係が演算結果ｆ(Φ(Ｐk,n ),λ)に対してほぼ非依存になるようにλを設定する。これは前記大小関係に対する演算結果ｆ(Φ(Ｐk,n ),λ)の寄与度を低減させることを意味し、演算結果ｇ(φ(ｗk,n ),α)との相関で定まる設計事項である。
【００３０】
例えば前記大小関係を式（２）で与える場合、スコア指標重みλ（ここではスカラーとすする）はゼロまたはそれに近い正値を採用すればよい。λの値がゼロの場合、認識スコアの影響が除外される。一般的に、正解（オラクル）と他の認識誤り率の高い認識結果とでは認識スコアに偏りがある。つまり、全体的には認識スコアは前者が高く、後者が低い。そのため、一つ目の処理の適用時、認識スコアのみで大部分識別が達成され、学習が即座に収束し十分な誤りパターンの獲得が達成されない場合もある。二つ目の処理は一つ目の処理による不十分な学習を防止する。また、二つ目の処理は、それ単体でも誤りの多い認識結果との識別を促進する効果がある。
【００３１】
二つ目の処理の代替手段として、式（１）における演算結果ｆ(Φ(Ｐk,n ),λ)が認識スコアＰk,n と逆相関を持つように、スコア指標重みλを設定することもできる。これは一般に認識スコアＰk,n が認識誤り率と負の相関を持つという性質を利用し、誤りの多い認識結果との識別を支配的に行うという目的を達成するものである。
【００３２】
例えば、式（２）ではλ（ここではスカラーとする）を負値に設定するとよい。認識誤り率と負の相関を持つ認識スコアＰk,n に逆相関を与えるので、結果としてλlogＰk,n は認識誤り率と正の相関を持つ。このため、認識誤り率の高い認識結果を重視したパラメータ推定が可能となる。
【００３３】
なお、二つ目の処理の両手段は、いずれも一つ目の処理を適用しない場合でも一定の効果が期待できる。すなわち誤りの多い認識結果との識別を支配的に行うという目的をある程度達成可能である。また、一般にλはαと同様、学習可能であり、これを実施したい場合は、λの初期値を上述のように設定し、極めて微細にλの更新を行うことで、二つ目の処理が実現される。
【００３４】
本発明は、誤り訂正モデル学習時に適用されるものであり、学習済みの誤り訂正モデルの適用時（解析時）は通常とおりの処理を行えばよい。つまりHypsk には認識結果の集合に含まれる認識結果の全部を用いる。λは正の値に設定し、式（１）に基づき誤り訂正の処理を実行する。音声認識の例では、Hypsk にはＮ-best仮説リストの全仮説を用いる。λは正の値に設定し、式（２）に基づき誤り訂正の処理を実行する。
【００３５】
このように、本発明では学習時におけるλとして、解析時に用いる値とは異なる値を設定するということに留意しなければならない。この点においても、従来の技法との差分が存在し本発明の特徴と位置づけることもできる。ただし、前述のようにαと同様、λの学習を実施した場合は、この限りでない。
【００３６】
《実施形態》
以下、誤り訂正モデル学習装置・方法の実施形態を説明する。なお、説明を具体的にするため、パターン認識として音声認識を例に採り、学習アルゴリズムとしてパーセプトロンアルゴリズムを採用した場合について説明する。誤り訂正モデル学習装置は、例えば専用のハードウェアで構成された専用機やパーソナルコンピュータのような汎用機といったコンピュータで実現される。ここではコンピュータ（汎用機）で実現する場合として説明する。
【００３７】
誤り訂正モデル学習装置のハードウェア構成例を説明する。
誤り訂正モデル学習装置は、キーボード、ポインティングデバイスなどが接続可能な入力部と、液晶ディスプレイ、ＣＲＴ（Cathode Ray Tube）ディスプレイなどが接続可能な出力部と、誤り訂正モデル学習装置外部に通信可能な通信装置（例えば通信ケーブル、ＬＡＮカード、ルータ、モデムなど）が接続可能な通信部と、ＣＰＵ（Central Processing Unit）〔ＤＳＰ（Digital Signal Processor）でも良い。またキャッシュメモリやレジスタなどを備えていてもよい。〕と、メモリであるＲＡＭ、ＲＯＭや、ハードディスク、光ディスク、半導体メモリなどである外部記憶装置並びにこれらの入力部、出力部、通信部、ＣＰＵ、ＲＡＭ、ＲＯＭ、外部記憶装置間のデータのやり取りが可能なように接続するバスを有している。また必要に応じて、誤り訂正モデル学習装置に、フレキシブルディスク、ＣＤ−ＲＯＭ（Compact Disc Read Only Memory）、ＤＶＤ（Digital Versatile Disc）などの記憶媒体を読み書きできる装置（ドライブ）などを設けるとしてもよい。
【００３８】
誤り訂正モデル学習装置の外部記憶装置には、誤り訂正モデル学習のためのプログラムおよびこのプログラムの処理において必要となるデータなどが記憶されている〔外部記憶装置に限らず、例えばプログラムを読み出し専用記憶装置であるＲＯＭに記憶させておくなどでもよい。〕。また、このプログラムの処理によって得られるデータなどは、ＲＡＭや外部記憶装置などに適宜に記憶される。以下、データやその格納領域のアドレスなどを記憶する記憶装置を単に「記憶部」と呼ぶことにする。
【００３９】
この実施形態では、予め記憶部（１０）に、Ｋ個の発話データ（学習データ）に対する音声認識処理によって出力された仮説集合Hypsk を記憶しておく。但し、１≦ｋ≦Ｋとする。仮説集合Hypsk に含まれる複数の仮説には音声認識スコアと単語誤り率が対応付けられている。単語誤り率は、真の正解単語列と仮説とを比較して求められたものである。また、必要に応じて真の正解単語列を予め記憶部（１０）に記憶しておく。
【００４０】
誤り訂正モデル学習装置の外部記憶装置〔あるいはＲＯＭなど〕には、学習に用いるパラメータを設定するためのプログラム、仮説集合Hypsk から学習に用いる仮説を選択するためのプログラム、誤り訂正のためのプログラム、パラメータを更新するためのプログラム、その他、各プログラムに基づく処理によって必要となる制御を行うためのプログラムが記憶されている。
【００４１】
誤り訂正モデル学習装置では、上記各プログラムとこの各プログラムの処理に必要なデータが必要に応じてＲＡＭに読み込まれて、ＣＰＵで解釈実行・処理される。その結果、ＣＰＵが所定の機能（パラメータ設定部、選択部、誤り訂正部、パラメータ更新部、制御部）を実現することで、誤り訂正モデル学習が実現される。
【００４２】
次に、図１および図２を参照して、上記誤り訂正モデル学習装置による誤り訂正モデル学習の処理の流れを叙述的に説明する。
【００４３】
まず、パラメータ設定部（１１）が、パラメータの初期値を設定する（ステップＳ１０１）。つまり、音声認識スコアに対する重みλを、上述した小さな値に設定し、素性ベクトルに対する重みαをゼロベクトルに設定する。また記憶部（１０）から真の正解あるいはオラクル単語列を読み込み、ｗkrefを真の正解あるいはオラクル単語列のいずれかに設定する。設定されたパラメータは、誤り訂正部（１３）およびパラメータ更新部（１４）の入力となる。
【００４４】
次に、制御部（１９）は、ｔ＝ｋ＝１に設定する（ステップＳ１０２）。Ｔをパラメータ更新の回数の上限値とすると、１≦ｔ≦Ｔである。Ｔは任意の値に設定されている。
【００４５】
続いて、選択部（１２）は、設定されたｋに従い、記憶部（１０）から仮説集合Hypsk を読み込み、単語誤り率基準で学習に用いる部分集合を選択する（ステップＳ１０３）。選択された部分集合は、選択された仮説とその音声認識スコアのペアを複数含む。既述したとおり、単語誤り率の高い仮説からなる部分集合を選択するが、その具体例として、仮説集合Hypsk に含まれる全仮説を単語誤り率が最小のものが第１位、単語誤り率が最大のものが最下位となるように並び替え、第Ｍ位から最下位までの仮説を選ぶようにすることができる。あるいは、下位Ｌ個の仮説を選択するようにしてもよい。このとき最下位のものを含めることは必須ではない。あるいは、全仮説の単語誤り率の平均値以下（未満）の単語誤り率を持つ仮説を選択するとしてもよい。単語誤り率の高い仮説からなる部分集合を選択する基準に限定はない。選択された部分集合は、誤り訂正部（１３）の入力となる。
【００４６】
次いで、誤り訂正部（１３）が、式（２）に従ってｗ*kを算出する（ステップＳ１０４）。但し、式（２）におけるHypsk は、ステップＳ１０４の処理で得られた部分集合である。算出されたｗ*kはパラメータ更新部（１４）の入力となる。
【００４７】
続いて、パラメータ更新部（１４）が、式（３）に従ってαを算出する（ステップＳ１０５）。
制御部（１９）は、ｋに１を加算したものを新たなｋの値とし（ステップＳ１０６）、
ｋ＝Ｋであるか否かを判定する（ステップＳ１０７）。制御部（１９）は、もしｋ≠Ｋならば、ステップＳ１０５の処理で得られたαを誤り訂正部（１３）の入力として、ステップＳ１０３以降の処理を行うように制御する。
【００４８】
制御部（１９）は、もしｋ＝Ｋならば、ｔに１を加算したものを新たなｔの値とし（ステップＳ１０８）、ｔ＝Ｔであるか否かを判定する（ステップＳ１０９）。制御部（１９）は、もしｔ≠Ｔならば、ステップＳ１０５の処理で得られたαを誤り訂正部（１３）の入力として、ステップＳ１０３以降の処理を行うように制御する。制御部（１９）は、もしｔ＝Ｔならば、ステップＳ１０５の処理で得られたαを学習によって得られたパラメータとして記憶部（１０）に記憶する制御を行って、学習処理が終了する。
【００４９】
なお、解析に利用する際には平均化パラメータαave ＝Σt,kαkt／ＫＴを用いることで、高精度な誤り訂正モデルが生成可能であることが経験的に知られている（参考文献参照）。ただし、αktは、ｋ番目のデータのｔ回目のループにおける処理により得られたαの値である。
（参考文献）Michael Collins.“Discriminative Training Methods for Hidden Markov Models: Theory and Experiments with Perceptron Algorithms,”Proceedings of the Conference on Empirical Methods for Natural Language Processing, pp.1-8, 2002.
【００５０】
この実施形態は、予め記憶部（１０）に、Ｋ個の発話データ（学習データ）に対する音声認識処理によって出力された仮説集合Hypsk を記憶しておき、選択部（１２）が部分集合を決定するものであった。しかし、この部分集合を予め記憶部（１０）に記憶しておく構成であれば、選択部（１２）は必須の構成要素ではない。また、予めパラメータの初期値を決めて記憶部（１０）に記憶している構成であれば、パラメータ設定部（１１）も必須の構成要素ではない。
【００５１】
以上の各実施形態の他、本発明である誤り訂正モデル学習装置・方法は上述の実施形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲で適宜変更が可能である。また、上記誤り訂正モデル学習装置・方法において説明した処理は、記載の順に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されるとしてもよい。
【００５２】
また、上記誤り訂正モデル学習装置における処理機能をコンピュータによって実現する場合、誤り訂正モデル学習装置が有すべき機能の処理内容はプログラムによって記述される。そして、このプログラムをコンピュータで実行することにより、上記誤り訂正モデル学習装置における処理機能がコンピュータ上で実現される。
【００５３】
この処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等どのようなものでもよい。具体的には、例えば、磁気記録装置として、ハードディスク装置、フレキシブルディスク、磁気テープ等を、光ディスクとして、ＤＶＤ（Digital Versatile Disc）、ＤＶＤ−ＲＡＭ（Random Access Memory）、ＣＤ−ＲＯＭ（Compact Disc Read Only Memory）、ＣＤ−Ｒ（Recordable）／ＲＷ（ReWritable）等を、光磁気記録媒体として、ＭＯ（Magneto-Optical disc）等を、半導体メモリとしてＥＥＰ−ＲＯＭ（Electronically Erasable and Programmable-Read Only Memory）等を用いることができる。
【００５４】
また、このプログラムの流通は、例えば、そのプログラムを記録したＤＶＤ、ＣＤ−ＲＯＭ等の可搬型記録媒体を販売、譲渡、貸与等することによって行う。さらに、このプログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することにより、このプログラムを流通させる構成としてもよい。
【００５５】
このようなプログラムを実行するコンピュータは、例えば、まず、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、一旦、自己の記憶装置に格納する。そして、処理の実行時、このコンピュータは、自己の記録媒体に格納されたプログラムを読み取り、読み取ったプログラムに従った処理を実行する。また、このプログラムの別の実行形態として、コンピュータが可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することとしてもよく、さらに、このコンピュータにサーバコンピュータからプログラムが転送されるたびに、逐次、受け取ったプログラムに従った処理を実行することとしてもよい。また、サーバコンピュータから、このコンピュータへのプログラムの転送は行わず、その実行指示と結果取得のみによって処理機能を実現する、いわゆるＡＳＰ（Application Service Provider）型のサービスによって、上述の処理を実行する構成としてもよい。なお、本形態におけるプログラムには、電子計算機による処理の用に供する情報であってプログラムに準ずるもの（コンピュータに対する直接の指令ではないがコンピュータの処理を規定する性質を有するデータ等）を含むものとする。
【００５６】
また、この形態では、コンピュータ上で所定のプログラムを実行させることにより、誤り訂正モデル学習装置を構成することとしたが、これらの処理内容の少なくとも一部をハードウェア的に実現することとしてもよい。
【実施例１】
【００５７】
日本語話し言葉コーパス（ＣＳＪ）を用いて、本発明の効果を検証した。ＣＳＪには講演音声ごとに音声データと正解の単語列情報が格納されている。まず、ＣＳＪに含まれる講演データのうち２，６８２講演分を表１に示すように分割した。さらに、Ｎ-best仮説リストを生成する必要のあるデータセットについては、発話単位に音声データを分割した。
【表１】
0004981579.tif 000005
【００５８】
はじめにtrain２を用いて、音声認識で使用する言語モデルを生成し、音声認識デコーダによってtrain１の各発話に対する100-best仮説リストを生成した。次に、train１およびtrain２を用いて言語モデルの学習を行い、同様にtestの各発話に対する100-best仮説リストを生成した。また、train１の100-best仮説リストを用いて、各種条件下で誤り訂正モデルを学習し、testの100-best仮説リストに各誤り訂正モデルを適用して、単語誤り率を比較した。
【００５９】
実験の詳細を記載するため、上記一つ目の処理である学習に使用する仮説の制限に関し、具体的に学習に使用した仮説を明示化する必要がある。そこで以下の表記を導入する。今、Ｎ-best仮説リスト中の仮説（単語列）を単語誤り率に基づいて昇順に並び替え、その順位を上付き文字で表現する。つまり、第１位の仮説は最も単語誤り率が低く、第Ｎ位の仮説は最も単語誤り率が高く、第ｉ位の仮説はｗkiと表記される。ここではオラクル仮説（単語誤り率第１位）を正解仮説とするため、ｗk１＝ｗkrefである。次にＮ-best仮説リストの部分集合をHypsk(ｘ，ｙ)＝｛ｗki：ｉ＝１，ｘ≦ｉ≦ｙ｝と表記する。このとき、Hypsk(２，Ｎ)はＮ-best仮説リスト中の全仮説、Hypsk(Ｎ，Ｎ)は正解仮説と最も単語誤り率の高い仮説のみで構成される。
【００６０】
また、λの値が学習時と解析時で異なるため、いずれの値について言及しているのか曖昧になる可能性がある。そのためそれぞれλtrain，λtestと表記する。
【００６１】
まずHypsk(ｘ，ｙ)においてｙ＝１００，ｘに異なる値を与えて誤り訂正モデルを学習した。λtrain＝０の下で学習されている、これらの誤り訂正モデルをtestに対して適用した場合の単語誤り率を図３に示す。図中のbefore rerankingは誤り訂正モデル適用前の単語誤り率を示している、baselineは、100-best仮説リスト中の全仮説を用いてλtrain＝λtestの下で学習された誤り訂正モデルを用いて解析した場合の結果を示している。この場合は、単語誤り率が０．２％程度の改善に留まっている。一方、λtrain＝０の下で学習された誤り訂正モデルは、いずれも単語誤り率が１６．５％から１６．７％程度にまで性能が向上している。特に興味深い結果は、ｘ＝１００、すなわち正解と最も単語誤り率の高い仮説のみを用いた学習で高精度な誤り訂正モデルを生成可能という点である。ｘに小さな値を設定しても、それ以上の精度改善には効果がなく、むしろλtestに対し鋭敏に反応する結果となった。
【００６２】
次に、ｘ＝２として、ｙのみを変化させた場合の単語誤り率を図４に示す。但し、λtrain＝０の下で学習されている。ｙに大きな値を設定することで高い精度改善率が得られている。この結果からも、単語誤り率の高い仮説を学習に用いるという本発明の優位性が見て取れる。
【００６３】
最後に、誤り訂正モデルのパラメータ数の比較を表２に記載する。パラメータ数はαの非ゼロの要素数である。λtrainに小さな値を設定することで誤りパターンを数多く獲得し高精度な誤り訂正モデルを生成できる反面、パラメータ数が大きくなる。しかし、ｘに大きな値を設定することで、精度の低下なくパラメータ数を抑えることが可能となる。
【表２】
0004981579.tif 000006
【産業上の利用可能性】
【００６４】
本発明は、音声認識、手書き文字認識、言語翻訳などのパターン認識の認識結果に適用する誤り訂正モデルの学習に有用である。
【図面の簡単な説明】
【００６５】
【図１】実施形態に係る誤り訂正モデル学習装置の機能構成図。
【図２】誤り訂正モデル学習装置における誤り訂正モデル学習処理の処理フロー。
【図３】部分集合Hypsk(ｘ，１００)においてｘに異なる値を与えてλtrain＝０の下で学習した各誤り訂正モデルをtest（ＣＳＪに含まれる講演データ）に対して適用した場合の単語誤り率を示した図。
【図４】部分集合Hypsk(２，ｙ)においてｙに異なる値を与えてλtrain＝０の下で学習した各誤り訂正モデルをtest（ＣＳＪに含まれる講演データ）に対して適用した場合の単語誤り率を示した図。
【符号の説明】
【００６６】
１１    パラメータ設定部
１２    選択部
１３    誤り訂正部
１４    パラメータ更新部
【図１】
0004981579.tif 000007
【図２】
0004981579.tif 000008
【図３】
0004981579.tif 000009
【図４】
0004981579.tif 000010