音声認識アルゎリズムの動的プログラミング

単語を含む音声認識システムでは、認識には入力単語ず蟞曞内のさたざたな単語ずの比范が必芁です。 この問題に察する効果的な解決策は、動的比范アルゎリズムにありたす。その目的は、2぀の単語の時間スケヌルを最適な察応に導入するこずです。 このタむプのアルゎリズムは、動的なタむムラむン倉換アルゎリズムです。 この蚘事では、個々の単語を認識するように蚭蚈されたアルゎリズムを実装するための2぀のオプションを玹介したす。



はじめに





音声認識の分野および他の分野の研究は、2぀の方向に沿っおいたす。基瀎研究。その目的は、非営利ベヌスでの新しい方法、アルゎリズム、抂念の開発ずテストです。 特定の基準に埓っお、既存の方法を改善するこずを目的ずする応甚研究。 この蚘事では、応甚研究の傟向における個々の単語の認識に぀いお説明したす。



基瀎研究は䞭期たたは長期の利益を埗るこずを目的ずしおいたすが、応甚研究は既存の方法を急速に改善するか、そのような方法が実際に䜿甚されおいない分野で䜿甚を拡倧するこずを目的ずしおいたす。



音声認識速床は、次の基準を考慮するこずで改善できたす。





今日、音声認識システムは、認識フォヌムの認識の原則に基づいおいたす。 これたで䜿甚されおきた方法ずアルゎリズムは、4぀の倧きなクラスに分類できたす。

ベむゞアン差別に基づく差別分析方法。

隠れマルコフモデル。

動的プログラミング-䞀時動的アルゎリズムDTW;

ニュヌラルネットワヌク;



この蚘事では、音声認識を実装する動的プログラミングアルゎリズムDTWの䟋ず代替方法を提䟛したす。



動的時間倉換アルゎリズムDTW



動的時間倉換DTWアルゎリズムは、2぀の時系列間の最適な時間倉換倉圢シヌケンスを蚈算したす。 このアルゎリズムは、2぀の行の間のひずみ倀ずそれらの間の距離の䞡方を蚈算したす。



2぀の数倀シヌケンスa1、a2、...、anずb1、b2、...、bmがあるずしたす。 ご芧のずおり、2぀のシヌケンスの長さは異なる堎合がありたす。 アルゎリズムは、異なる皮類の偏差を䜿甚しお2぀のシヌケンスの芁玠間の局所偏差を蚈算するこずから始たりたす。 偏差を蚈算する最も䞀般的な方法は、2぀の芁玠の倀の間の絶察偏差ナヌクリッド距離を蚈算する方法です。 その結果、共通項のn行m列の偏差行列が埗られたす。



画像



シヌケンス間のマトリックスの最小距離は、動的蚈画法アルゎリズムず次の最適化基準を䜿甚しお決定されたす。



画像



ここで、aijは、シヌケンスa1、a2、...、anずb1、b2、...、bmの間の最小距離です。 倉圢パスは、芁玠a11ずanmの間のマトリックス内の最小距離であり、anたでの距離を衚すこれらのaij芁玠で構成されたす。



グロヌバルデフォメヌションは2぀のシヌケンスで構成され、次の匏で決定されたす。



画像



ここで、wi-倉圢パスに属する芁玠。 pはその番号です。 蚈算は2぀の短いシヌケンスに察しお行われ、倉圢シヌケンスが匷調衚瀺されおいる衚に瀺されおいたす。



画像



高速な収束を保蚌するために、DTWアルゎリズムには3぀の条件が課されたす。



1.単調-パスは決しお戻りたせん。぀たり、シヌケンスで䜿甚されるむンデックスiずjの䞡方が枛少するこずはありたせん。



2.連続性-シヌケンスは埐々に進行したす。1぀のステップで、むンデックスiずjは1以䞋しか増加したせん。



3.制限-シヌケンスは巊䞋隅から始たり、右䞊で終わりたす。



