JPH1097271A - 言語モデル構成法、音声認識用モデル及び音声認識方法 - Google Patents
言語モデル構成法、音声認識用モデル及び音声認識方法Info
- Publication number
- JPH1097271A JPH1097271A JP8251743A JP25174396A JPH1097271A JP H1097271 A JPH1097271 A JP H1097271A JP 8251743 A JP8251743 A JP 8251743A JP 25174396 A JP25174396 A JP 25174396A JP H1097271 A JPH1097271 A JP H1097271A
- Authority
- JP
- Japan
- Prior art keywords
- cluster
- word
- language model
- clusters
- construction method
- 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.)
- Pending
Links
Abstract
(57)【要約】
【課題】 大語彙に対しても簡単にモデルを作ることが
できる。 【解決手段】 学習データを1つの初期クラスタとし
(1)、その単語ごとの出現回数を単語出現確率とし、
クラスタの乱雑さの大きいクラスタを選択し(2)、そ
のクラスタに先行するクラスタとして初期クラスタを追
加し、これと分割するクラスタ伸長(3)と、前記選択
したクラスタを、各クラスタ内の単語出現確率の組間の
差が小さくなるように複数のクラスタに分割し(4)、
前記伸長と分割中の乱雑さが小さくなる方にクラスタ構
造を変更し(5,6)、十分乱雑さが小さくなるまでク
ラスタ選択(2)に戻って上記処理を繰返す。
できる。 【解決手段】 学習データを1つの初期クラスタとし
(1)、その単語ごとの出現回数を単語出現確率とし、
クラスタの乱雑さの大きいクラスタを選択し(2)、そ
のクラスタに先行するクラスタとして初期クラスタを追
加し、これと分割するクラスタ伸長(3)と、前記選択
したクラスタを、各クラスタ内の単語出現確率の組間の
差が小さくなるように複数のクラスタに分割し(4)、
前記伸長と分割中の乱雑さが小さくなる方にクラスタ構
造を変更し(5,6)、十分乱雑さが小さくなるまでク
ラスタ選択(2)に戻って上記処理を繰返す。
Description
【0001】
【発明の属する技術分野】この発明は例えば音声認識に
用いられる言語モデルを構成する方法、その言語モデ
ル、およびその言語モデルを用いた音声認識方法に関す
る。
用いられる言語モデルを構成する方法、その言語モデ
ル、およびその言語モデルを用いた音声認識方法に関す
る。
【0002】
【従来の技術】例えば音声認識装置において、順次現わ
れる複数の単語候補を配列した複数の単語列について尤
もらしいものを選出して認識結果を出力する。従来、単
語列の尤もらしさを測る尺度としては、学習データ内に
現れる単語連鎖から、個々の単語列に対してその出現確
率を求めておく方法が採られている。この方法の場合、
取り扱う単語の個数をNとすれば、単語の2つ組に対す
る出現確率は全部でN2通りある。また、単語の3つ組
に対する出現確率はN3 通りあり、出現確率の数は膨大
となる。単語数が数千を越える場合には現在の計算機ア
ーキテクチャでは、上述の単語のすべての組み合わせに
対する出現確率をメモリ上に同時に載せることは困難
で、ファイルからの読み込みなどで出現確率の算定を実
現している。しかし、音声認識処理など実時間性が必要
とされる場合には処理速度が低下してしまい、効率的で
有効性の高いシステムを実現することは困難である。更
にデータサイズの観点から、数千語を扱う場合に参照す
る単語列の長さを3単語以上にすることは現実上不可能
であり、単語の出現が先行する長い単語列の影響を受け
る場合に詳細なモデル化をすることが困難であった。
れる複数の単語候補を配列した複数の単語列について尤
もらしいものを選出して認識結果を出力する。従来、単
語列の尤もらしさを測る尺度としては、学習データ内に
現れる単語連鎖から、個々の単語列に対してその出現確
率を求めておく方法が採られている。この方法の場合、
取り扱う単語の個数をNとすれば、単語の2つ組に対す
る出現確率は全部でN2通りある。また、単語の3つ組
に対する出現確率はN3 通りあり、出現確率の数は膨大
となる。単語数が数千を越える場合には現在の計算機ア
ーキテクチャでは、上述の単語のすべての組み合わせに
対する出現確率をメモリ上に同時に載せることは困難
で、ファイルからの読み込みなどで出現確率の算定を実
現している。しかし、音声認識処理など実時間性が必要
とされる場合には処理速度が低下してしまい、効率的で
有効性の高いシステムを実現することは困難である。更
にデータサイズの観点から、数千語を扱う場合に参照す
る単語列の長さを3単語以上にすることは現実上不可能
であり、単語の出現が先行する長い単語列の影響を受け
る場合に詳細なモデル化をすることが困難であった。
【0003】更に学習データに現れなかった単語列に対
しては種々の近似、推定法が提案されているが、いずれ
の方法でも高い精度で次単語の出現を推定できるもので
はなかった。
しては種々の近似、推定法が提案されているが、いずれ
の方法でも高い精度で次単語の出現を推定できるもので
はなかった。
【0004】
【発明が解決しようとする課題】上述のように従来の技
術には、以下のような解決されていない課題がある。 ・取り扱う単語数が数千以上の場合、単語の2つ組みあ
るいは3つ組みに対するすべての出現確率を計算機メモ
リ上に保持することは困難である。 ・これまでの言語モデルは単語列で構成され、単語の出
現が先行する長い単語列の影響を受ける場合に詳細なモ
デル化をすることが困難であった。 ・学習データに現れなかった単語列に対しては単語出現
確率の精度が低下してしまうという問題があった。
術には、以下のような解決されていない課題がある。 ・取り扱う単語数が数千以上の場合、単語の2つ組みあ
るいは3つ組みに対するすべての出現確率を計算機メモ
リ上に保持することは困難である。 ・これまでの言語モデルは単語列で構成され、単語の出
現が先行する長い単語列の影響を受ける場合に詳細なモ
デル化をすることが困難であった。 ・学習データに現れなかった単語列に対しては単語出現
確率の精度が低下してしまうという問題があった。
【0005】
【課題を解決するための手段】この発明の言語モデル構
成法では単語の出現確率を求める際に、単語列そのもの
を扱うのではなく、単語の集合であるクラスタを対象と
する。単語の並びは単語列中の各単語が属するクラスタ
の連鎖によって表現される。クラスタの連鎖構造は、以
下の方法により構成される。即ち、単一のクラスタを初
期値とし、クラスタを時間方向への増加、あるいはクラ
スタの分割を逐次行なうことによりクラスタ構造を詳細
化する。クラスタ構造が確定した段階で各クラスタ経路
で表現される単語列の数を基に単語出現確率を計算す
る。1つのクラスタには単語列において、類似した単語
が集められる。
成法では単語の出現確率を求める際に、単語列そのもの
を扱うのではなく、単語の集合であるクラスタを対象と
する。単語の並びは単語列中の各単語が属するクラスタ
の連鎖によって表現される。クラスタの連鎖構造は、以
下の方法により構成される。即ち、単一のクラスタを初
期値とし、クラスタを時間方向への増加、あるいはクラ
スタの分割を逐次行なうことによりクラスタ構造を詳細
化する。クラスタ構造が確定した段階で各クラスタ経路
で表現される単語列の数を基に単語出現確率を計算す
る。1つのクラスタには単語列において、類似した単語
が集められる。
【0006】この発明の言語モデルでは前記この発明の
言語モデル構成法により作られた複数の単語をそれぞれ
含む複数クラスタと、クラスタ経路及びこれに接続され
る単語の出現確率の対応表とにより構成される。この発
明の音声認識方法はこの発明の言語モデルを用いて認識
処理を行なう。
言語モデル構成法により作られた複数の単語をそれぞれ
含む複数クラスタと、クラスタ経路及びこれに接続され
る単語の出現確率の対応表とにより構成される。この発
明の音声認識方法はこの発明の言語モデルを用いて認識
処理を行なう。
【0007】
【発明の実施の形態】図1にこの発明による言語モデル
構成法の一実施例における処理手順を示す。初期クラス
タ生成部1で学習データから初期クラスタを生成し、次
にクラスタ選択部2でクラスタを選択し、その選択した
クラスタをクラスタ伸長部3で時間方向に伸長(増加)
し、また、選択したクラスタを、クラスタ分割部4で分
割する。次にこれらクラスタの伸長結果と、分割結果か
ら伸長・分割判定部5でクラスタ構造の変更が、伸長に
よるか、分割によるかの何れが好ましいかの判定を行
い、その判定された結果にもとづき、クラスタ構造変更
部6で伸長又は分割によるクラスタ構造の変更を行な
う。
構成法の一実施例における処理手順を示す。初期クラス
タ生成部1で学習データから初期クラスタを生成し、次
にクラスタ選択部2でクラスタを選択し、その選択した
クラスタをクラスタ伸長部3で時間方向に伸長(増加)
し、また、選択したクラスタを、クラスタ分割部4で分
割する。次にこれらクラスタの伸長結果と、分割結果か
ら伸長・分割判定部5でクラスタ構造の変更が、伸長に
よるか、分割によるかの何れが好ましいかの判定を行
い、その判定された結果にもとづき、クラスタ構造変更
部6で伸長又は分割によるクラスタ構造の変更を行な
う。
【0008】この変更されたクラスタ構造の各クラスタ
についてその単語の出現確率を出現確率計数部7で再計
算し、次に処理終了判定部8でクラスタ構造変更処理が
所定の終了条件を満したかの判定がなされ、処理終了条
件を満していなければ、クラスタ選択部2によるクラス
タ選択処理に戻り同様のことが繰返される。処理終了判
定部8で処理が終了したと判定されると、単語出現確率
係数部9で、各単語の条件付き出現確率を計算する。 クラスタ経路 各クラスタ内の単語出現頻度は、以下の方法により求め
られる。例えば、3つの単語から成る単語列w1 ,
w2 ,w3 において、単語w1 がクラスタC1 内に格納
されており、かつ、後続する単語w2 が、クラスタC1
に後続するクラスタC2 に格納され、更に単語w2 に後
続する単語w3 がクラスタC2 に後続するクラスタC3
に格納されている場合を「単語列w1 ,w2 ,w3 はク
ラスタ経路C 1 ,C2 ,C3 で表現される」と表す。一
般に長さがNのクラスタ経路C1 ,C 2 ,…CN で表現
される現実に存在し得る単語列w1 ,w2 ,…wN の数
を計数することにより、単語w1 のクラスタC1 におけ
る出現頻度が求められる。従って、クラスタCi 内の単
語出現確率を求めるには、Ci を始端とするクラスタ経
路を求め、前記、クラスタ経路で表現できる単語列の数
に基づいてクラスタCi内の各単語の単語出現頻度を求
め、更に前記、各単語の単語出現頻度の総和と、各単語
ごとの単語出現頻度とから、前者に対する後者の比とし
て単語出現確率を得る。クラスタCi を始端としてクラ
スタ経路を遡のぼってクラスタ経路で表現できる単語列
の数に基づいてクラスタCi 内の各単語の単語出現頻度
を求めて同様にクラスタCi 内各単語の出現確率を求め
ることもできる。
についてその単語の出現確率を出現確率計数部7で再計
算し、次に処理終了判定部8でクラスタ構造変更処理が
所定の終了条件を満したかの判定がなされ、処理終了条
件を満していなければ、クラスタ選択部2によるクラス
タ選択処理に戻り同様のことが繰返される。処理終了判
定部8で処理が終了したと判定されると、単語出現確率
係数部9で、各単語の条件付き出現確率を計算する。 クラスタ経路 各クラスタ内の単語出現頻度は、以下の方法により求め
られる。例えば、3つの単語から成る単語列w1 ,
w2 ,w3 において、単語w1 がクラスタC1 内に格納
されており、かつ、後続する単語w2 が、クラスタC1
に後続するクラスタC2 に格納され、更に単語w2 に後
続する単語w3 がクラスタC2 に後続するクラスタC3
に格納されている場合を「単語列w1 ,w2 ,w3 はク
ラスタ経路C 1 ,C2 ,C3 で表現される」と表す。一
般に長さがNのクラスタ経路C1 ,C 2 ,…CN で表現
される現実に存在し得る単語列w1 ,w2 ,…wN の数
を計数することにより、単語w1 のクラスタC1 におけ
る出現頻度が求められる。従って、クラスタCi 内の単
語出現確率を求めるには、Ci を始端とするクラスタ経
路を求め、前記、クラスタ経路で表現できる単語列の数
に基づいてクラスタCi内の各単語の単語出現頻度を求
め、更に前記、各単語の単語出現頻度の総和と、各単語
ごとの単語出現頻度とから、前者に対する後者の比とし
て単語出現確率を得る。クラスタCi を始端としてクラ
スタ経路を遡のぼってクラスタ経路で表現できる単語列
の数に基づいてクラスタCi 内の各単語の単語出現頻度
を求めて同様にクラスタCi 内各単語の出現確率を求め
ることもできる。
【0009】以下に図1に示した処理の順に沿って各機
能構成部について詳述する。 初期クラスタ学習 初期クラスタ生成部1において初期クラスタが学習され
る。つまり初期クラスタ生成部1は学習データを参照し
て、前の学習データ内での各単語の出現回数から各単語
ごとの出現確率(unigram)を計算し、学習デー
タ内に現れるすべての単語に対する出現確率が初期クラ
スタ内に格納される。つまり、初期クラスタは例えば1
つであって、これに学習データ中の全単語が格納され、
この初期状態ではクラスタ経路は存在しないから、前記
クラスタ経路より求めた単語出現確率として、前記un
igramが初期クラスタに格納される。 クラスタの選択 クラスタ選択部2において、すべてのクラスタに対し
て、クラスタCt 内にある各単語の出現確率から式
(1)で与えられるエントロピーH(Ct )を求める。
能構成部について詳述する。 初期クラスタ学習 初期クラスタ生成部1において初期クラスタが学習され
る。つまり初期クラスタ生成部1は学習データを参照し
て、前の学習データ内での各単語の出現回数から各単語
ごとの出現確率(unigram)を計算し、学習デー
タ内に現れるすべての単語に対する出現確率が初期クラ
スタ内に格納される。つまり、初期クラスタは例えば1
つであって、これに学習データ中の全単語が格納され、
この初期状態ではクラスタ経路は存在しないから、前記
クラスタ経路より求めた単語出現確率として、前記un
igramが初期クラスタに格納される。 クラスタの選択 クラスタ選択部2において、すべてのクラスタに対し
て、クラスタCt 内にある各単語の出現確率から式
(1)で与えられるエントロピーH(Ct )を求める。
【0010】 H(Ct )=−ΣNt i=1 p(wi )・log2 {p(wi )} (1) ここで、Nt はクラスタCt 内の単語数、p(wi )は
クラスタCt における単語wi の出現確率である。エン
トロピーH(Ct )はクラスタCt の乱雑さを示し、エ
ントロピーが大きいことはクラスタCt に含まれる単語
の類似性のばらつきが大きいことを示す。すべてのクラ
スタの中でエントロピーH(Ct )の値が最大のクラス
タが選択され、当該クラスタの分割または伸長によって
クラスタ構造の変更が行なわれる。 クラスタの分割 クラスタ分割部4ではクラスタ選択部2で選択されたク
ラスタが分割されるが、クラスタの分割は、クラスタ内
のある単語wb よりも出現確率の大きい単語のクラスタ
と、小さい単語のクラスタとの2つのクラスタに分割す
る。この際、分割後の2つのクラスタ内それぞれの単語
出現確率の和が同程度になるようにする。即ち、クラス
タCt の分割を行なう際には、クラスタ内に格納されて
いる単語wi に対して、式(2),(3)で表される値
S1 (i)及びS2 (i)を求める。
クラスタCt における単語wi の出現確率である。エン
トロピーH(Ct )はクラスタCt の乱雑さを示し、エ
ントロピーが大きいことはクラスタCt に含まれる単語
の類似性のばらつきが大きいことを示す。すべてのクラ
スタの中でエントロピーH(Ct )の値が最大のクラス
タが選択され、当該クラスタの分割または伸長によって
クラスタ構造の変更が行なわれる。 クラスタの分割 クラスタ分割部4ではクラスタ選択部2で選択されたク
ラスタが分割されるが、クラスタの分割は、クラスタ内
のある単語wb よりも出現確率の大きい単語のクラスタ
と、小さい単語のクラスタとの2つのクラスタに分割す
る。この際、分割後の2つのクラスタ内それぞれの単語
出現確率の和が同程度になるようにする。即ち、クラス
タCt の分割を行なう際には、クラスタ内に格納されて
いる単語wi に対して、式(2),(3)で表される値
S1 (i)及びS2 (i)を求める。
【0011】 S1 (i)=Σi j=1 p(wj ) (2) S2 (i)=ΣNt j=i+1 p(wj ) (3) ここで、Nt はクラスタCt 内に格納されている単語
数、p(wj )は単語w j の出現確率である。クラスタ
内の各単語に対して、S1 (i)とS2 (i)との差分
の絶対値を求め、この絶対値が最小となる単語wb を1
つ選択する。
数、p(wj )は単語w j の出現確率である。クラスタ
内の各単語に対して、S1 (i)とS2 (i)との差分
の絶対値を求め、この絶対値が最小となる単語wb を1
つ選択する。
【0012】単語wb よりも出現確率の大きい単語は新
規に作成されたクラスタCt1に格納され、単語wb より
出現確率の小さい単語は新規に作成されたクラスタCt2
に格納される。クラスタCt に格納されていた単語のす
べてがクラスタCt1あるいはCt2のいずれかに格納さ
れ、既存のクラスタCt は消滅する。 クラスタの伸長 クラスタ伸長部3はクラスタ選択部2で選択されたクラ
スタを時間方向に増加して伸長する。クラスタの伸長
は、図3に示すようにまず着目するクラスタCtに時間
的に先行するクラスタCa を新規に追加する。新規に追
加するクラスタC a 内には、この発明の処理で用いる全
単語を格納しておく。この追加されたクラスタCa 内の
各単語の出現確率をクラスタ経路を用いて計算し、クラ
スタ分割部4における分割手法と同様の処理により新規
に追加したクラスタCa を2つのクラスタCa1とCa2に
分割する。上記の方法により、先行する2つのクラスタ
が新規に生成される。同様にクラスタCt に対して時間
的に後続するクラスタCa を追加し、このクラスタCa
をCa1,Ca2に分割に分割して伸長してもよい。この場
合のクラスタCa の各単語の出現確率は、クラスタ経路
を遡のぼることにより単語列の数を求めて計算する。 伸長・分割の判断 伸長・分割判定部5はクラスタ構造を変更する際に、分
割による変更が望ましいのか、あるいは伸長による変更
が望ましいのかを逐次、判断する。このためクラスタ伸
長部3、クラスタ分割部4でそれぞれ着目するクラスタ
Ct を仮に伸長、分割し、それぞれの場合において生成
されたクラスタCt1,Ct2,Ca1,Ca2がどの程度乱雑
さを低減させたのかを比較し、より低減させた構造を選
択する。つまり乱雑さ低減の程度を規準に選択する。
規に作成されたクラスタCt1に格納され、単語wb より
出現確率の小さい単語は新規に作成されたクラスタCt2
に格納される。クラスタCt に格納されていた単語のす
べてがクラスタCt1あるいはCt2のいずれかに格納さ
れ、既存のクラスタCt は消滅する。 クラスタの伸長 クラスタ伸長部3はクラスタ選択部2で選択されたクラ
スタを時間方向に増加して伸長する。クラスタの伸長
は、図3に示すようにまず着目するクラスタCtに時間
的に先行するクラスタCa を新規に追加する。新規に追
加するクラスタC a 内には、この発明の処理で用いる全
単語を格納しておく。この追加されたクラスタCa 内の
各単語の出現確率をクラスタ経路を用いて計算し、クラ
スタ分割部4における分割手法と同様の処理により新規
に追加したクラスタCa を2つのクラスタCa1とCa2に
分割する。上記の方法により、先行する2つのクラスタ
が新規に生成される。同様にクラスタCt に対して時間
的に後続するクラスタCa を追加し、このクラスタCa
をCa1,Ca2に分割に分割して伸長してもよい。この場
合のクラスタCa の各単語の出現確率は、クラスタ経路
を遡のぼることにより単語列の数を求めて計算する。 伸長・分割の判断 伸長・分割判定部5はクラスタ構造を変更する際に、分
割による変更が望ましいのか、あるいは伸長による変更
が望ましいのかを逐次、判断する。このためクラスタ伸
長部3、クラスタ分割部4でそれぞれ着目するクラスタ
Ct を仮に伸長、分割し、それぞれの場合において生成
されたクラスタCt1,Ct2,Ca1,Ca2がどの程度乱雑
さを低減させたのかを比較し、より低減させた構造を選
択する。つまり乱雑さ低減の程度を規準に選択する。
【0013】図4に伸長・分割の判断における処理の流
れの例を示す。図4ではクラスタ2が分割・伸長の対象
クラスタとして選択されたと仮定する。クラスタ伸長部
3及びクラスタ分割部4での処理の結果、仮のクラスタ
構造が2つ生成される。即ち、伸長の結果、クラスタ
3,4が生成され、分割の結果、クラスタ2が消滅し、
クラスタ2′及び2″が生成される。伸長・分割判定部
5では、新規に生成された4つのクラスタ2′,2″,
3,4に対して式(1)を適用して各クラスタのエント
ロピーを求める。そして、上記4つのクラスタのうち、
エントロピーが最小であるクラスタを含むクラスタ構造
を選択する。図4では上記の比較の結果、伸長により変
更されたクラスタ構造が選択されている。 処理の繰り返し 出現確率計数部7では、変更後のクラスタ構造における
各クラスタに対し、各単語の出現確率を再度計数する。
ここにおける単語出現確率の計数方法は先に述べたクラ
スタ経路を利用する方法を用いる。
れの例を示す。図4ではクラスタ2が分割・伸長の対象
クラスタとして選択されたと仮定する。クラスタ伸長部
3及びクラスタ分割部4での処理の結果、仮のクラスタ
構造が2つ生成される。即ち、伸長の結果、クラスタ
3,4が生成され、分割の結果、クラスタ2が消滅し、
クラスタ2′及び2″が生成される。伸長・分割判定部
5では、新規に生成された4つのクラスタ2′,2″,
3,4に対して式(1)を適用して各クラスタのエント
ロピーを求める。そして、上記4つのクラスタのうち、
エントロピーが最小であるクラスタを含むクラスタ構造
を選択する。図4では上記の比較の結果、伸長により変
更されたクラスタ構造が選択されている。 処理の繰り返し 出現確率計数部7では、変更後のクラスタ構造における
各クラスタに対し、各単語の出現確率を再度計数する。
ここにおける単語出現確率の計数方法は先に述べたクラ
スタ経路を利用する方法を用いる。
【0014】上述の処理によりクラスタの分割及び伸長
を繰り返すことにより、逐次、クラスタ構造を詳細化す
る。処理判定部8は、クラスタ構造内のクラスタ数が例
えば500とか1000などの初期の個数になった時
点、あるいは、式(1)で求められるクラスタのエント
ロピーの最大値が初期の値以下になった、などの終了条
件を満たした場合に処理の繰り返しを中断する。これら
の値は要求される認識率が得られるように、多数回の実
験により決める。
を繰り返すことにより、逐次、クラスタ構造を詳細化す
る。処理判定部8は、クラスタ構造内のクラスタ数が例
えば500とか1000などの初期の個数になった時
点、あるいは、式(1)で求められるクラスタのエント
ロピーの最大値が初期の値以下になった、などの終了条
件を満たした場合に処理の繰り返しを中断する。これら
の値は要求される認識率が得られるように、多数回の実
験により決める。
【0015】以上の処理の流れの様子を図2に例示す
る。(1)初期クラスタ1がまず選択(クラスタ選択)
され、(2)クラスタ1の「伸長」によりクラスタ2と
3が生成(クラスタ構造の変更)される。各クラスタ内
の単語出現確率を再計算した後、クラスタ3が選択さ
れ、(3)クラスタ3の「分割」により、クラスタ4が
生成される。この(3)番目のクラスタ構造に対してク
ラスタ1が分割または伸長の対象クラスタとして選択さ
れ、(4)クラスタ1の「分割」によりクラスタ構造の
変更が行なわれ、クラスタ5が生成されると共に、クラ
スタ1に先行するクラスタ2,3及び4がそれぞれクラ
スタ5に先行するクラスタ6,7及び8として転写され
る。
る。(1)初期クラスタ1がまず選択(クラスタ選択)
され、(2)クラスタ1の「伸長」によりクラスタ2と
3が生成(クラスタ構造の変更)される。各クラスタ内
の単語出現確率を再計算した後、クラスタ3が選択さ
れ、(3)クラスタ3の「分割」により、クラスタ4が
生成される。この(3)番目のクラスタ構造に対してク
ラスタ1が分割または伸長の対象クラスタとして選択さ
れ、(4)クラスタ1の「分割」によりクラスタ構造の
変更が行なわれ、クラスタ5が生成されると共に、クラ
スタ1に先行するクラスタ2,3及び4がそれぞれクラ
スタ5に先行するクラスタ6,7及び8として転写され
る。
【0016】各クラスタ内には、単語と単語の出現確率
が格納されている。複数のクラスタが連鎖する場合、ク
ラスタ内の単語出現確率は単語連鎖の出現確率を表す。
この発明では、上記の処理手順により、単語の連鎖確率
を個々の単語に対して計算するのではなく、複数の単語
を格納したクラスタの連鎖に対する連鎖確率として定式
化する。 単語出現確率の計数 単語出現確率を求めるため、上述の繰り返し処理が終了
し、クラスタ構造が確定した段階で、単語出現確率計数
部9において、学習データ内で観測された単語列を参照
して、各単語の条件付き出現確率を求める。図5に例を
示す。クラスタ経路C1 ,C2 ,…CN において、クラ
スタ経路C1 ,C2 ,…CN-1 で表現される単語列の数
をN1、また経路C1 ,C2 ,…CN で表現される単語
列でクラスタCN において単語wi が利用された単語列
の数をN2とする。
が格納されている。複数のクラスタが連鎖する場合、ク
ラスタ内の単語出現確率は単語連鎖の出現確率を表す。
この発明では、上記の処理手順により、単語の連鎖確率
を個々の単語に対して計算するのではなく、複数の単語
を格納したクラスタの連鎖に対する連鎖確率として定式
化する。 単語出現確率の計数 単語出現確率を求めるため、上述の繰り返し処理が終了
し、クラスタ構造が確定した段階で、単語出現確率計数
部9において、学習データ内で観測された単語列を参照
して、各単語の条件付き出現確率を求める。図5に例を
示す。クラスタ経路C1 ,C2 ,…CN において、クラ
スタ経路C1 ,C2 ,…CN-1 で表現される単語列の数
をN1、また経路C1 ,C2 ,…CN で表現される単語
列でクラスタCN において単語wi が利用された単語列
の数をN2とする。
【0017】このとき、クラスタ経路C1 ,C2 ,…C
N-1 で表現される単語列が観測された後に、単語wi が
出現する確率P(wi |C1 ,C2 ,…CN-1 )は、式
(4)で与えられる。 P(wi |C1 ,C2 ,…CN-1 )=N1/N2 (4) 学習データ中の単語列に上記の計数処理を適用すること
により、ある単語列が現れた後に、単語wi が出現する
確率が求められる。
N-1 で表現される単語列が観測された後に、単語wi が
出現する確率P(wi |C1 ,C2 ,…CN-1 )は、式
(4)で与えられる。 P(wi |C1 ,C2 ,…CN-1 )=N1/N2 (4) 学習データ中の単語列に上記の計数処理を適用すること
により、ある単語列が現れた後に、単語wi が出現する
確率が求められる。
【0018】図6に単語例が出現した後にある単語が出
現する確率を求める際に必要となる、クラスタ経路ごと
の単語出現確率テーブルの例を示す。このテーブルに
は、クラスタ経路ごとに、そのクラスタ経路で表現でき
る単語列数N1、クラスタ経路ごとの各単語の出現頻度
N2が記述されている。単語wi の出現確率P(wi |
C1 ,C2 ,…CN-1 )はテーブルの2カラム目に記述
されているN1と4カラム目に記述されているN2とか
ら求められる。
現する確率を求める際に必要となる、クラスタ経路ごと
の単語出現確率テーブルの例を示す。このテーブルに
は、クラスタ経路ごとに、そのクラスタ経路で表現でき
る単語列数N1、クラスタ経路ごとの各単語の出現頻度
N2が記述されている。単語wi の出現確率P(wi |
C1 ,C2 ,…CN-1 )はテーブルの2カラム目に記述
されているN1と4カラム目に記述されているN2とか
ら求められる。
【0019】音声認識処理の際には、認識の結果得られ
た複数の単語列候補に対して、図5を参照して述べた方
法により計算される単語出現確率が適用される。即ち、
音声認識結果を参照して、出現確率を求めるべき単語w
p に先行する各単語が言語モデルのどのクラスタに属す
るのかを判定し、単語wp に先行するクラスタ経路を特
定する。特定されたクラスタ経路で表現される単語列の
数と、当該クラスタ経路に後続して単語wp が現れる回
数(計数方法についてはいずれも図5参照の説明と同
一)から単語wp のクラスタ経路を条件とする条件付き
出現確率が求められる。上述の処理を各単語ごとに出現
順に順次行ない、各単語に対する出現確率を求める。ま
た、上述の処理で得られた各単語ごとの出現確率の積を
求めることにより、複数の単語から構成される文章の出
現確率を得ることができる。音声認識処理における言語
モデル利用の例を図7に示す。
た複数の単語列候補に対して、図5を参照して述べた方
法により計算される単語出現確率が適用される。即ち、
音声認識結果を参照して、出現確率を求めるべき単語w
p に先行する各単語が言語モデルのどのクラスタに属す
るのかを判定し、単語wp に先行するクラスタ経路を特
定する。特定されたクラスタ経路で表現される単語列の
数と、当該クラスタ経路に後続して単語wp が現れる回
数(計数方法についてはいずれも図5参照の説明と同
一)から単語wp のクラスタ経路を条件とする条件付き
出現確率が求められる。上述の処理を各単語ごとに出現
順に順次行ない、各単語に対する出現確率を求める。ま
た、上述の処理で得られた各単語ごとの出現確率の積を
求めることにより、複数の単語から構成される文章の出
現確率を得ることができる。音声認識処理における言語
モデル利用の例を図7に示す。
【0020】図7では、音声認識の結果得られた単語列
の候補、w1 ,w2 ,w3 ,w4 ,w5 …に対して、言
語モデルを適用して単語列の尤もらしさを計算する方法
を示している。図7のAでは、単語列w1 ,w2 が出現
した後に単語w3 が出現する確率を求めている。即ち、
単語列w1 ,w2 がクラスタ経路C4 ,C2 で表現さ
れ、単語w3 がクラスタC1 にあるとした場合、単語列
w1 ,w2 が出現した後に単語w 3 が出現する確率P
(w3 |w2 ,w1 )は、単語クラスタC2 とC4 を用
いてP(w3 |C2 ,C4 )と表される。更に確率P
(w3 |C2 ,C4 )はクラスタ経路C2 ,C4 で表現
される単語列の頻度数N(C2 ,C4 )とクラスタ経路
C2 ,C4 で表現される単語列に単語w3 が後続する頻
度数N(w3 ,C2 ,C 4 )を基に計算される。
の候補、w1 ,w2 ,w3 ,w4 ,w5 …に対して、言
語モデルを適用して単語列の尤もらしさを計算する方法
を示している。図7のAでは、単語列w1 ,w2 が出現
した後に単語w3 が出現する確率を求めている。即ち、
単語列w1 ,w2 がクラスタ経路C4 ,C2 で表現さ
れ、単語w3 がクラスタC1 にあるとした場合、単語列
w1 ,w2 が出現した後に単語w 3 が出現する確率P
(w3 |w2 ,w1 )は、単語クラスタC2 とC4 を用
いてP(w3 |C2 ,C4 )と表される。更に確率P
(w3 |C2 ,C4 )はクラスタ経路C2 ,C4 で表現
される単語列の頻度数N(C2 ,C4 )とクラスタ経路
C2 ,C4 で表現される単語列に単語w3 が後続する頻
度数N(w3 ,C2 ,C 4 )を基に計算される。
【0021】同様に、図7のBでは、単語例w1 ,
w2 ,w3 が出現した後に単語w4 が出現する確率を、
また同図Cでは、単語列w3 ,w4 が出現した後に単語
w5 が出現する確率をそれぞれ求めている。従ってこの
発明による音声認識方法は例えば図8に示すように端子
11から認識されるべき音声が入力され、分析特徴抽出
部12で分析されてその音声の特徴量が抽出され、その
特徴量と、記憶部13に記憶されている標準パターンと
比較部14で比較され、近い標準パターンから、更に単
語認識部15で単語の候補が認識され、認識処理が進む
に従って例えば図9Aに示すように3つの単語列の候補
が得られる。この各単語列の候補について、その各単語
が属するクラスタをクラスタ−単語対応記憶部16を参
照して、クラスタ経路形成部17から、例えば第1単語
列候補w11,w12,w13,w14,w15について各単語が
属するクラスタの連鎖として、図9Bに示すようにクラ
スタ経路C1a,C1b,C1c,C1d,C1eが形成される。
このクラスタ経路の形成と共に単語出現確率選出部18
により、図6に示したクラスタ経路ごとの単語出現確率
表を記憶部19を参照して求める。つまりクラスタC1a
の次に単語w12が出現する確率P11を求め、次にクラス
タ経路C1a,C1bの次に単語w13が出現する確率P12を
求め、以下同様にクラスタ経路を伸ばすごとに単語出現
確率を求め、図9Cに示すように最終単語w15の出現確
率P14が求められると、その単語列の候補についての単
語出現確率の積P11×P12×P13×P14=P1 を演算し
て、第1単語列候補、つまり文章の出現確率P1 を得
る。同様にして第2、第3単語列候補(文章)の出現確
率P2 ,P3 を求め、これら単語列候補の出現確率
P1 ,P2 ,P3 中の最大のものの単語列(文章)を認
識結果として出力する。
w2 ,w3 が出現した後に単語w4 が出現する確率を、
また同図Cでは、単語列w3 ,w4 が出現した後に単語
w5 が出現する確率をそれぞれ求めている。従ってこの
発明による音声認識方法は例えば図8に示すように端子
11から認識されるべき音声が入力され、分析特徴抽出
部12で分析されてその音声の特徴量が抽出され、その
特徴量と、記憶部13に記憶されている標準パターンと
比較部14で比較され、近い標準パターンから、更に単
語認識部15で単語の候補が認識され、認識処理が進む
に従って例えば図9Aに示すように3つの単語列の候補
が得られる。この各単語列の候補について、その各単語
が属するクラスタをクラスタ−単語対応記憶部16を参
照して、クラスタ経路形成部17から、例えば第1単語
列候補w11,w12,w13,w14,w15について各単語が
属するクラスタの連鎖として、図9Bに示すようにクラ
スタ経路C1a,C1b,C1c,C1d,C1eが形成される。
このクラスタ経路の形成と共に単語出現確率選出部18
により、図6に示したクラスタ経路ごとの単語出現確率
表を記憶部19を参照して求める。つまりクラスタC1a
の次に単語w12が出現する確率P11を求め、次にクラス
タ経路C1a,C1bの次に単語w13が出現する確率P12を
求め、以下同様にクラスタ経路を伸ばすごとに単語出現
確率を求め、図9Cに示すように最終単語w15の出現確
率P14が求められると、その単語列の候補についての単
語出現確率の積P11×P12×P13×P14=P1 を演算し
て、第1単語列候補、つまり文章の出現確率P1 を得
る。同様にして第2、第3単語列候補(文章)の出現確
率P2 ,P3 を求め、これら単語列候補の出現確率
P1 ,P2 ,P3 中の最大のものの単語列(文章)を認
識結果として出力する。
【0022】上述において、クラスタ分割は、1つのク
ラスタを2つのクラスタに分割したが、任意の複数のク
ラスタに分割してもよい。この場合は例えば3つのクラ
スタに分割する場合は、分割前のクラスタ内の二つの単
語wb1,wb2の出現確率P1,P2 (P1 <P2 )につ
き、P1 より小さい出現確率の単語をクラスタCt1に、
出現確率がP1 とP2 の間の単語をクラスタCt2に、出
現確率がP2 以上の単語をクラスタCt3にそれぞれ格納
し、これら分割されたクラスタCt1,Ct2,C t3にそれ
ぞれ格納されている単語の出現確率の和S1 ,S2 ,S
3 の相互の差が、なるべく小さくなるようにwb1,wb2
を選択する。
ラスタを2つのクラスタに分割したが、任意の複数のク
ラスタに分割してもよい。この場合は例えば3つのクラ
スタに分割する場合は、分割前のクラスタ内の二つの単
語wb1,wb2の出現確率P1,P2 (P1 <P2 )につ
き、P1 より小さい出現確率の単語をクラスタCt1に、
出現確率がP1 とP2 の間の単語をクラスタCt2に、出
現確率がP2 以上の単語をクラスタCt3にそれぞれ格納
し、これら分割されたクラスタCt1,Ct2,C t3にそれ
ぞれ格納されている単語の出現確率の和S1 ,S2 ,S
3 の相互の差が、なるべく小さくなるようにwb1,wb2
を選択する。
【0023】また初期クラスタは、適当に複数のクラス
タとして構成してもよい。
タとして構成してもよい。
【0024】
【発明の効果】この発明では以下の効果が期待できる。 ・大語彙にたいしても簡約な言語モデルを構成できる。 ・長い単語列の影響を受ける単語の生成を詳細にモデル
化できる。 ・単語列をクラスタ経路に変換するため学習データに現
れなかった単語列に対しても精度の高い出現確率を得る
ことができる。従って高い認識率が得られる。
化できる。 ・単語列をクラスタ経路に変換するため学習データに現
れなかった単語列に対しても精度の高い出現確率を得る
ことができる。従って高い認識率が得られる。
【図面の簡単な説明】
【図1】この発明による言語モデル構成方法の処理手順
の例を示す図。
の例を示す図。
【図2】分割伸長処理の一処理例であって、クラスタ1
の分割、クラスタ3の分割、クラスタ1に分割が順次行
なわれた場合のクラスタ構造の変化を表す図。
の分割、クラスタ3の分割、クラスタ1に分割が順次行
なわれた場合のクラスタ構造の変化を表す図。
【図3】クラスタ伸長の処理手順の模式図。
【図4】伸長・分割の判断の処理手順の例を示す図。
【図5】単語出現確率の計数方法を説明するためのクラ
スタ経路C1 ,C2 ,……を示す図。
スタ経路C1 ,C2 ,……を示す図。
【図6】クラスタ経路と単語出現確率と対応表の例を示
す図。
す図。
【図7】音声認識処理時に行なう単語列の出現確率の計
算の手順を示す図。
算の手順を示す図。
【図8】この発明による音声認識方法の処理手順を示す
図。
図。
【図9】音声認識における候補単語と、クラスタ経路
と、出現確率とを示す図。
と、出現確率とを示す図。
Claims (10)
- 【請求項1】 複数の単語と単語出現確率から成るクラ
スタを逐次、時間方向へ増加、あるいはクラスタを分割
することにより言語モデルを構成することを特徴とする
言語モデル構成法。 - 【請求項2】 請求項1に記載の言語モデル構成法にお
いて、 クラスタの乱雑さ(エントロピー)を最小にするという
規準で上記クラスタの分割及び増加を行なうことを特徴
とする言語モデル構成法。 - 【請求項3】 請求項1又は2に記載の言語モデル構成
法において、 上記クラスタの分割は常に2つに分割することを特徴と
する言語モデル構成法。 - 【請求項4】 請求項1又は2に記載の言語モデル構成
法において、 上記クラスタの分割は任意の個数に分割することを特徴
とする言語モデル構成法。 - 【請求項5】 請求項3又は4に記載の言語モデル構成
法において、 上記クラスタの分割は、分割後の各クラスタにおける単
語出現確率の和の差分を最小にするという規準で行なう
ことを特徴とする言語モデル構成法。 - 【請求項6】 請求項1乃至5の何れかに記載の言語モ
デル構成法において、 上記クラスタの伸長は複数個のクラスタを時間軸上で後
続させて行なうことを特徴とする言語モデル構成法。 - 【請求項7】 請求項1乃至5の何れかに記載の言語モ
デル構成法において、 上記クラスタの伸長は複数個のクラスタを時間軸上で先
行させて行なうことを特徴とする言語モデル構成法。 - 【請求項8】 請求項1乃至7の何れかに記載の言語モ
デル構成法において、 クラスタ経路の1つのクラスタ内の各単語についてこれ
を一端とし、そのクラスタ経路に沿って各クラスタから
1組づつ取出して得られる単語列の数の和に対する、各
単語について得られる単語列の数の比をその単語に対す
る上記単語出現確率とし、初期クラスタでは学習データ
中の各単語の出現回数からその単語に対する上記単語出
現確率を求めることを特徴とする請求項1乃至7の何れ
かに記載の言語モデル構成法。 - 【請求項9】 複数の単語をそれぞれ含む複数のクラス
タと、 存在し得る単語列と対応したクラスタ連鎖よりなるクラ
スタ経路と、そのクラスタ経路に接続される各単語の出
現確率との対応表とからなる音声認識用言語モデル。 - 【請求項10】 複数の単語をそれぞれ含む複数のクラ
スタと、クラスタ連鎖よりなるクラスタ経路と、そのク
ラスタ経路に接続される各単語の出現確率との対応表と
からなる言語モデルを用意しておき、 入力音声を単語列候補として得る単語認識過程と、 上記単語列候補の各単語が属するクラスタを上記言語モ
デルより求めてクラスタ経路を得る過程と、 そのクラスタ経路におけるその1つのクラスタとこれと
接続されるべき上記単語列候補中の対応単語の出現確率
をそれぞれ上記言語モデルより求める過程と、 これら求めた出現確率からその単語列候補の出現確率を
求める過程とを有する音声認識方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP8251743A JPH1097271A (ja) | 1996-09-24 | 1996-09-24 | 言語モデル構成法、音声認識用モデル及び音声認識方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP8251743A JPH1097271A (ja) | 1996-09-24 | 1996-09-24 | 言語モデル構成法、音声認識用モデル及び音声認識方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH1097271A true JPH1097271A (ja) | 1998-04-14 |
Family
ID=17227276
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP8251743A Pending JPH1097271A (ja) | 1996-09-24 | 1996-09-24 | 言語モデル構成法、音声認識用モデル及び音声認識方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH1097271A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004246368A (ja) * | 2003-02-13 | 2004-09-02 | Microsoft Corp | テキストから単語誤り率を予測するための方法および装置 |
-
1996
- 1996-09-24 JP JP8251743A patent/JPH1097271A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004246368A (ja) * | 2003-02-13 | 2004-09-02 | Microsoft Corp | テキストから単語誤り率を予測するための方法および装置 |
JP4528535B2 (ja) * | 2003-02-13 | 2010-08-18 | マイクロソフト コーポレーション | テキストから単語誤り率を予測するための方法および装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CA2163017C (en) | Speech recognition method using a two-pass search | |
KR102167719B1 (ko) | 언어 모델 학습 방법 및 장치, 음성 인식 방법 및 장치 | |
JP4465564B2 (ja) | 音声認識装置および音声認識方法、並びに記録媒体 | |
US5787396A (en) | Speech recognition method | |
JP4543294B2 (ja) | 音声認識装置および音声認識方法、並びに記録媒体 | |
US4819271A (en) | Constructing Markov model word baseforms from multiple utterances by concatenating model sequences for word segments | |
EP4018437B1 (en) | Optimizing a keyword spotting system | |
EP0755046B1 (en) | Speech recogniser using a hierarchically structured dictionary | |
EP3300075A1 (en) | Speech recognition device and computer program | |
JPH0581918B2 (ja) | ||
WO2001065541A1 (fr) | Dispositif de reconnaissance de la parole, procede de reconnaissance de la parole et support d'enregistrement | |
US5956676A (en) | Pattern adapting apparatus using minimum description length criterion in pattern recognition processing and speech recognition system | |
JPWO2008105263A1 (ja) | 重み係数学習システム及び音声認識システム | |
KR102167157B1 (ko) | 발음 변이를 적용시킨 음성 인식 방법 | |
US5293451A (en) | Method and apparatus for generating models of spoken words based on a small number of utterances | |
JPH06208392A (ja) | パターン認識方法および装置 | |
KR101727306B1 (ko) | 언어모델 군집화 기반 음성인식 장치 및 방법 | |
JPH07334187A (ja) | 音声認識装置 | |
JPH1097271A (ja) | 言語モデル構成法、音声認識用モデル及び音声認識方法 | |
JP2001242885A (ja) | 音声認識装置および音声認識方法、並びに記録媒体 | |
JP6235922B2 (ja) | 重み付き有限状態オートマトン作成装置、記号列変換装置、音声認識装置、それらの方法、及びプログラム | |
JP3950957B2 (ja) | 言語処理装置および方法 | |
JP2982689B2 (ja) | 情報量基準を用いた標準パターン作成方式 | |
CN110110294B (zh) | 一种动态反向解码的方法、装置及可读存储介质 | |
JPH09134192A (ja) | 統計的言語モデル生成装置及び音声認識装置 |