JPH0449954B2 - - Google Patents

Info

Publication number
JPH0449954B2
JPH0449954B2 JP58183361A JP18336183A JPH0449954B2 JP H0449954 B2 JPH0449954 B2 JP H0449954B2 JP 58183361 A JP58183361 A JP 58183361A JP 18336183 A JP18336183 A JP 18336183A JP H0449954 B2 JPH0449954 B2 JP H0449954B2
Authority
JP
Japan
Prior art keywords
state
pattern
frame
storage means
cumulative distance
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.)
Expired
Application number
JP58183361A
Other languages
Japanese (ja)
Other versions
JPS6073698A (en
Inventor
Seiichi Nakagawa
Hidekazu Tsuboka
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP58183361A priority Critical patent/JPS6073698A/en
Publication of JPS6073698A publication Critical patent/JPS6073698A/en
Publication of JPH0449954B2 publication Critical patent/JPH0449954B2/ja
Granted legal-status Critical Current

Links

Landscapes

  • Character Discrimination (AREA)

Description

【発明の詳細な説明】[Detailed description of the invention]

産業上の利用分野 本発明は連続する音声等のパターンを一連のパ
ターンとして自動的に認識するパターン比較装置
に関する。 従来例の構成とその問題点 パターンマツチングによる音声認識装置の一般
的な構成は次のようなものである。 入力音声信号を、フイルタバンク、周波数分析
LPC分析等によつて特徴ベクトルの系列に変換
する特徴抽出手段と、予め発声され、この特徴抽
出手段により抽出された特徴ベクトルの系列を認
識単語全部について標準パターンとして登録して
おく標準パターン記憶手段と、認識させるべく発
声され、前記特徴抽出手段により抽出された入力
パターンと前記標準パターン記憶手段に記憶され
ている標準パターンの全てと特徴ベクトルの系列
としての類似度あるいは距離を計算するパターン
比較手段と、パターン比較の結果、最も類似度の
高かつた(距離の小さかつた)標準パターンに対
応する単語を認識結果として判定出力する判定手
段からなる。 このとき、同一話者が同一の単語を発声しても
発声の都度、その発声時間長が異るので、前記パ
ターン比較手段で標準パターンと入力パターンの
比較を行う際には、両者の時間軸を伸縮させ、両
者のパターン長を揃えて比較する必要がある。そ
の際、発声時間長の変化は、発声単語の各部で一
様に生じているわけではないので、各部を不均一
に伸縮する必要がある。その伸縮は、比較すべき
両者のパターンの類似度が最大になる(距離が最
小になる以下距離で説明するように行われるのが
最も良い結果が得られている。このようなマツチ
ングを効果的に行うのに動的計画法を用いる装置
が一般的である(以下このマツチングをDPマツ
チングと称する。) DPマツチングの方法は格子グラフによつて説
明できる。第1図は格子グラフであつて、横軸は
入力パターンT=a1,a2…aIに対応するi座標、
縦軸は標準パターンRn=bn 1,bn 2…bn Joに対応する
j座標を表す。入力パターンTと標準パターンを
時間軸を非線形に伸縮してマツチングすることは
この格子グラフ上において、両パターンの各特徴
ベクトルの対応関係を示す経路(1)を何らかの標価
基準によつて決定し、この径路に関して両パター
ンの距離を評価することである。この径路を決定
する際には音声の性質を考慮して制限条件を設け
る。第2図aは径路選択の制限条件の一例であ
る。即ち、この例では点(i,j)へ至る径路
は、点(i−2,j−1)から点(i−1,j)
を通る径路(2)か、点(i−1,j−1)から来る
径路(3)か、点(i−1,j−2)から点(i,j
−1)を通る径路(4)かの何れかしか取り得ないと
いうことを意味している。 このとき、入力パターンと標準パターンの始端
と終端は必ず対応させるという条件をつければ、
前記マツチングの径路は第1図の斜線の部分に制
限される。この制限は、いかに時間軸が伸縮する
といつても、同一単語に対してはそれ程極端に伸
縮するはずはないという事実からあまり極端な対
応づけが生じないようにするためである。 aiとbn Jのベクトル間距離をdn(i,j)とすれ
ば、入力パターンTと標準パターンRnのパター
ン間の前記径路に沿う距離は、その径路に沿うdn
(i,j)の荷重平均として定義される。第2図
の径路上のa,b,c,dはそれに対応する径路
が選ばれたときの荷重であるDPマツチングが適
用できるためにはこの荷重の決め方は、格子グラ
フ上で前記制限条件の下でいかなる径路が選ばれ
ようともその径路に沿う荷重の和が一定になるよ
うに決めれば良い。a=c=e=2,b=d=1
とすれば、この荷重の和はI+Jn,a=b=c=
1,d=e=0.5とすれば、この荷重の和はI,
a=b=0.5,c=d=e=1とすれば、この荷
重の和はJnとなり径路の選ばれ方によらず一定と
なる。これらは共によく用いられる。また、前記
荷重の和一定という条件の下でこの荷重をjに関
する関数とすることにより、より重視してマツチ
ングしたい径路上の部分の荷重を重くする等の操
作も可能である。 入力パターンTと標準パターンRnの距離は、
前記制限条件の下で、前記荷重平均の最小値とし
て定義される。即ち、次の漸化式を解くことによ
つて前記荷重平均の最小値とその最小値を与える
径路が決定され得る。 gn(i,j)=mimgn(i−2,j−1)+adn
i−1,j)+bdn(i,j) gn(i−1,j−1)+cdn(i,j) gn(i−1,j−1)+cdn(i,j) gn(i−1,j−2)+edn(i,j−1)+ddn(i,
j)……(1) 初期条件gn(1,1)=dn(1,1) D(T,Rn)=gn(I,Jn)/荷重の和 ここにD(T,Rn)は入力パターンTと標準パ
ターンRoの距離である。 径路選択の条件としては他にも種々考えられる
第2図b〜j等は他の例である。この他にもさら
に種々の変形が考えられ得る。これら径路の選択
条件に伴つて前記漸化式は対応するものに書き換
えられるのは勿論である。 孤立して発声された単語を認識する場合は勿論
連続して発声された(単語と単語の間に切れ目な
く発声された)音声を認識する場合もDPマツチ
ングは良好な成績をおさめている。 連続単語音声認識の問題は次のように定式化さ
れる。 入力パターンのフレーム数をI、第iフレーム
の特徴ベクトルをai、単語nの標準パターンのフ
レーム数をJn、第jフレームの特徴ベクトルをbn j
とするとき、単語nの標準パターンRnは次のよ
うに表わされる。 Rn=bn 1bn 2…bn j…bn jn そこでx個の単語列に対応する標準パターンの
結合、 R=Rq(1)Rq(2)…Rq(x) =bq(1) 1bq(1) 2…bq(1) Jq(1)bq(2) 1bq(2) 2…bq(x) Jq(
2)
…bq(x) 1bq(x) 2…bq(x) Jq(x) ……(2) と入力パターンT=a1,a2…ai…aIとのベクトル
系列間の距離が最小になる単語列q(1)q(2)…q
(x)を求める。 以上の計算を前記孤立単語の場合と同様にして
そのままDPマツチングで解こうとすれば、例え
ば10数字の単語を標準パターンとしてもつてい
るとき、3数字の連続発声された音声を認識する
には103=1000種類の標準パターンとマツチング
しなければならない。標準パターンの数が増せば
たちまちその組合せの数は禁止的な量になる。 そこで、連続単語の認識にもDPマツチングを
適用するために、マツチングの累積距離の正規化
係数(前記荷重の和のこと)は入力のフレーム数
にのみ依存するように径路の選択の条件を設定す
れば、以下に示すように標準パターンの単語の組
合せにも動的計画法が適用でき計算量を大幅に減
らし得る。 径路の選択条件としては一般に第3図a〜eに
示すものがある。径路上に示した数値はその径路
が選ばれたときの荷重係数である。 入力パターンTの第iフレーム(の特徴ベント
ル、以後フレームとのみ称する)aiとX個の標準
パターン連結からなる連続標準パターンRの第j
フレームbR jのフレーム間距離(ベクトル距離)を
dR(i,j)とし、入力パターンと連続標準パタ
ーンとの対応づけをする時間関数(前記マツチン
グの径路)をu(i)として、この時間関数に沿
つて求められる次の累積距離(フレーム間距離の
荷重の和)D(T,R)を最小化するR(R^と記
す)が求めるものであるとする。即ち、 D(T,R)= min u(i)〔Ii=1 dR(i,u(i))〕 ……(3) R^= argmjn R〔D(T,R)〕 ここで、第3図aの径路のときは、 0<u(i)−u(i−1)<2,u(1)=1,u(I

=JR である。また、min〔f(z)〕はzに関して最小
化されたf(z),argmin〔f(z)〕はf(z)を
最小にするzの値を意味する。 式(3)は単語数既知の場合、未知の場合、あるい
はオートマトン制御を組み込んだ形で解くことが
でき、その方法については既に種々提案されてお
り、製品化されている例もある。 本願はこのうち、オートマトン制御を組み込ん
だ形で式(3)を解くことによつて、連続して発声さ
れた音声を認識する装置に関するものである。 次に、オートマトン制御を組み込んだ形で式(3)
を解く従来の方法について説明する。 我々が実際に単語を連続して発声する場合は、
それらの順序が決つている場合が多い。従つて、
入力パターン(入力文)は、有限状態オートマト
ンαと等価な正規文法によつて生成された文であ
るとし、オートマトンαで受理されるあらゆる単
語列のうち、式(3)を最小にする単語列(q(1),q
(2),…,q(x))を求めるというようにすること
によつて、認識率を向上させることができる。こ
こで、単語列(q(1),q(2),…,q(x))が、オ
ートマトンαで受理されるとはΔ(qp,q(1))=qi
CS,Δ(qi,q(2)=qjCS,…,Δ(qk,q(x−
1))=qlCS,Δ(ql,q(x))=qfCFCSとなるよ
うな状態遷移が存在する場合である。各記号の意
味は、Sは状態qの有限集合{q∈q0,q1,…,
q|S|-1},〓は入力単語nの有限集合{n∈1,
2,…,N}、Δは状態遷移関数で、S×〓→S,
{Δ(q1,n)=qj}、qpは初期状態でqp∈S,Fは
最終状態の集合FCSである。ここでq(1),…q
(x)∈{1,2,…N}である。 通常のオートマトンの認識問題と異る点は、時
間を表わすフレーム番号も変数として入つている
点であり、しかも単に受理、拒否の出力でなく、
受理可能な度合(累積距離)が出力される点であ
る。 Dqj(i)を状態qjで入力のiフレームで終端す
ると仮定したあらゆる単語列のうちの最小累積距
離、Nqj(i)をDqj(i)に対応する単語列の最後
尾単語名、Bqj(i)をNqj(i)の始点位置マイナ
ス1(Nqj(i)の一つ前の単語の最終フレーム、
バツクポインタと称する)、Qqj(i)をqjへの状
態遷移によつてDqj(i)を満たした状態名即ち Δ(Qqj(i),Nqj(i))=qjとするとき、次の漸化
式を解くことで、オートマトン制御による式(3)の
解が得られる。即ち、 初期条件Dqj(o)=O,Bqj(o)=0として Dq(i)=min 〔Dqj(m)+Dn(m+1:i)〕, q=Δ(qk,n) ……(4) をq=q1,q2,…,q|S|-1について求め、この
式を満たすn,m,qkをn,m,qkとするとき Nq(i)=n^,Bq(i)=m,Qq(i)=qk とする。i=Iまでこの計算を行えば、次のよう
にして最後尾の単語から逆順に単語が求まる。即
ち i=I,q=agmingf Dqf(i),qf∈Fとし
て n^=Nq(i) Bq(i)≠なら、i=Bq(i),q=Qq(i)と
してへ、Bq(i)=0なら終了する。 第6図はフローチヤートである。 なお、Dn(m+1:i)は次式で定義され、前
記の孤立単語のDPマツチングと同じ方法で求め
られる。 Dn(m+1:i)= min u(i)〔ik=m+1 dn(k,u(k))〕
……(5) ここで、第3図aの径路のときは ou(k)−u(k−1)2,u(m+1)=1,
u(i)=Jn である。 式(3)は、予め定められたmの範囲i1〜i2につい
てDn(m+1:i)を求め、各mについて既に求
められているDqk(m)とDn(m+1:i)の和が
最小となるmとqk∈{q0,q1,…,q|s|−
1}(ただしqkはq=Δ(qk,n)を満足する)と
nを求め、これをDq(i)とするのであるが、こ
の計算量を減ずる方法として、i=m+1以後は
単語nで、次の状態がqであるとしたときの、
(i,j)=(1,1)から(i,j)=(i′,j′)

での累積距離をDn q(i′,j′)とするとき、Dn q(i,
Jn)の前記n,qkについての最小値としてDq(i)
を求める方法が提案されている。 これらの方法の問題点は、オートマトンの構造
によつては、さらに計算量を減じ得るものである
が、従来はその点が考慮されていなかつた点にあ
る。 発明の目的 オートマトン制御による連続音声認識における
計算量を大幅に削減したパターン比較装置を提案
することを目的とする。 発明の構成 本発明はオートマトン制御による連続パターン
のDPマツチングにおいて、オートマトンの制御
規則をq=Δ(qk,n)とするとき、パターンn
に対して、状態qkが複数存在するとき、それぞれ
の状態に対してその状態までの累積距離が、最小
であるものをq^kとすれば、状態qまでの最後尾パ
ターンnに対する累積距離は直前の状態がq^kのみ
であるとして計算することにより、従来qkのすべ
てに対して行つていた累積距離の計算を減らすも
のである。 実施例の説明 以下に本発明の原理及び実施例を説明する。 第5図は本発明の原理を説明するための図で、
第5図aは、bに書かれた単語に対する有限オー
トマトン表現である。ここでの説明は簡単のため
に前記単語の代りに単音節としている。上記従来
例における計算では、すべての状態遷移(第7図
においてその数は22)に対して計算を行なわなけ
ればならなかつた。ところが、第7図の例では、
状態S12には状態S6,S7,S8から同じ“O”が入
つてきている。このような場合、状態S6,S7,S8
を一時的に縮退化してやれば、状態S12の“O”
に関しては一回のみ計算で済む。このことは、状
態S14の“YA”についても言える。本発明は、
この原理を利用して計算量の削減をはかつたパタ
ーン比較装置である。 第7図の例において、q=S12,np=np(npは、
音節“O”に付された番号)とすれば、q=S12
に対して式(3)の意味するところは DS12(i)= min qk,m 〔Dno qk(m)+Dno(m+1:i)〕 = min mminDno S6(m) Dno S7(m) Dno S8(n)+Dno(m+1:i) ……(7) となる。換言すれば、第5図において、S6,S7
S8から“O”を発してS12に遷移するとき、Ds
(i)を最小にするためには、DS6(m),DS7(m),
DS8(m)のうちの最小の状態から遷移することに
なるということである。これを一般的にかけば、
qpを初期状態として、 Dqp(o)=0,Bqp(o) Dq(i)= min n,m〔 min qk〔Dqk(m)〕+Dn(m+1:
i)〕 ……(8) ただしq=Δ(qk,q) Nq(i)=n^,Bq(i)=m^,Qq(i)=argmin〔Dqk
(m^)〕 となる。即ち、フレームiにおいて状態qとなる
直前の状態のうち、同じ音節(あるいは単語)n
で連がるものがあるときは、それら状態に到るま
での累積距離が最小である状態から連がるという
ことである。 このことを利用すれば、第5図の例の場合は
“O”と“YA”について以上のことが言えるか
ら式(3)の計算は19回となり、3回減る。Dn(m+
1:i)を求めて式(3)を直接解く場合は、この量
は殆んど無視できるが、前記高速計算法を用いる
場合には大きな差となる。また、タスクによつて
は大きな計算量の削減が期待される。 上記高速計算法の一つに対し、本発明を適用し
た一実施例について説明する。 第3図bの径路制限条件によれば、Dn(m+
1:i)は第6図の斜線の内部における径路に沿
う(i,j)=(m,1)から(i,j)=(i,
jn)までの累積距離である。ここで(6)は傾き1/2、
(7)は傾き2の直線である。いま、径路(5)が(i,
j)=(1,1)から(i,j)=(i,jn)までの
最小の累積距離を与えるものとすれば、動的計画
法の原理に従つて、(i,j)=(1,1)から径
路(5)上の点(i,j)=(i′,j′)までの累積距離
を最小にする径路は、径路(5)の(i,j)=(i′,
j′)までの径路と全く一致する。従つて、Dn(m
+1:i)は特に求めなくても、Dn q(i,j)を
漸化式 Dn q(i,j)=mimDn q(i−2,j−1)+dn
(i−1,j)+dn(i,j)…(1) Dn q(i−1,j−1)+dn(i,j)…(2) Dn q(i−1,j−2)+dn(i,j)…(3)……(9) から求め、Dn q(i)=Dn q(i,jn)として求めるこ
とができる。ただし、漸化式(9)の初期値は Dn q(−1,j)=∞ (J= 0,1,…,Jn) Dn q(0,0)=0 Dn q(0,j)=∞ (J=−1,1,2,…,
Jn) Dn q(i,−1)=∞ (i= 1,2,…,I) Dn q(i,0)=Dqk(i−1)(qkはq=U(qk
nを満たすqk) であり、Dn q(i,j)に対応するバツクポインタ
Bn q(i,j)は式(6)において Dn q(i,j)=のときBn q(i,j)=Bn q(i−
2,j−1) Dn q(i,j)=のときBn q(i,j)=Bn q(i−
1,j−1) Dn q(i,j)=のときBn q(i,j)=Bn q(i−
1,j−2) となる。また、Bn q(i,j)の初期値は Bn q(i,1)=i−1 である。 第6図はi=i上におけるDn q(i,j)がどの
ような意味をもつているかを説明している。8,
10,12なる直線は傾き1/2、9,11,13
なる直線は傾き2であつて、(i,j)=(i,jn
(点26)へ到る径路は直線8と9で挾まれた領
域に含まれ、点16を通るマツチング径路は直線
10と11で挾まれた領域に含まれ、点17を通
るマツチング径路は直線12と13で挾まれる領
域に含まれる。言い換えれば、点16を通る径路
は単語nに対して、始端は18〜19の間にあ
り、終端は20〜21の間にあり、点17を通る
径路は始端は22〜23の間にあり、終端は24
〜25の間にあるということになる。結局、i=
i上のDn q(i,j)は、直線28の傾きを1/2と
するとき、フレームi〜i′におけるi″に対する累
積距離Dn q(i″)=Dn q(i″,Jn)に対する途中の累積
距離を表していることになる。(以後Dn q(i,j)
を中間累積距離と呼ぶことにする)また、漸化式
(9)から明らかなようにDn q(i,j)を求めるに
は、フレームi−2とi−1における中間累積距
離と、フレームi−1とiにおけるフレーム間距
離のみ既知であればよく、それ以前の値は忘れて
しまつても良い。 以上のことをまとめて言えば、Dq(i)を求め
るには、フレームi毎にj=1,2,…,Jn,n
=1,2,…,N,q=q1,q2,…,q|s|-1
対してDn q(i,j)を求め、 m^,q^k=argmin〔Dn q(i,jn),q=Δ(qk,n) とするとき、 Dq(i)=Dn^q(i,jn^) Bq(i)=Bn q(i,jn^) Qq(i)=q^k Nq(i)=n^ とすることができる。このようにすれば、各格子
点(i,j)におけるdn(i,j)の計算は単語
n毎に1回で済み、Dn q(i,j)の計算はq,
n,Δ(qk,n)=qなるqkについて1回で済み、
毎フレーム第5図に示す斜線内部の格子点につい
てdn(i′,j),Dn(m+1:i)を計算しなけれ
ばならない式(3)を直接解く方法に比べて大幅に計
算量が減少する。 また、この方法は入力パターンのフレームi毎
に処理を進めてゆくものであるが、標準パターン
のフレームj毎に処理してゆくこともできる。即
ち、漸化式(6)から明らかなように、j方向につい
ても、Dn q(i,j)を求めるには、フレームj−
1とフレームjのフレーム間距離Dn(i,j)と
フレームj−2とフレームj−1の中間累積距離
がわかつていればよいから、フレームj毎にj=
j上のDn q(i,j)を求めてゆくこともできる。 以上の方法は、オートマトン制御クロツク同期
伝播形DP法(FSACWDP)と呼ばれるものであ
る。 このとき、式(8)の考え方を導入するには、漸化
式(9)の計算において、Dn q(i,j)の初期値を次
のようにすればよい。即ち、q=Δ(qk,n)を
満足するqkに対し、q^k=argmin〔Dqk(i−1)〕
とするとき、 Dn q(i,0)=Dq^k(i−1) ……(10) とすればよい。 第8図は本発明の一実施例を示すブロツク図で
ある。100は音声信号の入力端子である。10
1は特徴抽出部であつて入力音声信号を特徴ベク
トルの系列に変換する。102は標準パターン記
憶部であつて、認識すべき単語(音節)のそれぞ
れが同様な特徴ベクトルの系列として記憶されて
いる。 103はフレーム間距離計算部であつて、特徴
抽出部101の出力の特徴ベクトルと標準パター
ン記憶部102の特徴ベクトルとの差を計算す
る。104は計算されたフレーム間距離を一時的
に記憶するフレーム間距離記憶部である。105
はオートマトン制御規則記憶部である。106は
累積距離記憶部であつて、累積距離Dq(i)が各
フレーム毎に記憶されている。107は初期値計
算部であつて、漸化式(9)の計算における初期値を
式(10)に従つて計算する部分である。108は漸化
式計算部であつて、107で計算された初期値を
もとに、漸化式(10)を計算する部分である。109
は最終値決定部であつて、漸化式計算部108の
結果から各フレームにおける最終値として n^=argmin〔Dn q(i,Jn) Nq(i)=n^ Dq(i)=Dn^q(i,Jn^) Bq(i)=Bn^q(i,jn^) Qq(i)=argmin〔Dqk(Bq(i))〕 を計算する部分である。113,114,115
はそれぞれ最後尾単語記憶部、直前状態記憶部、
バツクポインタ記憶部であつて、それぞれ、最終
値決定部109で求められた、最後尾単語Nq
(i),qの直前の状態Qq(i),バツクポインタ
Bq(i)が各フレームについて記憶される。11
2は入力音声の最終フレームにおける状態を決定
する部分である。即ち、qf Fとするとき最終フ
レームIの状態qは q=argmin(Dqf(I)〕 と決定される。110は音声区間検出部、111
はフレーム数係数部である。116はバツクトレ
ース制御部であつて、最後尾単語記憶部113
と、直前状態記憶部114と、バツクポインタ記
憶部115の内容から、第4図に示すフローチヤ
ートに従つて逆の順序で、最後尾単語記憶部11
3から認識結果を出力せしめる。 第9図は、以上の実施例の動作をソフトウエア
で実現する場合の一例を示すチヤートである。 ステツプ200〜ステツプ204は、全体としての初
期化を行う部分、ステツプ205〜ステツプ214はフ
レームiにおける処理を行う部分であつて、ステ
ツプ206〜ステツプ212は、各標準パターンn(n
=1,2,…,N)に対してDn q(i),Bn q(i)を
求める部分、ステツプ213〜ステツプ214は、入力
音声がフレームiで終端すると仮定したときの最
後尾単語(音節)名、それに対応する累積距離、
バツクポインタ、直前の状態を各状態について求
める部分である。ステツプ208はフレーム間距離
計算部103、フレーム間距離記憶部104の動
作に対応する。ステツプ210は初期値計算部10
7の動作に対応する。ステツプ211〜ステツプ212
は漸化式計算部108の動作に対応する。ステツ
プ213〜ステツプ214は最終値決定部109の動作
に対応する。ステツプ215〜ステツプ217は入力音
声の最終フレームから逆の順序で認識結果を決定
していく処理であつて、最終フレーム状態決定部
118、最後尾単語記憶部113、直前状態記憶
部114バツクポインタ記憶部115、バツクト
レース制御部116の間で行われる動作に対応し
ている。 Dn q(i,j)を直接求めて解く方法としては他
にオートマトン制御Level.Buildling法
(FSALB)が知られている。これにも、本発明
の考え方を導入することができ、計算量を大幅に
減らし得る。 第10図は、5桁の数字の棒読み音声例えば、
七万三千二百八十六という具合に○万○千○百○
十○と読む場合のオートマトン表現である。これ
に対し、従来のFSACWDP、FSALBを用いた装
置と、本発明による縮退化FSACWDPと縮退化
FSALBを用いた装置に関して、計算量、ワーク
メモリの記憶量を比較したのが第1表である。こ
の表によれば、第10図に示すタスクの場合は、
計算量が大幅に減り、記憶量も同等以下となつて
おり、実用的に効果の大きいものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a pattern comparison device that automatically recognizes continuous speech patterns as a series of patterns. Conventional configuration and its problems The general configuration of a speech recognition device using pattern matching is as follows. Input audio signal, filter bank, frequency analysis
Feature extraction means for converting into a series of feature vectors by LPC analysis etc., and standard pattern storage means for registering the series of feature vectors uttered in advance and extracted by the feature extraction means as standard patterns for all recognized words. pattern comparison means for calculating the similarity or distance as a series of feature vectors between the input pattern extracted by the feature extraction means and all standard patterns stored in the standard pattern storage means; and a determining means for determining and outputting a word corresponding to the standard pattern having the highest degree of similarity (smallest distance) as a recognition result as a result of pattern comparison. At this time, even if the same speaker utters the same word, the duration of the utterance differs each time, so when comparing the standard pattern and the input pattern using the pattern comparison means, the time axis of both It is necessary to expand and contract the pattern lengths of the two to make them the same and compare them. At this time, since the change in utterance time length does not occur uniformly in each part of the uttered word, it is necessary to expand and contract each part non-uniformly. The best results have been obtained when the expansion/contraction is performed in a way that maximizes the similarity between the two patterns to be compared (minimizes the distance), as explained below using distance. (hereinafter, this matching is referred to as DP matching).The DP matching method can be explained using a lattice graph.Figure 1 is a lattice graph, and The horizontal axis is the i coordinate corresponding to the input pattern T = a 1 , a 2 ...a I ,
The vertical axis represents the j coordinate corresponding to the standard pattern R n =b n 1 , b n 2 . . . b n Jo . Matching the input pattern T and the standard pattern by non-linearly expanding and contracting the time axis involves determining the path (1) showing the correspondence between the feature vectors of both patterns on this lattice graph using some price standard. , to evaluate the distance between both patterns with respect to this path. When determining this route, limiting conditions are set in consideration of the nature of the voice. FIG. 2a shows an example of restrictive conditions for route selection. That is, in this example, the path to point (i, j) is from point (i-2, j-1) to point (i-1, j)
Path (2) passing through, path (3) coming from point (i-1, j-1), or path (3) from point (i-1, j-2) to point (i, j
This means that only one of the routes (4) passing through -1) can be taken. At this time, if we set the condition that the start and end of the input pattern and standard pattern must correspond,
The matching path is limited to the shaded area in FIG. This restriction is made to prevent extreme correspondences from occurring due to the fact that no matter how much the time axis expands or contracts, it is unlikely that the same word will expand or contract so drastically. If the distance between the vectors a i and b n J is d n (i, j), the distance along the path between the input pattern T and the standard pattern R n is d n along that path.
It is defined as the weighted average of (i,j). The a, b, c, and d on the route in Figure 2 are the loads when the corresponding route is selected.In order to apply DP matching, the method of determining this load is to No matter what route is selected below, it should be determined so that the sum of the loads along that route will be constant. a=c=e=2, b=d=1
Then, the sum of this load is I+J n , a=b=c=
1, d=e=0.5, the sum of this load is I,
If a=b=0.5, c=d=e=1, the sum of these loads will be J n and will be constant regardless of how the path is selected. Both of these are commonly used. Furthermore, by making this load a function of j under the condition that the sum of the loads is constant, it is also possible to perform operations such as increasing the load on a portion of the path that is to be matched with greater emphasis. The distance between the input pattern T and the standard pattern R n is
is defined as the minimum value of the weighted average under the limiting conditions. That is, by solving the following recurrence formula, the minimum value of the weighted average and the path that provides the minimum value can be determined. g n (i, j) = mimg n (i-2, j-1) + ad n (
i-1, j) + bd n (i, j) g n (i-1, j-1) + cd n (i, j) g n (i-1, j-1) + cd n (i, j) g n (i-1, j-2)+ed n (i, j-1)+dd n (i,
j)...(1) Initial condition g n (1, 1) = d n (1, 1) D (T, R n ) = g n (I, J n )/sum of loads Here, D (T, R n ) is the distance between the input pattern T and the standard pattern Ro . There are various other possible route selection conditions, such as those shown in FIGS. 2b to 2j, which are other examples. In addition to this, various other modifications can be considered. Of course, the recurrence formula can be rewritten into a corresponding one depending on the selection conditions of these routes. DP matching has achieved good results not only when recognizing isolated words but also when recognizing consecutively uttered sounds (uttered without any breaks between words). The problem of continuous word speech recognition is formulated as follows. The number of frames of the input pattern is I, the feature vector of the i-th frame is a i , the number of frames of the standard pattern of word n is J n , the feature vector of the j-th frame is b n j
Then, the standard pattern R n of word n is expressed as follows. R n = b n 1 b n 2 …b n j …b n j n Then, the combination of standard patterns corresponding to x word strings, R = R q(1) R q(2) …R q(x) =b q(1) 1 b q(1) 2 …b q(1) Jq(1) b q(2) 1 b q(2) 2 …b q(x) Jq(
2)
Vector sequence of …b q(x) 1 b q(x) 2 …b q(x) Jq(x) …(2) and input pattern T=a 1 , a 2 …a i …a I Word sequence q(1)q(2)…q with the minimum distance between
Find (x). If we try to solve the above calculation using DP matching in the same way as in the case of isolated words, for example, when we have a word with 10 digits as a standard pattern, we can recognize the sound of 3 digits uttered consecutively. 10 3 = Must be matched with 1000 different standard patterns. As the number of standard patterns increases, the number of combinations quickly becomes prohibitive. Therefore, in order to apply DP matching to continuous word recognition, we set the conditions for path selection so that the normalization coefficient of the cumulative distance of matching (the sum of the weights mentioned above) depends only on the number of input frames. Then, as shown below, dynamic programming can be applied to word combinations of standard patterns, and the amount of calculation can be significantly reduced. The route selection conditions generally include those shown in FIGS. 3a to 3e. The numerical value shown on the route is the load factor when that route is selected. The j-th continuous standard pattern R consisting of the i-th frame (feature vent of the input pattern T, hereinafter referred to simply as frame) a i and the connection of X standard patterns
The interframe distance (vector distance) of frame b R j is
Let d R (i, j) be the time function that matches the input pattern with the continuous standard pattern (the matching path) as u(i), and let the next cumulative distance (frame It is assumed that R (denoted as R^) that minimizes D (T, R) (sum of loads of distances) is to be sought. That is, D (T, R) = min u (i) [ Ii=1 d R (i, u (i))] ... (3) R^ = argmjn R [D (T, R)] here So, for the path shown in Figure 3a, 0<u(i)-u(i-1)<2, u(1)=1, u(I
)
= JR . Further, min[f(z)] means f(z) minimized with respect to z, and argmin[f(z)] means the value of z that minimizes f(z). Equation (3) can be solved when the number of words is known, when it is unknown, or when automaton control is incorporated. Various methods have already been proposed, and some examples have been commercialized. Among these, the present application relates to a device that recognizes continuously uttered speech by solving equation (3) in a form that incorporates automaton control. Next, formula (3) incorporating automaton control is expressed as
We will explain the conventional method for solving the problem. If we actually say the words in succession,
In many cases, their order is fixed. Therefore,
The input pattern (input sentence) is a sentence generated by a regular grammar equivalent to the finite state automaton α, and the word sequence that minimizes equation (3) among all word sequences accepted by the automaton α. (q(1), q
(2),...,q(x)), the recognition rate can be improved. Here, if the word string (q(1), q(2), ..., q(x)) is accepted by the automaton α, Δ(q p , q(1)) = q i
CS, Δ(q i , q(2)=q j CS, …, Δ(q k , q(x−
This is a case where there is a state transition such that 1))=q l CS, Δ(q l , q(x))=q f CFCS. The meaning of each symbol is that S is a finite set of states q {q∈q 0 , q 1 ,...,
q| S | -1 }, 〓 is a finite set of input words n {n∈1,
2,...,N}, Δ is the state transition function, S×〓→S,
{Δ(q 1 , n)=q j }, q p is an initial state, q p ∈S, F is a set of final states FCS. Here q(1),…q
(x)∈{1, 2,...N}. The difference from normal automaton recognition problems is that the frame number representing time is also included as a variable, and it is not just an output of acceptance or rejection.
This is the point where the degree of acceptability (cumulative distance) is output. Let D qj (i) be the minimum cumulative distance among all word strings assuming that it ends at the input i frame in state q j , and N qj (i) be the last word name of the word string corresponding to D qj (i). , B qj (i) is the starting point position of N qj (i) minus 1 (the last frame of the word before N qj (i),
), Q qj (i) is the state name that satisfies D qj (i) by state transition to q j , that is, Δ(Q qj (i), N qj (i)) = q j . Then, by solving the following recurrence equation, the solution to equation (3) by automaton control can be obtained. That is, with the initial conditions D qj (o)=O, B qj (o)=0, D q (i)=min [D qj (m)+D n (m+1: i )], q=Δ(q k , n ) ... ( 4) for q = q 1 , q 2 , ..., q| S | ) = n^, B q (i) = m, Q q (i) = q k . If this calculation is performed until i=I, words can be found in reverse order starting from the last word as follows. That is, if i=I, q=a g ming f D qf (i), q f ∈F, then n^=N q (i) B q (i)≠, then i=B q (i), q=Q q As (i), if B q (i)=0, the process ends. FIG. 6 is a flowchart. Note that D n (m+1:i) is defined by the following equation, and is obtained using the same method as the DP matching of isolated words described above. D n (m+1:i)= min u(i) [ ik=m+1 d n (k, u(k))]
...(5) Here, for the route shown in Figure 3a, ou(k)-u(k-1)2, u(m+1)=1,
u(i)=J n . Equation (3) calculates D n (m+1:i) for a predetermined range of m from i 1 to i 2 , and calculates D qk (m) and D n (m+1: i) that have already been calculated for each m. m and q k ∈ {q 0 , q 1 , ..., q|s|−
1} (however, q k satisfies q = Δ(q k , n)) and n, and use this as D q (i). As a way to reduce this amount of calculation, after i = m + 1, is word n and the next state is q, then
(i, j) = (1, 1) to (i, j) = (i', j')
Let D n q (i′, j′) be the cumulative distance to D n q (i, j′).
D q (i) as the minimum value of n, q k of J n )
A method has been proposed to find the . The problem with these methods is that although the amount of calculation can be further reduced depending on the structure of the automaton, this point has not been taken into consideration in the past. OBJECT OF THE INVENTION It is an object of the invention to propose a pattern comparison device that significantly reduces the amount of calculation in continuous speech recognition using automaton control. Structure of the Invention The present invention provides continuous pattern DP matching using automaton control, when the automaton control rule is q=Δ(q k , n), pattern n
On the other hand, when there are multiple states q k , if the minimum cumulative distance to each state is q^ k , then the cumulative distance to the last pattern n to state q is is calculated assuming that the immediately preceding state is only q^ k , thereby reducing the cumulative distance calculation that was conventionally performed for all q k . DESCRIPTION OF EMBODIMENTS The principle and embodiments of the present invention will be described below. FIG. 5 is a diagram for explaining the principle of the present invention,
Figure 5a is a finite automaton representation for the word written in b. For simplicity, the explanation here uses monosyllables instead of the words. In the calculations in the conventional example described above, calculations had to be performed for all state transitions (the number of which is 22 in FIG. 7). However, in the example in Figure 7,
The same "O" has entered state S12 from states S6 , S7 , and S8 . In such a case, states S 6 , S 7 , S 8
If we temporarily degenerate, we get “O” in state S 12 .
It only needs to be calculated once. This also applies to “YA” in state S14 . The present invention
This is a pattern comparison device that utilizes this principle to reduce the amount of calculation. In the example of Figure 7, q=S 12 , n p =n p (n p is
number attached to the syllable “O”), then q=S 12
The meaning of equation ( 3 ) for m) D no S8(n) +D no (m+1:i) ...(7). In other words, in FIG. 5, S 6 , S 7 ,
When issuing “O” from S 8 and transitioning to S 12 , D s
In order to minimize (i), D S6 (m), D S7 (m),
This means that the transition will start from the minimum state of D S8 (m). If you multiply this in general,
With q p as the initial state, D qp (o) = 0, B qp (o) D q (i) = min n, m [min qk [D qk (m)] + D n (m+1:
i)] ...(8) However, q=Δ(q k , q) N q (i)=n^, B q (i)=m^, Q q (i)=argmin [D qk
(m^)]. That is, among the states immediately before becoming state q in frame i, the same syllable (or word) n
If something is connected, it means that it is connected from the state where the cumulative distance to reach those states is the minimum. By utilizing this fact, in the case of the example shown in FIG. 5, the above can be said about "O" and "YA", so the calculation of equation (3) becomes 19 times, which is reduced by 3 times. D n (m+
1:i) and directly solves equation (3), this quantity can be almost ignored, but when the above-mentioned high-speed calculation method is used, it becomes a big difference. Also, depending on the task, a significant reduction in the amount of calculation is expected. An embodiment in which the present invention is applied to one of the above-mentioned high-speed calculation methods will be described. According to the path restriction conditions shown in Figure 3b, D n (m+
1:i) is from (i,j)=(m,1) to (i,j)=(i,
j n ). Here, (6) has a slope of 1/2,
(7) is a straight line with a slope of 2. Now, the path (5) is (i,
j) = (1, 1) to (i, j) = (i, j n ), then according to the principles of dynamic programming, (i, j) = The path that minimizes the cumulative distance from (1, 1) to the point (i, j) = (i', j') on path (5) is (i, j) = (i ′、
j'). Therefore, D n (m
+1:i) does not need to be specifically determined, but D n q (i, j) can be calculated using the recurrence formula D n q (i, j) = mimD n q (i-2, j-1) + d n
(i-1, j)+d n (i, j)...(1) D n q (i-1, j-1)+d n (i, j)...(2) D n q (i-1, j −2)+d n (i, j)...(3)...(9), and can be obtained as D n q (i)=D n q (i, j n ). However, the initial value of recurrence formula (9) is D n q (-1, j) = ∞ (J = 0, 1, ..., J n ) D n q (0, 0) = 0 D n q (0 , j)=∞ (J=-1, 1, 2,...,
J n ) D n q (i, -1) = ∞ (i = 1, 2, ..., I) D n q (i, 0) = D qk (i - 1) (q k is q = U (q k ,
q k ) that satisfies n, and the back pointer corresponding to D n q (i, j)
B n q (i, j ) is expressed as B n q (i, j) = B n q ( i-
2, j-1) When D n q (i, j) = B n q (i, j) = B n q (i-
1, j-1) When D n q (i, j) = B n q (i, j) = B n q (i-
1,j-2). Further, the initial value of B n q (i, j) is B n q (i, 1)=i−1. FIG. 6 explains the meaning of D n q (i, j) on i=i. 8,
The straight line 10, 12 has a slope of 1/2, 9, 11, 13
The straight line has a slope of 2, and (i, j) = (i, j n )
The path leading to (point 26) is included in the area between straight lines 8 and 9, the matching path passing through point 16 is included in the area between straight lines 10 and 11, and the matching path passing through point 17 is included in the area between straight lines 8 and 9. It is included in the area between 12 and 13. In other words, a path through point 16 has a starting point between 18 and 19 and an ending point between 20 and 21 for word n, and a path through point 17 has a starting point between 22 and 23. , the terminal is 24
This means that it is between 25 and 25. After all, i=
D n q (i, j) on i is the cumulative distance D n q (i″)=D n q (i″ , J n ) (hereinafter D n q (i, j)).
is called the intermediate cumulative distance) Also, the recurrence formula
As is clear from (9), in order to obtain D n q (i, j), if only the intermediate cumulative distance between frames i-2 and i-1 and the inter-frame distance between frames i-1 and i are known, then Often, you can forget about previous values. To summarize the above, to find D q (i), j = 1, 2, ..., J n , n for each frame i
Find D n q (i, j) for = 1, 2,..., N, q = q 1 , q 2 ,..., q| s | -1 , m^, q^ k = argmin [D n When q (i, j n ), q=Δ(q k , n), D q (i)=D n ^ q (i, j n ^) B q (i)=B n q (i, j n ^) Q q (i) = q^ k N q (i) = n^. In this way, the calculation of d n (i, j) at each grid point (i, j) only needs to be done once for each word n, and the calculation of D n q (i, j) only needs to be performed once for each word n.
It only needs to be done once for q k where n, Δ(q k , n) = q,
The amount of calculation is significantly greater than the method of directly solving equation (3), which requires calculating d n (i', j) and D n (m+1:i) for the grid points inside the diagonal lines shown in Figure 5 for each frame. decreases. Furthermore, although this method proceeds with the processing for each frame i of the input pattern, it is also possible to perform the processing for each frame j of the standard pattern. That is, as is clear from recurrence formula (6), in order to obtain D n q (i, j) also in the j direction, frame j−
Since it is sufficient to know the interframe distance D n (i, j) between frame 1 and frame j and the intermediate cumulative distance between frame j-2 and frame j-1, j=
It is also possible to find D n q (i, j) on j. The above method is called the automaton-controlled clock synchronized propagation type DP method (FSACWDP). At this time, in order to introduce the idea of equation (8), the initial value of D n q (i, j) may be set as follows in the calculation of recurrence equation (9). That is, for q k that satisfies q = Δ(q k , n), q^ k = argmin [D qk (i-1)]
In this case, D n q (i, 0)=D q ^ k (i-1) (10). FIG. 8 is a block diagram showing one embodiment of the present invention. 100 is an input terminal for audio signals. 10
Reference numeral 1 denotes a feature extraction unit which converts an input audio signal into a series of feature vectors. 102 is a standard pattern storage unit in which each word (syllable) to be recognized is stored as a series of similar feature vectors. Reference numeral 103 denotes an interframe distance calculation unit that calculates the difference between the feature vector output from the feature extraction unit 101 and the feature vector stored in the standard pattern storage unit 102. 104 is an interframe distance storage unit that temporarily stores the calculated interframe distance. 105
is the automaton control rule storage section. Reference numeral 106 is a cumulative distance storage unit in which cumulative distance D q (i) is stored for each frame. Reference numeral 107 is an initial value calculation unit which calculates the initial value in the calculation of recurrence formula (9) according to formula (10). Reference numeral 108 is a recurrence formula calculation unit, which calculates the recurrence formula (10) based on the initial value calculated in 107. 109
is a final value determining unit, which determines n^=argmin [D n q (i, J n ) N q (i)=n^ D q (i ) = D n ^ q (i, J n ^) B q (i) = B n ^ q (i, j n ^) Q q (i) = argmin [D qk (B q (i))] Calculate This is the part to do. 113, 114, 115
are the last word memory section, the previous state memory section, and the last word memory section, respectively.
The last word N q , which is a back pointer storage unit, and which is determined by the final value determining unit 109.
(i), state immediately before q q (i), back pointer
B q (i) is stored for each frame. 11
2 is a part that determines the state of the input audio in the final frame. That is, when q f F, the state q of the final frame I is determined as q=argmin(D qf (I)). 110 is a voice section detection unit; 111
is the frame number coefficient part. Reference numeral 116 is a backtrace control unit, which stores the last word storage unit 113.
Then, from the contents of the previous state storage section 114 and the back pointer storage section 115, the last word storage section 11 is stored in the reverse order according to the flowchart shown in FIG.
The recognition results are output from step 3. FIG. 9 is a chart showing an example of the case where the operation of the above embodiment is realized by software. Steps 200 to 204 are the parts that initialize the entire frame, steps 205 to 214 are the parts that perform processing in frame i, and steps 206 to 212 are the parts that perform the processing for each standard pattern n (n
= 1, 2, ..., N), the part where D n q (i), B n q (i) are calculated, steps 213 to 214, are the last part when it is assumed that the input audio ends at frame i. Word (syllable) name, corresponding cumulative distance,
The back pointer is the part that determines the previous state for each state. Step 208 corresponds to the operations of the interframe distance calculation section 103 and the interframe distance storage section 104. Step 210 is the initial value calculation section 10
Corresponds to operation 7. Step 211~Step 212
corresponds to the operation of the recurrence formula calculation unit 108. Steps 213 and 214 correspond to the operations of the final value determining section 109. Steps 215 to 217 are processes for determining recognition results in reverse order starting from the last frame of the input audio, and include the final frame state determining section 118, last word storage section 113, and previous state storage section 114 back pointer storage. This corresponds to the operation performed between the back trace control section 115 and the back trace control section 116. Another known method for directly determining and solving D n q (i, j) is the automaton control level building method (FSALB). The idea of the present invention can also be introduced to this, and the amount of calculation can be significantly reduced. Figure 10 shows the sound of a 5-digit number, for example,
Seventy-three thousand two hundred and eighty-six, and so on.
This is an automaton expression for reading 10. In contrast, devices using conventional FSACWDP and FSALB, and degenerate FSACWDP and degenerate device according to the present invention.
Table 1 compares the calculation amount and work memory storage amount for devices using FSALB. According to this table, for the task shown in Figure 10,
The amount of calculation is greatly reduced, and the amount of memory is also less than the same amount, so it has a great practical effect.

【表】 発明の効果 以上述べたように、オートマトンの制御規制を
q=Δ(qk,n)とするとき、パターンnに対し
て、状態qkが複数存在するとき、従来は最後尾パ
ターンnに対する累積距離を直前の状態qkに対し
てすべて行つていたのを、状態qとなる直前の状
態のうち、同じパターンnで連がるものがあると
きは、それら直前の状態に至るまでの累積距離が
最小である状態から連がるという事実を利用する
ことにより、タスクによつては計算量を大幅に減
らすことが可能となつたものである。
[Table] Effects of the Invention As described above, when the control regulation of the automaton is q = Δ(q k , n), and there are multiple states q k for pattern n, conventionally the last pattern The cumulative distance for n is calculated for the previous state q k , and if any of the states immediately before becoming state q have the same pattern n, then the process returns to those immediately previous states. By taking advantage of the fact that the process continues from the state with the minimum cumulative distance, it has become possible to significantly reduce the amount of calculation depending on the task.

【図面の簡単な説明】[Brief explanation of the drawing]

第1図〜第3図はDPマツチングの基本原理を
説明する図、第4図はオートマトン制御による連
続単語音声認識におけるセグメンテーシヨンおよ
び認識単語の決定手順を示すフローチヤート、第
5図は本発明の原理を説明するオートマトン表現
の一例を示す図、第6図、第7図は本発明の一実
施例の原理を説明する図、第8図は本発明の一実
施例を示すブロツク図、第9図は同実施例装置の
機能をソフトウエアで実現したときのチヤート、
第10図は同実施例の効果を示す図である。 101……特徴抽出部、102……標準パター
ン記憶部、103……フレーム間距離計算部、1
04……フレーム間距離記憶部、105……オー
トマトン制御規則記憶部、106……累積距離記
憶部、107……初期値計算部、108……漸化
式計算部、109……最終値決定部、110……
音声区間検出部、111……フレーム数係数部、
112……最終フレーム状態決定部、113……
最後尾単語記憶部、114……直前状態記憶部、
115……バツクポインタ記憶部、116……バ
ツクトレース制御部。
Figures 1 to 3 are diagrams explaining the basic principle of DP matching, Figure 4 is a flowchart showing the procedure for segmentation and recognition word determination in continuous word speech recognition by automaton control, and Figure 5 is a flowchart of the present invention. 6 and 7 are diagrams illustrating the principle of an embodiment of the present invention, and FIG. 8 is a block diagram illustrating an embodiment of the present invention. Figure 9 is a chart when the functions of the same embodiment device are realized by software.
FIG. 10 is a diagram showing the effect of the same embodiment. 101...Feature extraction unit, 102...Standard pattern storage unit, 103...Interframe distance calculation unit, 1
04...Interframe distance storage section, 105...Automaton control rule storage section, 106...cumulative distance storage section, 107...Initial value calculation section, 108...Recurrence equation calculation section, 109...Final value determination section , 110...
Voice section detection section, 111... frame number coefficient section,
112...Final frame state determination unit, 113...
Last word storage unit, 114... Immediate state storage unit,
115... Back pointer storage unit, 116... Back trace control unit.

Claims (1)

【特許請求の範囲】[Claims] 1 入力信号を特徴ベクトルa1,a2,…ai,…aI
の系列に変換する特徴抽出手段と、特徴ベクトル
の系列bn 1,bn 2,…bn J,…bn Joから成る標準パター
ンRn(ただしn=1,2,…,N)を記憶する標
準パターン記憶手段と、入力パターンの第iフレ
ームにおいて、前記特徴ベクトルaiとbjとの距離
dn(i,j)をj=1,2,…,jn;n=1,2,
…,Nについて計算するフレーム間距離計算手段
と、入力パターンの第iフレームにおいて、j=
1,2,…,jn;n=1,2,…,Nについて、
状態がqであるとしたときの中間累積距離Dn q
(i,j)を、パターンnでqに連がる直前の状
態qkのうち、第i−1フレームにおいて状態qk
至る径路に沿う累積距離Dqk(i−1)の最小値
の続きとして求めると共に、それを求めるに至つ
た経路に沿う中間バツクポインタBn q(i,j)を
求める累積距離計算手段と、第iフレームにおい
て状態qで終端すると仮定したときの最後尾パタ
ーンn^を中間累積距離Dn q(i,jn)を最小にするn
として決定し、そのときのパターン名をNq(i)
=n^、累積距離をDq(i)=Dn^q(i,jn^)、バツク

インタをBq(i)=Bn^q(i,jn^)、1つ前の状態で
Dqk(Bq(i))を最小にするqkをq^kとするときQq
(i)=q^kとする最終決定手段と、それらの値をフ
レーム毎に記憶する最後尾パターン記憶手段、バ
ツクポインタ記憶手段、直前状態記憶手段と、入
力パターンの最終フレームIで入力が完了したと
き、最終の状態として許される状態qfに対する累
積距離Dqf(I)を前記累積距離記憶手段から読み
出し、Dqf(I)の最小値を与えるq^fを最終フレー
ムにおける状態qとなし、前記パツクポインタ記
憶手段と、前記直前状態記憶手段と、前記最後尾
単語記憶手段の内容から、Bq(i)=0となるま
でn=Nq(i),i=Bq(i),q=Qq(i)とし
て逆の順序で認識結果を出力せしめるバツクトレ
ース制御手段からなることを特徴とするパターン
比較装置。
1 Input signal as feature vector a 1 , a 2 ,...a i ,...a I
and a standard pattern R n (where n=1, 2,..., N) consisting of a series of feature vectors b n 1 , b n 2 , ... b n J , ... b n Jo The distance between the standard pattern storage means to be stored and the feature vectors a i and b j in the i-th frame of the input pattern.
d n (i, j) as j=1,2,...,j n ;n=1,2,
..., N, and in the i-th frame of the input pattern, j=
1, 2,..., j n ; For n=1, 2,..., N,
Intermediate cumulative distance D n q when state is q
Let (i, j) be the minimum value of the cumulative distance D qk (i-1) along the path leading to state q k in the i-1st frame among the immediately preceding states q k that continue to q in pattern n. A cumulative distance calculation means for calculating the intermediate back pointer B n q (i, j) along the path that led to the calculation, and the last pattern n when it is assumed that the i-th frame ends in state q. n that minimizes the intermediate cumulative distance D n q (i, j n )
, and the pattern name at that time is N q (i)
= n^, the cumulative distance is D q (i) = D n ^ q (i, j n ^), the back pointer is B q (i) = B n ^ q (i, j n ^), the previous in state
When q k that minimizes D qk (B q (i)) is q^ k , Q q
(i) A final determination means for setting = q^ k , a last pattern storage means for storing these values for each frame, a back pointer storage means, a previous state storage means, and input is completed at the last frame I of the input pattern. Then, the cumulative distance D qf (I) for the state q f allowed as the final state is read from the cumulative distance storage means, and q^ f that gives the minimum value of D qf (I) is set as the state q in the final frame. , from the contents of the pack pointer storage means, the previous state storage means, and the last word storage means, n=N q (i), i=B q (i) until B q (i)=0. , q=Q q (i) and outputs the recognition results in reverse order.
JP58183361A 1983-09-30 1983-09-30 Pattern comparator Granted JPS6073698A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP58183361A JPS6073698A (en) 1983-09-30 1983-09-30 Pattern comparator

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP58183361A JPS6073698A (en) 1983-09-30 1983-09-30 Pattern comparator

Publications (2)

Publication Number Publication Date
JPS6073698A JPS6073698A (en) 1985-04-25
JPH0449954B2 true JPH0449954B2 (en) 1992-08-12

Family

ID=16134410

Family Applications (1)

Application Number Title Priority Date Filing Date
JP58183361A Granted JPS6073698A (en) 1983-09-30 1983-09-30 Pattern comparator

Country Status (1)

Country Link
JP (1) JPS6073698A (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0634169B2 (en) * 1985-12-10 1994-05-02 ヤマハ株式会社 Electronic musical instrument with pronunciation assignment function
JPH01321498A (en) * 1988-06-23 1989-12-27 Matsushita Electric Ind Co Ltd Speech recognizing device

Also Published As

Publication number Publication date
JPS6073698A (en) 1985-04-25

Similar Documents

Publication Publication Date Title
EP0103245A1 (en) Pattern matching apparatus
US4991216A (en) Method for speech recognition
JP2980026B2 (en) Voice recognition device
JPH0247760B2 (en)
JPH029359B2 (en)
JPH0449954B2 (en)
US4794645A (en) Continuous speech recognition apparatus
JPH0777998A (en) Successive word speech recognition device
JP2001005483A (en) Word voice recognizing method and word voice recognition device
JPS62111295A (en) Voice recognition equipment
JPH0449718B2 (en)
JPH0534680B2 (en)
JPH0247758B2 (en)
JPH0361957B2 (en)
JPH0320759B2 (en)
JP3097134B2 (en) DP matching method
JPS6247100A (en) Voice recognition equipment
JPS6312000A (en) Voice recognition equipment
JPS60164800A (en) Voice recognition equipment
JP3251430B2 (en) How to create a state transition model
JPH08110797A (en) Pattern matching device
JPS62265699A (en) Word voice recognition equipment
JPH02293899A (en) Voice recognizing device
JPS59173884A (en) Pattern comparator
JPH0568717B2 (en)