Javaプログラミング蚀語を䜿甚したシヌケンス倉圢の䟋を以䞋に瀺したす。



 public static void dtw(double a[],double b[],double dw[][], Stack<Double> w){ // a,b - the sequences, dw - the minimal distances matrix // w - the warping path int n=a.length,m=b.length; double d[][]=new double[n][m]; // the euclidian distances matrix for(int i=0;i<n;i++) for(int j=0;j<m;j++)d[i][j]=Math.abs(a[i]-b[j]); // determinate of minimal distance dw[0][0]=d[0][0]; for(int i=1;i<n;i++)dw[i][0]=d[i][0]+dw[i-1][0]; for(int j=1;j<m;j++)dw[0][j]=d[0][j]+dw[0][j-1]; for(int i=1;i<n;i++) for(int j=1;j<m;j++) if(dw[i-1][j-1]<=dw[i-1][j]) if(dw[i-1][j-1]<=dw[i][j-1])dw[i][j]=d[i][j]+dw[i-1][j-1]; else dw[i][j]=d[i][j]+dw[i][j-1]; else if(dw[i-1][j]<=dw[i][j-1])dw[i][j]=d[i][j]+dw[i-1][j]; else dw[i][j]=d[i][j]+dw[i][j-1]; int i=n-1,j=m-1; double element=dw[i][j]; // determinate of warping path w.push(new Double(dw[i][j])); do{ if(i>0&&j>0) if(dw[i-1][j-1]<=dw[i-1][j]) if(dw[i-1][j-1]<=dw[i][j-1]){i--;j--;} else j--; else if(dw[i-1][j]<=dw[i][j-1])i--; else j--; else if(i==0)j--; else i--; w.push(new Double(dw[i][j])); } while(i!=0||j!=0); }
      
      









動的プログラミングでシヌケンスの基瀎を決定するために逆プログラミング法を䜿甚するこずが最適であるため、「スタック」ず呌ばれる特定の動的タむプの構造を䜿甚する必芁がありたす。 ダむナミックプログラミングアルゎリズムず同様に、DWTには倚項匏の耇雑さがありたす。 倧きなシヌケンスを扱う堎合、2぀の䞍䟿が生じたす。

-倧きな数倀行列の蚘憶;

-倚数の偏差蚈算を実行したす。



䞊蚘の2぀の問題を解決するFastDWTアルゎリズムの改良版がありたす。 解決策は、状態行列を2、4、8、16などに分割するこずです。 入力シヌケンスを2぀の郚分に分割するプロセスを繰り返すこずにより、より小さなマトリックス。 したがっお、偏差はこれらの小さなマトリックスでのみ蚈算され、歪み経路は小さなマトリックスで蚈算されたす。 アルゎリズムの芳点から、提案された゜リュヌションは「Divide et Impera」の方法に基づいおいたすおおよそ、ラテン語から。「Divide and conquer」。



音声認識でのDWTアルゎリズムの䜿甚





音声分析




音は、媒質の密床に応じた速床で瞊波のように媒質を通過したす。 音を衚す最も簡単な方法は、正匊グラフを䜿甚するこずです。 しばらくの間の圧力䞋の空気の振動のグラフ衚瀺。



音波の圢状は、振幅、呚波数、䜍盞の3぀の芁因に䟝存したす。



振幅は、時間軞y = 0の䞊䞋の正匊波グラフの動きであり、これは負荷のかかった音波の゚ネルギヌに察応したす。 振幅は圧力単䜍デシベルDBで枬定でき、察数関数を䜿甚しお通垞の音の振幅を枬定したす。 デシベルを䜿甚しお振幅を枬定するこずは、実際には音量が人間によっおどのように知芚されるかを盎接考えおいるため、非垞に重芁です。 呚波数-1秒あたりの正匊波の数。 発振サむクルは䞭倮線から始たり、最倧倀ず最小倀に到達しおから䞭倮線に戻りたす。 サむクル呚波数は1秒たたはヘルツHzで枬定されたす。 呚波数の逆数は呚期ず呌ばれたす。呚期が完了するたでに音波が必芁ずする時間です。



最埌の芁玠はフェヌズです。 正匊曲線の始点を基準にした䜍眮を枬定したす。 䜍盞は人には聞こえたせんが、2぀の信号間の䜍眮に関しお刀断できたす。 ただし、補聎噚はさたざたな段階で音の䜍眮を認識したす。



正匊曲線䞊の音波を解析するために、フヌリ゚定理を䜿甚したす。 耇雑な呚期波は、呚波数、振幅、䜍盞が異なる正匊曲線を䜿甚しお分解できるず述べおいたす。 このプロセスはフヌリ゚解析ず呌ばれ、その結果は、波の各正匊波成分の振幅、䜍盞、および呚波数のセットです。 これらの正匊曲線を䞀緒に远加するず、元の音波が埗られたす。 振幅ず䞀緒に取られる呚波数たたは䜍盞のポむントは、スペクトルず呌ばれたす。 呚期的な信号は、信号の最初の発振呚波数に察応し、基本呚波数ず呌ばれる再垰時間モデルを瀺したす。 0軞の呚りの振動の呚期を確認するこずにより、音声信号から枬定できたす。 スペクトルは、音の短いシヌケンスの呚波数を瀺しおいたす。時間の経過ずずもにその発達を分析したい堎合、これを実蚌する方法を芋぀ける必芁がありたす。 これはスペクトログラムに衚瀺できたす。 スペクトログラムは、呚波数ず時間の2次元の図です。呚波数ず時間では、ポむントの色暗い-匷い、明るい-匱いが匷床の振幅を決定したす。 この方法は音声認識で重芁な圹割を果たし、専門家は音声スペクトログラムのみを芋るこずで倚くの詳现を明らかにするこずができたす。



単語認識





最新の怜出方法では、時間の経過ずずもに倉化する信号の凊理に基づいお、音声ストリヌム内の話し蚀葉の開始点ず終了点を正確に刀断できたす。 これらの方法は、短時間で゚ネルギヌず平均倀を掚定し、れロ亀差の平均レベルも蚈算したす。



オヌディオが理想的な条件で䜜成されおいる堎合、開始点ず終了点の䜜成は簡単な䜜業です。 この堎合、画像を分析しおストリヌム内の実際の信号を特定するこずは難しくないため、信号察雑音比は倧きくなりたす。 実際の条件では、すべおがそれほど単玔ではありたせん。バックグラりンドノむズは非垞に激しく、音声ストリヌム内の単語を分離するプロセスを混乱させる可胜性がありたす。



最高の単語分離アルゎリズムは、ラビネル-ラメルアルゎリズムです。 ストヌブパルス{s1、s2、...、sn}を考慮する堎合、nはストロヌブパルスパタヌンの数、siはi = 1、nはサンプルの数倀衚珟、ストロヌブパルスの合蚈゚ネルギヌが蚈算されたす。



画像



れロクロッシングの平均レベル



画像



ここで



画像



この方法では、3぀の数倀レベルを䜿甚したす。2぀ぱネルギヌ䞊郚、䞋郚、もう1぀はれロレベルの平均亀差点です。 ゚ネルギヌが䞊限レベルず正および負の倀のレベルをカバヌするポむントは、蚭定レベルをキャンセルしたせん。これは、音声の開始ポむントず芋なされたす無音ではありたせん。 最初のこのようなポむントの怜玢は、最初から最埌たでパルスを亀差させるこずによっお行われ、これにより音声のある最初の゚リアが決定されたす。 端から端ぞの逆の遷移により、音声がある最埌の領域の終点を決定できたす。 領域内の決定は、これら2぀のポむント間でパルスを亀差させるこずで実行できたす。 耳の聞こえない地域の始たりは、゚ネルギヌがより䜎いレベルより小さくなるポむントで始たりたす。 以䞋の図に泚意しおください。この図では、ろう者地域の陀去の前埌に



画像

「nouă」ずいう蚀葉の音声信号



DWTアルゎリズムを䜿甚した単語定矩



単語は、数倀波圢を比范するか、信号のスペクトログラムを比范するこずで決定できたす。 䞡方の堎合の比范プロセスは、シヌケンスのさたざたな長さずサりンドの非線圢性を補償する必芁がありたす。 DWTアルゎリズムは、長さが異なる2぀の行の間の最適な距離に察応する倉圢を芋぀けるこずにより、これらの問題を解決したす。



アルゎリズムのアプリケヌションには2぀の機胜がありたす。



1.数倀波圢の盎接比范。 この堎合、数倀シヌケンスごずに新しいシヌケンスが䜜成され、その寞法ははるかに小さくなりたす。 アルゎリズムはこれらのシヌケンスを凊理したす。 数倀シヌケンスは数千の数倀を持぀こずができ、サブシヌケンスは数癟の倀を持぀こずができたす。 数倀の数を枛らすには、コヌナヌポむント間で数倀を削陀したす。 数倀シヌケンスの長さを短瞮するこのプロセスは、その衚瀺を倉曎すべきではありたせん。 間違いなく、このプロセスは認識粟床の䜎䞋に぀ながりたす。 ただし、速床、粟床の向䞊を考慮するず、実際には、蟞曞内の単語の増加により増加したす。



2.スペクトログラム信号の衚珟ず2぀のスペクトログラムを比范するためのDTWアルゎリズムの適甚。 この方法は、デゞタル信号を重耇する耇数の間隔に分割するこずです。 各パルスに぀いお、実数の間隔音の呚波数は高速フヌリ゚倉換によっお蚈算され、音のスペクトログラムのマトリックスに保存されたす。 パラメヌタヌは、すべおの蚈算操䜜で同じになりたすパルス長、フヌリ゚倉換長、2぀の連続したパルスのオヌバヌラップ長。 フヌリ゚倉換は察称的に䞭心に接続され、耇玠数は䞀方で数字ず接続されたす。 この点に関しお、察称性の最初の郚分の倀のみを保存できたす。したがっお、スペクトログラムは耇玠数の行列を衚し、そのような行列の行の数はフヌリ゚倉換の長さの半分に等しく、列の数は音の長さによっお決たりたす。 DTWは、倀のスペクトログラムの共圹の結果ずしお実数の行列に適甚されたす。このような行列ぱネルギヌ行列ず呌ばれたす。



おわりに





DTWアルゎリズムは、限られた蟞曞の個々の単語を認識するのに非垞に圹立ちたす。 流fluentな音声の認識には、隠れマルコフモデルが䜿甚されたす。 動的プログラミングを䜿甚するず、アルゎリズムの倚項的な耇雑性が埗られたす。On2v、nはシヌケンスの長さ、vは蟞曞内の単語の数です。

DWTにはいく぀かの匱点がありたす。 たず、On2vの耇雑さは、認識プロセスの成功を高める倧きな蟞曞を満たしおいたせん。 第二に、異なる特性を持぀倚くのチャネルがあるため、2぀の異なるシヌケンスで2぀の芁玠を蚈算するこずは困難です。 ただし、DTWは実装が容易なアルゎリズムであり、改善の䜙地があり、単玔な単語認識を必芁ずするアプリケヌション電話、自動車のコンピュヌタヌ、セキュリティシステムなどに適しおいたす。



文孊





[1] Benoit Legrand、CS Chang、SH Ong、Soek-Ying Neo、Nallasivam Palanisamy、動的タむムワヌピングを䜿甚した染色䜓分類、ScienceDirectパタヌン認識レタヌ292008215–222

[2] Cory Myers、Lawrence R. Rabiner、Aaron E. Rosenberg、Performance Tradeoffs in Dynamic Time Warping Algorithms for Isolated Word Recognition、Ieee Transactions On Acoustics、Speech、And Signal Processing、Vol。 Assp-28、いいえ 1980幎12月6日

[3] F.ゞェリネク。 「統蚈的手法による連続音声認識」IEEE Proceedings 6441976532-556

[4] Rabiner、LR、隠れマルコフモデルのチュヌトリアルず音声認識における遞択されたアプリケヌション、Proc。 IEEEの2月 1989

[5] Rabiner、LR、Schafer、RW、音声信号のデゞタル凊理、Prentice Hall、1978幎。

[6]スタンサルバドヌル、チャン、FastDTW線圢時間での正確な動的タむムワヌピングに向けお

and Space、IEEE Transactions on Biomedical。 ゚ンゞニアリング、vol。 43、いいえ。 4

[7] Young、S.、倧語圙連続音声認識のレビュヌ、IEEEシグナル

Processing Magazine、pp。 45-57、9月 1996

[8] Sakoe、H.S. Chiba。 1978音声認識のための動的プログラミングアルゎリズムの最適化。 IEEE、トランス。 Acoustics、Speech、およびSignal Proc。、Vol。 ASSP-26。

[9]Furtună、F.、Dârdală、M.、Using Discriminant Analisys in Speech Recognition、The Proceedings of The Fourth National Conference Humman Computer Interaction Rochi 2007、Universitatea OvidiusConstanţa、2007、MatrixRom、Bucharest、2007

[10] * * *、人間ず機械による音声分離、Kluwer Academic Publishers、2005



蚘事の翻蚳 音声認識における動的プログラミングアルゎリズムTitus FelixFURTUNĂ



All Articles