JP5914054B2 - 言語モデル作成装置、音声認識装置、およびそのプログラム - Google Patents

言語モデル作成装置、音声認識装置、およびそのプログラム Download PDF

Info

Publication number
JP5914054B2
JP5914054B2 JP2012048231A JP2012048231A JP5914054B2 JP 5914054 B2 JP5914054 B2 JP 5914054B2 JP 2012048231 A JP2012048231 A JP 2012048231A JP 2012048231 A JP2012048231 A JP 2012048231A JP 5914054 B2 JP5914054 B2 JP 5914054B2
Authority
JP
Japan
Prior art keywords
appearance frequency
text
language model
frequency information
adaptation
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.)
Active
Application number
JP2012048231A
Other languages
English (en)
Other versions
JP2013182260A (ja
Inventor
悠哉 藤田
悠哉 藤田
亨 今井
亨 今井
彰夫 小林
彰夫 小林
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Japan Broadcasting Corp
Original Assignee
Japan Broadcasting Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Japan Broadcasting Corp filed Critical Japan Broadcasting Corp
Priority to JP2012048231A priority Critical patent/JP5914054B2/ja
Publication of JP2013182260A publication Critical patent/JP2013182260A/ja
Application granted granted Critical
Publication of JP5914054B2 publication Critical patent/JP5914054B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Machine Translation (AREA)

Description

本発明は、言語モデルを作成する言語モデル作成装置と、その言語モデルを用いた音声認識装置、ならびにそのプログラムに関する。
音声認識や機械翻訳等のテキスト処理を伴うアプリケーションでは、単語の連鎖(単語Nグラム)が出現する確率値を言語モデルとして利用する。この言語モデルは、大量のテキストを用いて学習することによって事前に構築しておく。そして、この言語モデルを頼りにして、音声認識処理においては入力音声に最適な正解単語列を探索したり、機械翻訳においては入力テキストを他の言語に翻訳したりする。このような言語モデルを、Nグラムモデルと呼ぶ。
例えば、「とくちょうは(わ)とうぶんです」という音声を認識する場合、「特徴は糖分です」も「特徴は等分です」も音響的には同等に正解候補である。このような場合にも、言語モデルは、各々の正解候補に特有の尤もらしさ(尤度、言語スコア)を与える。具体的にNグラムモデルでは、言語スコアとして、学習テキスト中の単語の相対頻度、つまり出現確率値を用いる。また、N(単語の連鎖数)が2以上の場合には、ある単語の出現確率は、直前の(N−1)単語の履歴に依存することを仮定する。例えばN=2の場合(バイグラムの場合)、「特徴は糖分です」という単語連鎖の言語スコアは、次の(1)から(3)までの確率をすべて乗算した値で与えられる。
(1)学習テキストにおいて、「特徴」という単語の次に「は」が出現する確率
(2)学習テキストにおいて、「は」という単語の次に「糖分」が出現する確率
(3)学習テキストにおいて、「糖分」という単語の次に「です」が出現する確率
上記のように、音声認識結果は、言語モデルに依存するため、学習テキスト中の単語の相対頻度によっても変化する。従って、音声認識の精度、つまり単語正解率を向上させるためには、認識対象とする音声の話題や発話スタイルに合致した学習テキストを大量に用意し、そのような学習テキストを用いて言語モデルを構築する必要がある。
また、事前に認識対象がわからない場合には、認識対象に合致した学習テキストを得ることができない。
また、事前に認識対象に関するテキスト(例えば、講演に対してはその概要を表わすテキスト、放送番組に対してはその番組の予告情報のテキスト)が得られたとしても、そこから明確な話題を正しく読み取れない場合には、たとえ人手に頼っても、話題に合致した学習テキストを適切に選択することは困難である。
特許文献1は、テキストの話題分類を自動的に行なう方法を開示している。従って、この技術によって自動的に分類された結果を用いて、話題ごとの言語モデルを構築することは考えられる。
また、特許文献2は、話題ごとの複数の言語モデルを予め記憶させておき、音声認識結果を用いて、どの話題の言語モデルをどの程度の重みで利用するかを計算しながら音声認識を実行する方法を開示している。
また、非特許文献1には、事前に得られる講義スライドのテキストを用いて言語モデルを適応化する技術が記載されている。
米国特許第6,687,696号明細書 国際公開第2008/004666号
根本雄介,河原達也,秋田祐哉,「スライド情報を用いた言語モデル適応による講義の音声認識と字幕付与」,一般社団法人情報処理学会,情報処理学会研究報告,SLP,音声言語情報処理,Vol.2007,No.47,pp.91−96,2007年
しかしながら、特許文献1に記載されている技術では、テキスト単位で話題の分類を行なうため、各々のテキスト内での詳細な話題の変化に対応することは困難である。
また、特許文献2に記載されている技術では、話題が多数の場合には言語モデルを記憶するために要する記憶容量が多く必要となる。また、話題ごとの言語モデルに正確に話題性が反映されていない場合には、言語モデルの性能向上は限定的である。
また、非特許文献1に記載されている技術では、すべての学習テキストを用いて構築した単一の言語モデルに対して、事前に入手し得る講義スライドのテキストと学習テキストとの間の話題の関連性を単語の出現確率に基づく尺度で計算して、その結果得られた値に応じて前記言語モデルの確率値を増減させている。この技術で効果を得るためには、各学習テキストに共通する単語や単語列を効果的に表現できる、確率統計的な手法を必要とする。
上述したような事情を考慮すると、大量の未分類の学習テキストの話題性および適応用テキスト(非特許文献1における講義スライドに相当)の話題性を自動的に判定し、人の判断無しに、効率的に言語モデルを適応的に構築することが望まれる。本発明は、大量の未分類の学習テキストと、少量の適応用テキストとに基づき、対象の話題に精度良く合致した言語モデルを自動的に作成することのできる言語モデル作成装置と、そのような言語モデルを利用した音声認識装置、およびそれらのプログラムを提供しようとするものである。
[1]上記の課題を解決するため、本発明の一態様による言語モデル作成装置は、複数の学習テキストそれぞれについて、言語要素列ごとの出現頻度を表わす出現頻度情報を算出する学習テキスト前処理部と、目的とする話題を表わす適応用テキストについて、言語要素列ごとの出現頻度を表わす適応用出現頻度情報を算出する適応用テキスト前処理部と、前記学習テキスト前処理部が算出した前記学習テキストごとの前記出現頻度情報を因子分解して、複数の出現頻度情報基底を算出するテキスト解析部と、前記テキスト解析部が算出した前記複数の出現頻度情報基底のうちの少なくとも一を用いて、前記適応用テキスト前処理部が算出した前記適応用出現頻度情報との類似度に基づく適応後出現頻度情報を生成し、前記適応後出現頻度情報が表わす言語要素列ごとの出現頻度から言語モデルを構築する言語モデル構築部とを具備する。
この構成において、言語要素とは、単語や文字や文などである。言語要素列とは、単語列や文字列や文の列などである。言語要素列の出現頻度とは、テキスト集合における言語要素列の出現回数や出現確率の値である。なお、出現回数の分布と出現確率の分布は本質的に同じものであり、ある特定の言語要素列の出現回数をある集合における全ての言語要素列の総出現回数で除したものが出現確率の値である。出現頻度情報基底とは、複数の出現頻度情報を因子分解して得られるものである。言語モデルは、言語要素列の出現頻度に基づいて構築されたデータの総体である。典型的には、Nグラム言語モデルが使われる。
上記の構成により、テキスト解析部は、学習テキストデータの集合から得られる出現頻度情報の基底を算出する。また、言語モデル構築部は、これら基底のうちの一または複数を用いて、適応用テキストデータから得られる出現頻度情報に類似した適応後出現頻度情報を生成する。適応用テキストデータから得られる出現頻度情報が言語要素列全体の集合をカバーする度合いが低いのに対して、学習データから得られる出現頻度情報は言語要素列全体の集合をカバーする度合いが高い。これにより、カバーする度合いが高く、且つ適応用テキストに整合した言語モデルが構築される。
[2]また、本発明の一態様は、上記の言語モデル作成装置において、前記出現頻度情報は、前記学習テキストごとの次元および前記言語要素列ごとの次元を有する出現頻度値の行列の情報であり、前記テキスト解析部は、前記前記出現頻度情報について非負値行列因子分解の処理をすることにより、前記複数の出現頻度情報基底を算出する、ことを特徴とする。
[3]また、本発明の一態様は、上記の言語モデル作成装置において、前記言語モデル構築部は、前記複数の出現頻度情報基底のそれぞれに重み付けした線形和と前記適応用出現頻度情報と間の所定尺度により前記類似度を算出するとともに、前記類似度がより良い方向に前記線形和にかかる重みを探索することによって、得られた前記線形和を適応後出現頻度情報として生成する、ことを特徴とする。
ここで、上記の所定尺度として、KL情報量、距離尺度、コサイン尺度などのいずれかを用いることができる。
[A1]言語モデル構築部は、一態様として、生成された適応後出現頻度情報の値を用いて、学習テキスト全体から構築される言語モデル(Nグラムモデル)が有する出現頻度値をスケーリング調整する。
[A2]言語モデル構築部は、一態様として、生成された適応後出現頻度情報の値を元に変換を行うことによって、当該適応後出現頻度情報が表わす言語要素列の次数(K)よりも小さい次数(N)を有するNグラム言語モデルを構築する。
[A3]言語モデル構築部は、一態様として、[A2]で構築されたNグラム言語モデルと、学習テキスト全体から構築される言語モデル(Nグラムモデル)とを線形補間する。
[A4]言語モデル構築部は、一態様として、[A2]において、複数の次数Kの各々により適応後出現頻度情報を算出し、それらに基づいてNグラム言語モデルを構築する。
[4]また、本発明の一態様は、上記のいずれかの言語モデル作成装置と、入力された音声を音響分析して音響特徴量を出力する音響分析部と、音響特徴量と音素との統計的関係を表わすデータを記憶する音響モデル記憶部と、前記音響分析部によって出力される前記音響特徴量の時系列に関して、前記音響モデル記憶部から読み出した前記統計的関係と、前記言語モデル作成装置の前記言語モデル構築部によって構築された前記言語モデルとを用いて、前記音声に対応する言語要素列の正解候補を探索し、前記正解候補の尤度を算出する、正解候補探索部と、を具備する音声認識装置である。
[5]また、本発明の一態様は、コンピューターを、複数の学習テキストそれぞれについて、言語要素列ごとの出現頻度を表わす出現頻度情報を算出する学習テキスト前処理手段、目的とする話題を表わす適応用テキストについて、言語要素列ごとの出現頻度を表わす適応用出現頻度情報を算出する適応用テキスト前処理手段、前記学習テキスト前処理手段が算出した前記学習テキストごとの前記出現頻度情報を因子分解して、複数の出現頻度情報基底を算出するテキスト解析手段、前記テキスト解析手段が算出した前記複数の出現頻度情報基底のうちの少なくとも一を用いて、前記適応用テキスト前処理手段が算出した前記適応用出現頻度情報との類似度に基づく適応後出現頻度情報を生成し、前記適応後出現頻度情報が表わす言語要素列ごとの出現頻度から言語モデルを構築する言語モデル構築手段、として機能させるためのプログラムである。
本発明によれば、各学習テキストに共通する言語要素(単語)や言語要素列(単語列)を、従来技術による方法よりも、一層効果的に表現した言語モデルを作成することができる。また、そのような言語モデルを用いて音声認識等の処理を行なうことができる。
また、本発明によれば、K=1の場合(適応用テキストの単語の統計量を用いる場合)も、K>1の場合(単語列の統計量を用いる場合)も、実装するアプリケーションの規模に応じて、適応用テキストの話題により良く適応した言語モデルを構築することができる。
また、本発明によれば、適応用テキストへの過適応の問題を避けることができる。
また、本発明によれば、人の判断により話題を分類したり特定したりすることなく、言語モデルの適応化を行うことができる。
本発明の実施形態による言語モデル作成装置と、その言語モデル作成装置を利用した音声認識装置の機能構成を示すブロック図である。 同実施形態による言語モデル作成装置が言語モデルを構築する処理の手順を示すフローチャートである。 本発明の実施形態(第1実施形態)により構築した言語モデルを、テストセット・パープレキシティで評価した結果を示すグラフである。 本発明の実施形態(第3実施形態)により構築した言語モデルを、テストセット・パープレキシティで評価した結果を示すグラフである。
<第1〜第4実施形態>
以下、図面を参照しながら、本発明の実施形態について説明する。特に示さない限りは、以下で述べることは第1実施形態から第4実施形態までに共通の事項である。第1〜第4実施形態の各々に特有の技術事項は、言語モデル構築部12における言語モデルの構築のしかたに関するものであり、それについては下で実施形態ごとに個別に説明する。
図1は、本発明の実施形態による言語モデル作成装置と、その言語モデル作成装置を利用した音声認識装置の機能構成を示すブロック図である。
言語モデル作成装置51は、大量の学習テキストと比較的少量の適応用テキストとを元に、適応用テキストが表わす話題に良く整合した言語モデルを自動的に作成する装置である。図示するように、言語モデル作成装置51は、言語モデル記憶部5と、D個(Dは正整数)の学習テキストを各々記憶する学習テキスト記憶部7−1〜7−Dと、テキスト前処理部8a(学習テキスト前処理部)およびテキスト前処理部8b(適応用テキスト前処理部)と、テキスト解析部9と、テキスト解析結果記憶部10と、適応用テキスト記憶部11と、言語モデル構築部12とを含んで構成される。
言語モデル記憶部5は、言語モデル構築部12によって構築された言語モデルを記憶する。言語モデルは、Nグラムモデルである。言語モデル記憶部5に記憶された言語モデルを、正解単語探索部3が正解を探索する際に参照する。
学習テキスト記憶部7−1〜7−Dは、D個の学習テキストを記憶する。D個の学習テキストを便宜上、1番からD番までに順序付けたとき、学習テキスト記憶部7−1は第1番の学習テキストを記憶し、学習テキスト記憶部7−2は第2番の学習テキストを記憶する。そして、以下、第D番まで同様である。
テキスト前処理部8aは、学習テキスト記憶部7−1〜7−Dから読み出す学習テキストの前処理を行なう。具体的には、テキスト前処理部8aは、複数の学習テキストそれぞれについて、K単語組(言語要素列)ごとの出現確率値(出現頻度値)を表わす出現確率値ベクトル(出現頻度情報)を算出する。また、テキスト前処理部8aが出力する出現確率値ベクトル(個々のベクトルはK単語組の種類の次元を有する)を並べることにより、出現確率値の行列(学習テキストごとの次元およびK単語組ごとの次元を有する、出現確率値の行列)として扱うこともできる。
テキスト前処理部8bは、適応用テキスト記憶部11から読み出す適応用テキストの前処理を行なう。具体的には、テキスト前処理部8bは、適応用テキストについて、K単語組(言語要素列)ごとの出現確率値(出現頻度値)を表わす出現確率値ベクトル(出現頻度情報)を算出する。なお、テキスト前処理部8aと8bをハードウェアとして別個に設けても良いし、両者を共通のハードウェアとして、データの入力元および出力先を切り替えながらテキスト前処理を行なうようにしても良い。
テキスト解析部9は、学習テキストに含まれる単語列の出現確率値に基づき、それら学習テキストの解析を行なう。具体的には、テキスト解析部9は、テキスト前処理部8aが算出した学習テキストごとの出現確率値ベクトル(出現頻度情報)を因子分解して、出現確率値ベクトルの複数の基底(出現頻度情報基底)を算出する。
テキスト解析結果記憶部10は、テキスト解析部9によって解析された結果(学習テキストごと、且つK単語組ごとの2次元の構造(行列など)を有する出現確率値データ)を記憶する。
適応用テキスト記憶部11は、適応化の対象となる話題を有する適応用テキストを記憶する。例えば、テレビ番組の音声を認識するための言語モデルを構築する場合には、その番組の台本テキストや、その番組の告知文・案内文などが適応用テキストとなり得る。
言語モデル構築部12は、テキスト解析部9が算出した出現確率値ベクトルの複数の基底のうちの少なくとも一を用いて、テキスト前処理部8bが算出した適応用テキストの出現確率値ベクトル(適応用出現頻度情報)との類似度に基づく適応後ベクトル(適応後出現頻度情報)を生成し、この適応後ベクトルが表わす単語組(言語要素列)ごとの出現確率値(出現頻度)からNグラム言語モデルを構築する。
また、音声認識装置52は、言語モデル作成装置51が作成した言語モデルを用いて、入力される音声について、音声認識処理を行なう装置である。音声認識装置52は、上記の言語モデル作成装置51を含み、さらに、音声入力部1と、音響分析部2と、正解単語探索部3と、音響モデル記憶部4と、認識結果出力部6とを含んで構成される。
音声入力部1は、認識対象の音声を外部から取得する。音声入力部1が取得する音声データは、例えば、時間領域の信号あるいは周波数領域の信号を量子化してデジタルデータとして表わしたものである。
音響分析部2は、入力された音声を音響分析して音響特徴量を出力する。具体的には、音響分析部2は、音声入力部1が取得した音声を分析し、音の物理的な大きさや周波数特性などといった特徴量を抽出する。抽出される特徴量の一例は、MFCC(メル周波数ケプストラム係数)である。
正解単語探索部3は、音響モデル記憶部4に記憶されている音響モデルと言語モデル記憶部に記憶されている言語モデルとを参照しながら、入力音声に対する尤度の高い正解単語列の探索を実行する。言い換えれば、正解単語探索部3は、音響分析部2によって出力される音響特徴量の時系列に関して、音響モデル記憶部4から読み出した音響特徴量と音素との間の統計的関係と、言語モデル作成装置51が備える言語モデル構築部12によって構築されて言語モデル記憶部5に格納された言語モデルとを用いて、音声に対応する単語列(言語要素列)の正解候補を探索するとともに、それら正解候補の尤度を算出する。そして、正解単語探索部3は、探索の結果、尤度の高い単語列を正解単語の列(音声認識結果)として出力する。
音響モデル記憶部4は、音響モデルを記憶する。音響モデルは、音響特徴量と音素との統計的関係を表わすデータである。
認識結果出力部6は、正解単語探索部3によって求められた単語列(正解であると判定された最尤単語列)を、認識結果として出力する。
図2は、言語モデル作成装置51が言語モデルを構築する処理の手順を示すフローチャートである。以下、このフローチャートに沿って説明する。
まず、ステップS1では、テキスト前処理部8aが、学習テキスト記憶部7−1から7−Dまでに記憶されている各々のテキストを読み出し、K単語組出現確率行列を構築する。そのために、テキスト前処理部8aはまず、テキストごとに、K単語組の出現確率値ベクトルを作成する。ここで、Kは、適宜定められる正整数である。K単語組とは、連鎖数Kの単語列である。n番目(1≦n≦D)の学習テキストdにおけるK単語組の出現確率値ベクトルp(t|d)の要素は、p(t|d)と表わされる。ここで、tは、第i番目(1≦i≦M)のK単語組である。iは、特定のK単語組を指示するインデックスである。Mは、言語モデル作成装置51が扱う全テキストに出現するK単語組の種類数である。例えば、K=3とするとき、全テキストに出現する単語語彙のサイズが1万程度である場合に、K単語組(即ち、3単語組)の種類数Mは典型的には100万から200万程度の範囲内の値である。つまり、上記の出現確率値ベクトルp(t|d)は、M次元の列ベクトルであり、下の式(1)で表わされる。なお、式(1)における右肩の「T」は、行列あるいはベクトルの転置を表わす。
Figure 0005914054
なお、学習テキストdにおけるK単語組tの出現確率値を求めるために、テキスト前処理部8aは、学習テキストdの形態素解析を行なって単語列に分解し、その単語列に含まれるK単語組の各々をカウントし、K単語組tの出現頻度を、学習テキストdに含まれる全てのK単語組の数で除する計算を行なう。
D個のK単語組の出現確率値ベクトルp(t|d)が得られると、テキスト前処理部8aは、これらのD本のベクトルを並べた行列Vを構築する。行列Vは、下の式(2)に表わされる通りである。そして、テキスト前処理部8aは、構築した行列Vのデータをテキスト解析部9に渡す。Vは、M行D列の行列である。
Figure 0005914054
次に、ステップS2では、テキスト解析部9が学習テキストを解析し、K単語組の出現確率値ベクトルの基底を算出する。行列Vの要素はいずれも非負値であり、この処理は、テキスト解析部9が行列Vに非負値行列因子分解(NMF,non-negative matrix factorization)を適用することにより行なう。具体的には、テキスト解析部9は、外部からの入力により指定された、あるいは設定により定められた正整数Rに基づいて、下の式(3)によって、行列WおよびHを求める。
Figure 0005914054
非負値行列因子分解の処理自体は、参考文献[Daniel D. Lee,H. Sebastian Seung,“Learning the parts of objects by non-negative-matrix-factorization.”,Nature,Vol.401,pp.788-791,1999年]にも記載されているように、既存技術を用いて行なえる。非負値行列因子分解の結果得られる行列の積WHは、行列Vの近似値である。つまり、非負値行列因子分解は、一例として、VとWHとの間の距離(距離の公理を満たし、適宜定義される距離)が最小になるようにWとHを調整することにより行なう。そして、因子分解の結果得られたWは、M行R列の行列である。またHは、R行D列の行列である。行列Wに含まれるR本の列ベクトルp(t|r),・・・,p(t|r)の各々が、行列Vに含まれていたD本の出現確率ベクトルの基底である。各々の基底ベクトルの第i番目の要素は、当該基底における、第i番目(1≦i≦M)のK単語組の出現確率値を表わす。また、行列Hに含まれるD本の列ベクトルh,・・・,hは、それぞれ、元のD個の学習テキストに対応する重みである。
このステップS2の処理(非負値行列因子分解)により、テキスト解析部9は、D個の学習テキストにおけるK単語組の出現確率値を解析した。この解析の結果としてテキスト解析部9が得たものは、行列Wであり、即ち、K単語組の出現確率値に関するR本の基底ベクトルである。テキスト解析部9は、得られた行列Wをテキスト解析結果記憶部10に書き込む。
次に、ステップS3では、言語モデル構築部12が、適応後ベクトルを計算する。
まず、そのための、テキスト前処理部8bによる処理から説明する。テキスト前処理部8bは、適応用テキスト記憶部11から適応用テキストを読み出す。そして、この適応用テキストに対応する、K単語組の出現確率値ベクトルp(t|d´)を算出する。テキスト前処理部8bがこの出現確率値ベクトルを作成する方法は、ステップS1においてテキスト前処理部8aが個々の学習テキストに対する出現確率値ベクトルp(t|d)を求めた方法と同様である。
そして、言語モデル構築部12は、テキスト解析結果記憶部10から、学習テキストに基づく出現確率値の基底ベクトル集合(即ち、行列W)のデータを読み出す。そして、言語モデル構築部12は、行列Wに含まれている基底ベクトルを用いて、適応用テキストから得られた出現確率値ベクトル(適応用出現頻度情報)p(t|d´)を最良に近似する確率ベクトルを計算する。この処理で言語モデル構築部12が求めるベクトルは、下の式(4)で表わされる。
Figure 0005914054
式(4)において、h´は、R次元の列ベクトルである。また、D(p(t|d´)||Wh´)は、ベクトルp(t|d´)とWh´の間の近似度(類似度)を表わす距離尺度である。この尺度を算出するために、一例としては、カルバック・ライブラー情報量(KL情報量)を用いる。また、KL情報量の代わりに、ユークリッド距離や、他の距離尺度を用いても良い。
この言語モデル構築部12の処理の段階では、行列Wは、テキスト解析結果記憶部10から読み出される定数である。よって、式(4)によって最適なベクトルWh´を求めるためには、言語モデル構築部12は、上記の距離尺度の値が最も小さくなるようなh´を探索する。この探索のためのアルゴリズムとしては、例えば最急勾配法を用いる。これによって得られたM次元の列ベクトルWh´が、出現確率値の適応後ベクトルである。つまり、言語モデル構築部12は、複数の基底ベクトルのそれぞれにベクトルh´によって重み付けした線形和と、適応用テキストから得られた出現確率値ベクトルと間の所定尺度により類似度を算出するとともに、この類似度がより良い方向に(距離尺度の場合には距離が短くなる方向に)、線形和にかかる重みのベクトルh´を探索することによって、得られた線形和であるWh´を適応後ベクトルとして生成する。なお、非負値行列因子分解を行なって基底ベクトルを求め、そこから適応後ベクトルを生成したことにより、適応後ベクトルが適応用テキストに過適応(overfitting)することを回避することもできている。
ステップS4以後では、ステップS3で得られた適応後ベクトル(適応用テキストの出現確率値ベクトルを近似するWh´)を用いて言語モデルを構築する処理を行なう。
ステップS4では、不等式で表わされる条件「K<N」の真偽によって処理を分岐する。ここで、Nは、構築するNグラム言語モデルの連鎖数である。なお、KおよびNの各々の値は、装置において固定的に設定するようにしても良く、また動的に設定可能としても良い。条件「K<N」が真であるとき(ステップS4:YES)にはステップS7へ進み、偽であるとき(ステップS4:NO)にはステップS5へ進む。
<第1実施形態 条件「K<N」>
ステップS7に進んだ場合、即ちK<Nの場合、つまり学習テキストから得られた適応後ベクトルが表わす単語組の連鎖数よりも構築しようとするNグラム言語モデルの単語連鎖数のほうが大きい場合、学習テキスト全体でNグラム言語モデル(ベース言語モデル)を構築し(ステップS7)、そのNグラム言語モデルの単語確率値を、適応後ベクトルの値に応じて増減させる(ステップS8)。その具体的処理は、次の通りである。
まず、ステップS7では、言語モデル構築部12は、学習テキスト記憶部7−1〜7−Dに記憶されている全学習テキストに基づき、ベースのNグラム言語モデルを構築する。そのベース言語モデルは、N単語組の、第1番目から第(N−1)番目までの単語列を前提とした、第N番目の単語の条件付出現確率値のデータを含む。これは、下の式(5)で表わされる。
Figure 0005914054
式(5)において、「B」は適応化されていないベース言語モデルであることを表わしている。また、wi,Nは第i番目のN単語組における第N番目の単語を表わす。また、w(上付き:N−1 下付き:i,1)は、第i番目の単語列の第1番目から第(N−1)番目までの単語の列を表わす。
さらにこのベース言語モデルは、(N−1)単語組、(N−2)単語組、・・・、1単語組についても、同様の条件付確率値のデータを含む。但し、1単語組の場合には、単純な単語の出現確率(P(w))である。
次に、ステップS8では、言語モデル構築部12は、上記のベース言語モデルに対して、適応後ベクトルの値に応じた確率値の増減を行なう。言い換えれば、言語モデル構築部12は、ベース言語モデルが有する確率値を、適応後ベクトルが有する確率分布でスケーリングしなおす。即ち、適応後ベクトルWh´をp(w|d´)と表わす(このベクトルの第i番目の要素は、第i番目のK単語組の出現確率値)と、言語モデル構築部12が求めるNグラム言語モデルは、下の式(6)で表わされる。
Figure 0005914054
但し、式(6)で掛けている係数の分母であるP(w)は、K単語組wのベース言語モデルにおける出現確率であり、容易に求められる。そして、言語モデル構築部12は、作成した言語モデルを言語モデル記憶部5に書き込む。
つまり上記の通り、ステップS7からS8では、ベース言語モデルで得られる出現確率値に、ベース言語モデルにおけるK単語組の出現確率(学習テキスト全体におけるK単語組の出現確率)に対する適応後ベクトルにおける出現確率の比を、乗じる処理を行なっている。ステップS8の終了後には、言語モデル作成装置51は、このフローチャート全体の処理を終了する。
<第2実施形態 条件「K≧N」>
ステップS5に進んだ場合、即ちK≧Nの場合、つまり学習テキストから得られた適応後ベクトルが表わす単語組の連鎖数よりも構築しようとするNグラム言語モデルの単語連鎖数のほうが小さい場合、あるいは両者が等しい場合、適応後ベクトルWh´が有する出現確率値をN単語組の出現確率を求め、言語モデルを構築する。つまり、この場合に言語モデル構築部12が求めるNグラム言語モデルは、下の式(7)で表わされる。
Figure 0005914054
なお、式(7)におけるw(上付き:N 下付き:i,1)は、第i番目のN単語組における第1番目から第N番目までの単語の列を表わす。なお、NがKより小さい場合には、K単語組の出現確率値から、N単語組の出現確率値を算出する。
即ち、ステップS5では、言語モデル構築部12は、適応後ベクトルWh´(K単語組の出現確率値)からN単語組の出現確率値(回数)への変換を行う。K単語組の出現確率値からk単語組(k≦K)の出現確率値を求めることは、あるk単語組を含むK単語組の出現確率値の総和を計算することにより行う。
そして、ステップS6では、言語モデル構築部12は、得られたk単語組(k=N−1およびk=N)の出現確率値を用いて、式(7)による計算を行い、Nグラム言語モデルを構築する。そして、言語モデル構築部12は、作成した言語モデルを言語モデル記憶部5に書き込む。ステップS6の終了後には、言語モデル作成装置51は、このフローチャート全体の処理を終了する。
<第3実施形態 条件「K≧N」>
第3実施形態では、言語モデル構築部12による言語モデルの構築のしかたのみが異なり、その他の技術事項は、第2実施形態と同様である。
ここで述べる第3実施形態は、上記の第2実施形態のいずれかで得られた言語モデルを、さらに学習テキスト全体から構築される言語モデルとの間で線形補間するものである。本実施形態で作成する言語モデルは、下の式(8)で表わされる。
Figure 0005914054
式(8)の第1項は、第2実施形態において説明した処理で構築される、適応後ベクトルに基づく言語モデルに、係数λ(0<λ<1)を乗じたものである。また、第2稿は、D個の学習テキスト全体から構築されるベースの言語モデルに、係数(1−λ)を乗じたものである。係数λの値は、設定等により定められる。
<第4実施形態 条件「K≧N」>
第4実施形態では、以下で述べる事項が第2実施形態と異なり、その他の技術事項は、第2実施形態と同様である。
第2実施形態では、フローチャートにおけるステップS5の計算をする際に、あるk単語組を含むK単語組の出現確率値の総和を計算することにより行うことにより、k単語組(k≦K)の出現確率値を求めた。第4実施形態による言語モデル作成装置51では、その代わりに、必要とされる各々のkについて、図2のフローチャートに示された処理手順のステップS1からS3までの処理を実行することにより、適応後ベクトルを算出する。そして、k単語組の適応後ベクトルを用いて、言語モデル構築部12が式(7)の計算を行なう。一例としては、N=3でNグラム言語モデルを構築するときには、下の式(9)の計算を行なう。
Figure 0005914054
但し、式(9)において、w(上付き:3 下付き:i,1)は、第i番目の3単語組における第1番目から第3番目までの単語の列(つまり、当該3単語組の全体)を表わす。また、w(上付き:2 下付き:i,1)は、第i番目の3単語組における第1番目から第2番目までの単語の列を表わす。式(9)の右辺の分子は、k=3についての適応後ベクトルから得られる出現確率値である。式(9)の右辺の分母は、k=2についての適応後ベクトルから得られる出現確率値である。
なお、第4の実施形態で説明した方法で言語モデルを構築し、さらに、第3の実施形態で説明した方法でベース言語モデルとの間での線形補間を行なうようにしても良い。
なお、上述した実施形態における言語モデル作成装置や音声認識装置の機能をコンピューターで実現するようにしても良い。その場合、この機能を実現するためのプログラムをコンピューター読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピューターシステムに読み込ませ、実行することによって実現しても良い。なお、ここでいう「コンピューターシステム」とは、OSや周辺機器等のハードウェアを含むものとする。また、「コンピューター読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピューターシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピューター読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバーやクライアントとなるコンピューターシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含んでも良い。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピューターシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。
以上、複数の実施形態を説明したが、本発明はさらに次のような変形例でも実施することが可能である。なお、可能な組み合わせにおいて、下記の変形例の複数の構成を組み合わせた構成として実施しても良い。
<変形例1>
上記の第1〜第4実施形態の各々では、フローチャート(図2)のステップS3の処理において、式(4)を用いることによって適応後ベクトルWh´を求めた。これは、行列Wに含まれるR個の基底ベクトル全ての積和(sum of products)の最適解を探索している処理である。その代わりに、本変形例では、行列Wに含まれるR個の基底ベクトルのうち、適応用テキストを元に得られたベクトルp(t|d´)に最も近いものを選択して、それを適応後ベクトルとする。この選択の際、例えば、カルバック・ライブラー情報量や何らかの距離尺度を、尺度として用いる。本変形例では、適応後ベクトルを求めるための計算量が少なく済む。別の見方では、本変形例は、ベクトルh´の非零要素が1個だけであるような解Wh´を適応後ベクトルとして選ぶことと同等である。
<変形例2>
上記の変形例1では行列Wに含まれるR個の基底ベクトルのうち1個を選択して適応後ベクトルとしたのに対して、本変形例では、R個の基底ベクトルのうち、適応用テキストを元に得られたベクトルp(t|d´)に比較的近いR´個(1<R´<R)を選び、選ばれたR´個のベクトルを並べてなる行列W´を形成し、行列Wの代わりにこの行列W´を用いて、式(4)と同様の探索を行なうことによって、適応後ベクトルW´h´を求める。本変形例では、上記の変形例1よりは精度の良い適応後ベクトルを得られる場合が多い。別の見方では、本変形例は、ベクトルh´に値がゼロである要素をいくつか含むような解Wh´を適応後ベクトルとして選ぶことと同等である。
<変形例3>
上記の第1〜第4実施形態の各々では、音声認識装置52を構成する一部分として言語モデル作成装置51を組み込んだ。その代わりに、言語モデル作成装置51のみを独立させて構成しても良い。このような独立構成の言語モデル作成装置51は、様々な用途の言語モデルを作成することができる。
<変形例4>
音声認識装置52を構成する一部分としてではなく、機械翻訳装置や、テキスト変換装置や、テキスト検索装置(例えば、ウェブ検索エンジンなど)などを構成する一部分として言語モデル作成装置51を組み込む構成としても良い。
<変形例5>
上記の第1〜第4実施形態の各々では、単語を言語要素とし、所定の長さの単語組を言語要素列として、その出現頻度に基づく言語モデルの構築を行なうようにした。変形例5では、単語の代わりに、その他の言語要素の列の出現頻度を解析し、それに基づく言語モデルを構築するように構成する。単語以外の言語要素の一例は、文字である。なお、対象とする言語は、日本語に限らず、他の言語(英語、仏語、中国語等)であっても良い。
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
<実施形態の評価>
第1実施形態および第3実施形態のそれぞれによって実際に言語モデルを作成し、そのテストセット・パープレキシティ(test-set perplexity,平均単語分岐数)を評価した。テストセット・パープレキシティは、Nグラム言語モデルの評価基準として用いられる値である。評価テキスト集合に対する1単語あたりのエントロピーをH(L)とすると、テストセット・パープレキシティは2のH(L)乗で与えられる。つまり、テストセット・パープレキシティは、確率分布によるエントロピーを考慮したときの1単語の分岐場合数と言える。パープレキシティが低いことは、エントロピーを考慮したときの単語の分岐数が少なく評価テキスト集合をうまくモデリングできていることを、一般的には意味する。
図3は、第1実施形態によって構築した言語モデルを評価したグラフである。このグラフの横軸はR(非負値行列因子分解の際の因子数)であり、縦軸はパープレキシティである。図示するグラフにおいて、「適応なし」(破線)は適応を行なわない場合を示し、「従来法による適応」(実線および四角のプロット点)は、前記の非特許文献1の第2.1節に記載されているPLSAユニグラムスケーリング法を用いた場合を示す。「実施形態1」(実線および三角のプロット点)は、前述の第1実施形態によって作成した言語モデルを用いた場合(N=3,K=1とした)を示す。「従来法」と「実施形態1」との間の方法の主な違いは、R個の出現確率値ベクトルを求める際に、「実施形態1」では非負値行列因子分解を用いた点である。示されている結果から明らかなように、本発明の第1実施形態によるテストセット・パープレキシティは、従来法のそれよりも低下している。つまり、第1実施形態による効果が実験的に確認された。
図4は、第3実施形態によって構築した言語モデルを評価したグラフである。このグラフも、図3と同様に、横軸はRであり、縦軸はパープレキシティである。図示するグラフにいて、「適応なし」(破線)は適応を行なわない場合を示し、「従来法による適応」(実線および四角のプロット点)は、前記の非特許文献1の第2.1節に記載されているPLSAユニグラムスケーリング法を用いた場合を示す。「実施形態3」(実線および丸印のプロット点)は、前述の第3実施形態によって作成した言語モデルを用いた場合(N=3,K=1とした)を示す。本発明の第3実施形態によるテストセット・パープレキシティは、従来法のそれよりも低下している。つまり、第3実施形態による効果が実験的に確認された。
なお、本発明の各実施形態は、それぞれ、言語モデル作成のために要する計算量や実装の容易さが異なる。また、アプリケーションによってどの実施形態が最適な性能を発揮するかも異なる。例えば、第1実施形態の方法をN=3,K=1で実施した場合には、学習テキスト全体の集合が比較的小規模なアプリケーションに向いている。また例えば、第2および第3実施形態の方法をN=K=3で実施した場合には、学習テキスト全体の集合が比較的大規模なアプリケーションに向いている。これは、学習テキストの量が多いほど、学習テキストから抽出されるK単語組が、現実の言語空間におけるK単語組をカバーする率が上昇するためである。本発明を実施するにあたっては、それらの事情を考慮して、適切な形態を選択することが望ましい。
本発明は、言語の統計的性質を表わす言語モデルの構築に利用できる。また、言語モデルを利用した言語処理(特に、自然言語処理)に利用できる。本発明を適用することが可能な言語処理の例は、音声認識や、機械翻訳や、テキスト変換や、テキスト検索などである。
1 音声入力部
2 音響分析部
3 正解単語探索部
4 音響モデル記憶部
5 言語モデル記憶部
6 認識結果出力部
7−1〜7−D 学習テキスト記憶部
8a テキスト前処理部(学習テキスト前処理部,学習テキスト前処理手段)
8b テキスト前処理部(適応用テキスト前処理部,適応用テキスト前処理手段)
9 テキスト解析部(テキスト解析手段)
10 テキスト解析結果記憶部
11 適応用テキスト記憶部
12 言語モデル構築部(言語モデル構築手段)
51 言語モデル作成装置
52 音声認識装置

Claims (5)

  1. 複数の学習テキストそれぞれについて、言語要素列ごとの出現頻度を表わす出現頻度情報を算出する学習テキスト前処理部と、
    目的とする話題を表わす適応用テキストについて、言語要素列ごとの出現頻度を表わす適応用出現頻度情報を算出する適応用テキスト前処理部と、
    前記学習テキスト前処理部が算出した前記学習テキストごとの前記出現頻度情報を因子分解して、複数の出現頻度情報基底を算出するテキスト解析部と、
    前記テキスト解析部が算出した前記複数の出現頻度情報基底のうちの少なくとも一を用いて、前記適応用テキスト前処理部が算出した前記適応用出現頻度情報との類似度に基づく適応後出現頻度情報を生成し、前記適応後出現頻度情報が表わす言語要素列ごとの出現頻度から言語モデルを構築する言語モデル構築部と、
    を具備することを特徴とする言語モデル作成装置。
  2. 前記出現頻度情報は、前記学習テキストごとの次元および前記言語要素列ごとの次元を有する出現頻度値の行列の情報であり、
    前記テキスト解析部は、前記前記出現頻度情報について非負値行列因子分解の処理をすることにより、前記複数の出現頻度情報基底を算出する、
    ことを特徴とする請求項1に記載の言語モデル作成装置。
  3. 前記言語モデル構築部は、前記複数の出現頻度情報基底のそれぞれに重み付けした線形和と前記適応用出現頻度情報と間の所定尺度により前記類似度を算出するとともに、前記類似度がより良い方向に前記線形和にかかる重みを探索することによって、得られた前記線形和を適応後出現頻度情報として生成する、
    ことを特徴とする請求項1または請求項2に記載の言語モデル作成装置。
  4. 請求項1から3までのいずれか一項に記載の言語モデル作成装置と、
    入力された音声を音響分析して音響特徴量を出力する音響分析部と、
    音響特徴量と音素との統計的関係を表わすデータを記憶する音響モデル記憶部と、
    前記音響分析部によって出力される前記音響特徴量の時系列に関して、前記音響モデル記憶部から読み出した前記統計的関係と、前記言語モデル作成装置の前記言語モデル構築部によって構築された前記言語モデルとを用いて、前記音声に対応する言語要素列の正解候補を探索し、前記正解候補の尤度を算出する、正解候補探索部と、
    を具備することを特徴とする音声認識装置。
  5. コンピューターを、
    複数の学習テキストそれぞれについて、言語要素列ごとの出現頻度を表わす出現頻度情報を算出する学習テキスト前処理手段、
    目的とする話題を表わす適応用テキストについて、言語要素列ごとの出現頻度を表わす適応用出現頻度情報を算出する適応用テキスト前処理手段、
    前記学習テキスト前処理手段が算出した前記学習テキストごとの前記出現頻度情報を因子分解して、複数の出現頻度情報基底を算出するテキスト解析手段、
    前記テキスト解析手段が算出した前記複数の出現頻度情報基底のうちの少なくとも一を用いて、前記適応用テキスト前処理手段が算出した前記適応用出現頻度情報との類似度に基づく適応後出現頻度情報を生成し、前記適応後出現頻度情報が表わす言語要素列ごとの出現頻度から言語モデルを構築する言語モデル構築手段、
    として機能させるためのプログラム。
JP2012048231A 2012-03-05 2012-03-05 言語モデル作成装置、音声認識装置、およびそのプログラム Active JP5914054B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012048231A JP5914054B2 (ja) 2012-03-05 2012-03-05 言語モデル作成装置、音声認識装置、およびそのプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012048231A JP5914054B2 (ja) 2012-03-05 2012-03-05 言語モデル作成装置、音声認識装置、およびそのプログラム

Publications (2)

Publication Number Publication Date
JP2013182260A JP2013182260A (ja) 2013-09-12
JP5914054B2 true JP5914054B2 (ja) 2016-05-11

Family

ID=49272905

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012048231A Active JP5914054B2 (ja) 2012-03-05 2012-03-05 言語モデル作成装置、音声認識装置、およびそのプログラム

Country Status (1)

Country Link
JP (1) JP5914054B2 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5921507B2 (ja) * 2013-09-26 2016-05-24 日本電信電話株式会社 対話傾向得点化装置、方法及びプログラム
JP6353408B2 (ja) * 2015-06-11 2018-07-04 日本電信電話株式会社 言語モデル適応装置、言語モデル適応方法、プログラム
KR102386863B1 (ko) 2015-09-09 2022-04-13 삼성전자주식회사 사용자 기반 언어 모델 생성 장치, 방법 및 음성 인식 장치
CN109036378A (zh) * 2018-09-03 2018-12-18 广东美的厨房电器制造有限公司 家电语音识别测试方法、装置、系统及存储介质
CN114492450A (zh) * 2021-12-22 2022-05-13 马上消费金融股份有限公司 文本匹配方法及装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6477488B1 (en) * 2000-03-10 2002-11-05 Apple Computer, Inc. Method for dynamic context scope selection in hybrid n-gram+LSA language modeling
WO2008001485A1 (fr) * 2006-06-26 2008-01-03 Nec Corporation système de génération de modèles de langue, procédé de génération de modèles de langue et programme de génération de modèles de langue
JP5212910B2 (ja) * 2006-07-07 2013-06-19 日本電気株式会社 音声認識装置、音声認識方法、および音声認識用プログラム
US9223850B2 (en) * 2009-04-16 2015-12-29 Kabushiki Kaisha Toshiba Data retrieval and indexing method and apparatus

Also Published As

Publication number Publication date
JP2013182260A (ja) 2013-09-12

Similar Documents

Publication Publication Date Title
US11210475B2 (en) Enhanced attention mechanisms
KR102167719B1 (ko) 언어 모델 학습 방법 및 장치, 음성 인식 방법 및 장치
US10210862B1 (en) Lattice decoding and result confirmation using recurrent neural networks
EP2727103B1 (en) Speech recognition using variable-length context
JP6222821B2 (ja) 誤り修正モデル学習装置、及びプログラム
JP5541035B2 (ja) 音声検索装置及び音声検索方法
EP4018437B1 (en) Optimizing a keyword spotting system
JP5982297B2 (ja) 音声認識装置、音響モデル学習装置、その方法及びプログラム
US20100100379A1 (en) Voice recognition correlation rule learning system, voice recognition correlation rule learning program, and voice recognition correlation rule learning method
CN111145718A (zh) 一种基于自注意力机制的中文普通话字音转换方法
Mousa et al. Morpheme-based feature-rich language models using deep neural networks for LVCSR of Egyptian Arabic
EP2133868A1 (en) Weight coefficient learning system and audio recognition system
JP7072178B2 (ja) 自然言語処理のための装置、方法及びプログラム
JP5914054B2 (ja) 言語モデル作成装置、音声認識装置、およびそのプログラム
Lugosch et al. Donut: Ctc-based query-by-example keyword spotting
JP2022169757A (ja) 探索装置、探索方法及び探索プログラム
WO2022148176A1 (en) Method, device, and computer program product for english pronunciation assessment
Suyanto et al. End-to-End speech recognition models for a low-resourced Indonesian Language
JP2015084047A (ja) 文集合作成装置、文集合作成方法および文集合作成プログラム
HaCohen-Kerner et al. Language and gender classification of speech files using supervised machine learning methods
KR100480790B1 (ko) 양방향 n-그램 언어모델을 이용한 연속 음성인식방법 및장치
Seki et al. Diversity-based core-set selection for text-to-speech with linguistic and acoustic features
JP5976037B2 (ja) モデル学習装置、ランキング装置、方法、及びプログラム
KR20040055417A (ko) 대화체 연속음성인식 장치 및 방법
KR20200120595A (ko) 언어 모델 학습 방법 및 장치, 음성 인식 방법 및 장치

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150202

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160225

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20160308

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160404

R150 Certificate of patent or registration of utility model

Ref document number: 5914054

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250