(57)【要約】【課題】音声認識ソフトウェアにおいて、認識精度を犠牲にしないで、利用可能なメモリに対する要求を低減させるような方法でガウス分布の計算を実行することが望ましい。【解決手段】１以上の確率分布関数を使うデータ処理アルゴリズムにおいて、実行メモリの使用が低減される。各確率分布関数は、１以上の圧縮されていない平均値と１以上の分散値により特徴付けられる。圧縮されていない平均値と分散値は、αビット（αは１より大きな整数）の浮動小数点数で表される。確率分布関数は、βビット（βはαより小さい）の整数で表される圧縮された平均値および／または分散値を有する圧縮された確率関数に変換されることにより、圧縮された平均値および／または分散値が占有するメモリ容量は、圧縮されていない平均値および／または分散値の場合よりも少なくなる。圧縮された平均値および分散値を用いてデータ処理アルゴリズムを実行する。【選択図】図１
2007133411.tif 000002
【特許請求の範囲】
【請求項１】
１以上の確率分布関数を使用するデータ処理アルゴリズムにおいて実行メモリの使用を削減する方法であって、
それぞれの確率分布関数は１以上の圧縮されていない平均値および１以上の分散値により特徴付けられ、その圧縮されていない平均値および分散値はαビット（αは１より大きな整数）の浮動小数点数により表されるとともに、
前記確率分布関数を、βビット（βはαより小さい）の整数で表される圧縮された平均値および／または分散値を有する圧縮された確率関数に変換することにより、前記圧縮された平均値および／または分散値が占有するメモリスペースを、圧縮されていない平均値および／または分散値の場合と比べて少なくするステップと、
前記圧縮された平均値および分散値を用いて前記データ処理アルゴリズムの１以上の部分を実行するステップと、
を備えることを特徴とするメモリ使用削減方法。
【請求項２】
前記確率分布関数を圧縮された確率関数に変換するステップは、１以上の識別できる特徴量についての値をαビットの浮動小数点形式からβビットの整数形式に圧縮する処理を含むことを特徴とする請求項１に記載のメモリ使用削減方法。
【請求項３】
αが３２であり、βが８であることを特徴とする請求項１に記載のメモリ使用削減方法。
【請求項４】
前記１以上の確率分布関数は、１以上のガウス確率分布関数を含むことを特徴とする請求項１に記載のメモリ使用削減方法。
【請求項５】
前記ガウス確率分布関数は、Ｎ個の異なる識別可能な特徴量χ０〜χｎに関するＭ個のガウス関数を含み、
ｎ＝Ｎ−１であり、
各ガウス関数は異なるＭ個の起こり得るガウス分布のうち１つについての確率関数を表し、
各ガウス関数は次式で表され、
【数１】
2007133411.tif 000025
μｋｉはｋ番目のガウス関数についての平均であり、σｋｉ２はｋ番目のガウス関数についての分散であり、
【数２】
2007133411.tif 000026
であり、
ｋは１とＭの間の値であり、
ｉは１からＮまで変動することを特徴とする請求項４に記載のメモリ使用削減方法。
【請求項６】
前記圧縮された平均値は次式で表され、
【数３】
2007133411.tif 000027
上式において、ｂｉはすべての起こり得るガウス分布に対する所与の識別できる特徴量についての平均の中心であり、
ｃｉはすべての起こり得るガウス分布に対する所与の識別できる特徴量についての分散であり、
χ＝（μｋｉ−ｂｉ）・ｃｉであってΘ＝２β−１である場合は、
【数４】
2007133411.tif 000028
となり、
そうでない場合は、φ（χ）はχの固定小数点形式で表されることを特徴とする請求項５に記載のメモリ使用削減方法。
【請求項７】
【数５】
2007133411.tif 000029
であることを特徴とする請求項６に記載のメモリ使用削減方法。
【請求項８】
【数６】
2007133411.tif 000030
であることを特徴とする請求項６に記載のメモリ使用削減方法。
【請求項９】
前記確率分布関数を圧縮された確率関数に変換するステップは、１以上の識別できる特徴量ｘ０〜ｘｎについての値をαビットの浮動小数点形式からβビットの整数形式の圧縮された識別できる特徴量値に圧縮する処理を含むことを特徴とする請求項６に記載のメモリ使用削減方法。
【請求項１０】
前記圧縮された識別できる特徴量値が次式で与えられ、
【数７】
2007133411.tif 000031
上式において、χ＝（χｋｉ−ｂｉ）・ｃｉであってΘ＝２β−１である場合は、
【数８】
2007133411.tif 000032
であり、
そうでない場合は、φ（χ）はχの固定小数点形式で表されることを特徴とする請求項９に記載のメモリ使用削減方法。
【請求項１１】
【数９】
2007133411.tif 000033
であることを特徴とする請求項１０に記載のメモリ使用削減方法。
【請求項１２】
【数１０】
2007133411.tif 000034
であることを特徴とする請求項１０に記載のメモリ使用削減方法。
【請求項１３】
前記圧縮された分散は次の形式をとり、
【数１１】
2007133411.tif 000035
上式において、
【数１２】
2007133411.tif 000036
であり、
【数１３】
2007133411.tif 000037
であって
【数１４】
2007133411.tif 000038
の場合は、
【数１５】
2007133411.tif 000039
であり、
そうでない場合は、φ（χ）はχの固定小数点形式で表されることを特徴とする請求項５に記載のメモリ使用削減方法。
【請求項１４】
上式においてλの値は約３０であることを特徴とする請求項１３に記載のメモリ使用削減方法。
【請求項１５】
【数１６】
2007133411.tif 000040
であることを特徴とする請求項１３に記載のメモリ使用削減方法。
【請求項１６】
前記圧縮された確率関数は次の形式をとり、
【数１７】
2007133411.tif 000041
上式において、前記圧縮された平均値は次の形式をとり、
【数１８】
2007133411.tif 000042
上式において、ａは次の形式をもつユニバーサルスカラであり、
【数１９】
2007133411.tif 000043
λは、認識精度を最適化するように選択されるグローバルスケーリング因子であり、
ｂｉは、すべての起こり得るガウス分布に対する所与の識別可能な特微量についての平均の中心であり、
ｃｉは、すべての起こり得るガウス分布に対する所与の識別可能な特微量についての分散であり、
χ＝（μｋｉ−ｂｉ）・ｃｉであってΘ＝２β−１である場合は、
【数２０】
2007133411.tif 000044
であり、
そうでない場合は、φ（χ）はχの固定小数点形式で表され、
前記圧縮された識別可能な特微量は次式で与えられ、
【数２１】
2007133411.tif 000045
χ＝（χｋｉ−ｂｉ）・ｃｉであってΘ＝２β−１である場合は、
【数２２】
2007133411.tif 000046
であり、
そうでない場合は、φ（χ）はχの固定小数点形式で表され、
前記圧縮された分散は次の形式をとり、
【数２３】
2007133411.tif 000047
上式において
【数２４】
2007133411.tif 000048
であり、
【数２５】
2007133411.tif 000049
であってΘ＝２β−１である場合は、
【数２６】
2007133411.tif 000050
であり、
そうでない場合は、φ（χ）はχの固定小数点形式で表されることを特徴とする請求項５に記載のメモリ使用削減方法。
【請求項１７】
前記認識精度を最適化するλの値を経験的に決定するステップをさらに備えることを特徴とする請求項１６に記載のメモリ使用削減方法。
【請求項１８】
λが１と１００の間の整数であることを特徴とする請求項１６に記載のメモリ使用削減方法。
【請求項１９】
αが３２であり、βが８であり、λが３０であることを特徴とする請求項１６に記載のメモリ使用削減方法。
【請求項２０】
前記データ処理アルゴリズムは、認識アルゴリズムであることを特徴とする請求項１に記載のメモリ使用削減方法。
【請求項２１】
前記認識アルゴリズムは、
信号のＮ個（Ｎは１より大きな整数）の特微量を観測する処理と、
Ｍ個（Ｍは１より大きな整数）の起こりうるガウス分布の各々について確率を計算する処理と、
Ｍ個の起こりうるガウス分布に対する前記確率の中から最大の確率を選択する処理と、
を含むことを特徴とする請求項２０に記載のメモリ使用削減方法。
【請求項２２】
前記Ｎ個の特微量を観測するステップは、
時間領域信号を複数のケプストラム係数により特徴付けられるケプストラムに変換する処理を含むとともに、前記Ｎ個の特微量は、選択されたケプストラム係数を含むことを特徴とする請求項２０に記載のメモリ使用削減方法。
【請求項２３】
前記認識アルゴリズムは、音声認識アルゴリズムまたは光学的な文字認識アルゴリズムであることを特徴とする請求項２０に記載のメモリ使用削減方法。
【請求項２４】
前記認識アルゴリズムは、隠れマルコフモデルを使用することを特徴とする請求項２０に記載のメモリ使用削減方法。
【請求項２５】
信号のＮ個の異なる特微量を観測し、前記Ｎ個の異なる特微量に関するＭ個の異なる確率関数を設定するよう構成された信号プロセッサを備え、
各確率関数は、信号の一部における異なるＭ個の起こりうるガウス分布のうち１つの確率を表わし、
各確率分布関数は、１以上の圧縮されていない平均値および１以上の分散値により特徴付けられ、
前記圧縮されていない平均値および分散値は、αビット（αは１より大きな整数）の浮動小数点数で表され、
前記信号プロセッサは、前記確率分布関数を、βビット（βはαより小さい）の整数で表される圧縮された平均値および／または分散値を有する圧縮された確率関数に変換するよう構成されることにより、前記圧縮された平均値および／または分散値が占有するメモリ容量は、前記圧縮されていない平均値および／または分散値の場合よりも少なく、
前記信号プロセッサは、前記圧縮された確率関数を用いて、Ｍ個の起こりうるガウス分布の各々に対する確率を計算するよう構成され、
前記信号プロセッサは、前記Ｍ個の起こりうるガウス分布についての計算された確率から最も起こりそうなガウス分布を決定するよう構成されることを特徴とする信号認識装置。
【請求項２６】
前記１以上の確率分布関数は、１以上のガウス確率分布関数を含むことを特徴とする請求項２５記載の信号認識装置。
【請求項２７】
前記ガウス確率分布関数は、Ｎ個の異なる識別可能な特徴量χ０〜χｎに関するＭ個のガウス関数を含み、
ｎ＝Ｎ−１であり、
各ガウス関数は異なるＭ個の起こり得るガウス分布のうち１つについての確率関数を表し、
各ガウス関数は次の形式をとり、
【数２７】
2007133411.tif 000051
μｋｉはｋ番目のガウス関数についての平均であり、σｋｉ２はｋ番目のガウス関数についての分散であり、
【数２８】
2007133411.tif 000052
であり、
ｋは１とＭの間の値であり、
ｉは１からＮまで変動することを特徴とする請求項２６に記載の信号認識装置。
【請求項２８】
前記圧縮された平均値は次式で表され、
【数２９】
2007133411.tif 000053
上式において、ｂｉはすべての起こり得るガウス分布に対する所与の識別できる特徴量についての平均の中心であり、
ｃｉはすべての起こり得るガウス分布に対する所与の識別できる特徴量についての分散であり、
χ＝（μｋｉ−ｂｉ）・ｃｉであってΘ＝２β−１である場合は、
【数３０】
2007133411.tif 000054
となり、
そうでない場合は、φ（χ）はχの固定小数点形式で表されることを特徴とする請求項２７に記載の信号認識装置。
【請求項２９】
【数３１】
2007133411.tif 000055
であることを特徴とする請求項２８に記載の信号認識装置。
【請求項３０】
【数３２】
2007133411.tif 000056
であることを特徴とする請求項２８に記載の信号認識装置。
【請求項３１】
前記確率分布関数を圧縮された確率関数に変換する処理は、１以上の識別できる特徴量ｘ０〜ｘｎについての値をαビットの浮動小数点形式からβビットの整数形式の圧縮された識別できる特徴量値に圧縮する処理を含むことを特徴とする請求項２８に記載の信号認識装置。
【請求項３２】
前記圧縮された識別できる特徴量値が次式で与えられ、
【数３３】
2007133411.tif 000057
上式において、χ＝（χｋｉ−ｂｉ）・ｃｉであってΘ＝２β−１である場合は、
【数３４】
2007133411.tif 000058
であり、
そうでない場合は、φ（χ）はχの固定小数点形式で表されることを特徴とする請求項３１に記載の信号認識装置。
【請求項３３】
【数３５】
2007133411.tif 000059
であることを特徴とする請求項３２に記載の信号認識装置。
【請求項３４】
【数３６】
2007133411.tif 000060
であることを特徴とする請求項３２に記載の信号認識装置。
【請求項３５】
前記圧縮された分散は次の形式をとり、
【数３７】
2007133411.tif 000061
上式において、
【数３８】
2007133411.tif 000062
であり、λは、認識精度を最適化するように選択されるグローバルスケーリング因子であり、
【数３９】
2007133411.tif 000063
であってΘ＝２β−１である場合は、
【数４０】
2007133411.tif 000064
であり、
そうでない場合は、φ（χ）はχの固定小数点形式で表されることを特徴とする請求項２７に記載の信号認識装置。
【請求項３６】
上式においてλの値は約３０であることを特徴とする請求項３５に記載の信号認識装置。
【請求項３７】
【数４１】
2007133411.tif 000065
であることを特徴とする請求項３５に記載の信号認識装置。
【請求項３８】
前記圧縮された確率関数は次の形式をとり、
【数４２】
2007133411.tif 000066
上式において、前記圧縮された平均値は次の形式をとり、
【数４３】
2007133411.tif 000067
上式において、ａは次の形式をもつユニバーサルスカラであり、
【数４４】
2007133411.tif 000068
λは、認識精度を最適化するように選択されるグローバルスケーリング因子であり、
ｂｉは、すべての起こり得るガウス分布に対する所与の識別可能な特微量についての平均の中心であり、
ｃｉは、すべての起こり得るガウス分布に対する所与の識別可能な特微量についての分散であり、
χ＝（μｋｉ−ｂｉ）・ｃｉであってΘ＝２β−１である場合は、
【数４５】
2007133411.tif 000069
であり、
そうでない場合は、φ（χ）はχの固定小数点形式で表され、
前記圧縮された識別可能な特微量は次式で与えられ、
【数４６】
2007133411.tif 000070
χ＝（χｋｉ−ｂｉ）・ｃｉであってΘ＝２β−１である場合は、
【数４７】
2007133411.tif 000071
であり、
そうでない場合は、φ（χ）はχの固定小数点形式で表され、
前記圧縮された分散は次の形式をとり、
【数４８】
2007133411.tif 000072
上式において
【数４９】
2007133411.tif 000073
であり、
【数５０】
2007133411.tif 000074
であってΘ＝２β−１である場合は、
【数５１】
2007133411.tif 000075
であり、
そうでない場合は、φ（χ）はχの固定小数点形式で表されることを特徴とする請求項２７に記載の信号認識装置。
【請求項３９】
前記認識精度を最適化するλの値を経験的に決定する処理をさらに実行することを特徴とする請求項３８記載の装置。
【請求項４０】
１以上の確率分布関数を使用するデータ処理アルゴリズムにおいて実行メモリの使用を削減する装置であって、
それぞれの確率分布関数は１以上の圧縮されていない平均値および１以上の分散値により特徴付けられ、その圧縮されていない平均値および分散値はαビット（αは１より大きな整数）の浮動小数点数により表されるとともに、
前記確率分布関数を、βビット（βはαより小さい）の整数で表される圧縮された平均値および／または分散値を有する圧縮された確率関数に変換することにより、前記圧縮された平均値および／または分散値が占有するメモリスペースを、圧縮されていない平均値および／または分散値の場合と比べて少なくする手段と、
前記圧縮された平均値および分散値を用いて前記データ処理アルゴリズムの１以上の部分を実行する手段と、
を備えることを特徴とするメモリ使用削減装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この出願は音声認識に関し、特に、音声認識の方法およびシステムにおけるガウス確率の計算に関する。
【背景技術】
【０００２】
音声認識の技術により、コンピュータ、およびマイクロフォンのような音声入力源を備えた他の電子装置が、例えば、口述筆記またはコンピュータと相互に作用する代替方法として人間の音声を解することができる。音声認識用のソフトウェアは、携帯電話、ゲームプラットフォーム、パーソナルコンピュータ、およびパーソナルデジタル端末のような消費者用の電子装置で使用するために開発されつつある。典型的な音声認識アルゴリズムにおいて、人間の音声を表す時間領域信号は、多数の時間窓に分解され、各窓は、例えば、高速フーリエ変換（ＦＦＴ）により周波数領域信号に変換される。次に、この周波数領域信号すなわちスペクトル領域信号は、スペクトル領域信号の対数をとり、次いで、もう一度フーリエ変換を実行することにより圧縮される。この圧縮された信号から、この信号により表される音声内の音素と文脈を決めるために、統計的モデルを用いることができる。
【０００３】
音声認識システムは、与えられた音声信号中の音声単位を決定するために、隠れマルコフモデル（以下、適宜「ＨＭＭ」という。）を多く用いる。音声単位は、単語を単位とする場合もあれば、２語の組み合わせまたは音素およびそれに類する副語を単位とする場合もある。ＨＭＭは、以下のパラメータにより特徴付けられる。
Ｌ・・・システムにおける多数の起こり得る状態を表す。
Ｍ・・・システムに存在するガウス分布（Ｇａｕｓｓｉａｎ）の総数を表す。
Ｎ・・・ある時刻において、はっきり識別できる特徴量の数を表す。これらの特徴量は、音声信号のスペクトル（すなわち、周波数領域）または時間的（時間領域）特徴量である。
Ａ＝｛ａｉｊ｝・・・状態遷移確率分布である。ここで、各ａｉｊは、システムが初期状態として時刻ｔにｉ番目の状態にあるとしたときに、そのシステムが時刻ｔ＋１にｊ番目の状態に遷移する確率を表す。
Ｂ＝｛ｂｊ（ｋ）｝・・・ｊ番目の状態に対する識別特徴量の確率分布を表す。ここで、各ｂｊ（ｋ）は、システムがｊ番目の状態にあるときのｋ番目の特徴量の観測値に対する確率分布を表す。
π＝｛πｉ｝・・・初期の状態分布である。ここで、各成分πｉは、ある初期時刻において、システムがｉ番目の状態にある確率を表す。
【０００４】
隠れマルコフモデルは、音声認識のような実世界での応用例において、重要な３つの基本的な問題を解決することができる。３つの問題とは、（１）システムの観測系列が与えられたとすると、観測系列の確率をどのようにして効率的に計算することができるか、（２）観測系列が与えられたとすると、どの対応する状態系列が観測系列を最も良く表すか、（３）所定の観測系列の確率を最大にするために、モデルパラメータＡ、Ｂ、πのセットをどのようにして調整することができるか、である。
【０００５】
ＨＭＭを音声認識に適用することについては、例えば、１９８９年２月に発行された、ＩＥＥＥのＰｒｏｃｅｅｄｉｎｇｓ，Ｖｏｌ．７７，Ｎｏ．２において、ローレンスラビナー氏による、「Ａ  Ｔｕｔｏｉａｌ  ｏｎ  Ｈｉｄｄｅｎ  Ｍａｒｋｏｖ  Ｍｏｄｅｌｓ  ａｎｄ  Ｓｅｌｅｃｔｅｄ  Ａｐｐｌｉｃａｔｉｏｎｓ  ｉｎ  Ｓｐｅｅｃｈ  Ｒｅｃｏｇｎｉｔｉｏｎ」と題する論文に詳しく説明されており、あらゆる目的で、この論文全体を参考文献として本明細書中に組み入れる。人間の音声は、音素として知られる多数の認識パターンにより特徴付けられる。各音素は、いくつかの部分、例えば、始まり、中間、および終りの部分に分解することができる。始まりの部分は、先行する音素によりしばしば影響され、終りの部分は、後に続く音素により影響されるので、中間の部分が、典型的には最も安定している。音素の異なる部分は、信号を適当な統計的分析により認識することができる周波数領域の特微量により特徴付けられる。この統計的モデルは、しばしば、異なる音素の異なる部分に対応する信号部分を構成する特微量のそれぞれ異なる状態についての確率を予測するために、ガウス確率分布関数をよく使う。ＨＭＭの状態というものは、１以上のガウス分布を含み得る。所与の起こり得る状態についての特定のガウス分布、例えばＫ番目のガウス分布は、Ｎ個の平均値μｋｉおよび分散σｋｉ２のセットにより表すことができる。典型的な音声認識アルゴリズムにおいては、所与の時間窓についてどのガウス分布が最大であるかを決定する。そして、最大のガウス分布から、その時間窓について最も起こりそうな音素を推定する。
【非特許文献１】ローレンスラビナー、「Ａ  Ｔｕｔｏｉａｌ  ｏｎ  Ｈｉｄｄｅｎ  Ｍａｒｋｏｖ  Ｍｏｄｅｌｓ  ａｎｄ  Ｓｅｌｅｃｔｅｄ  Ａｐｐｌｉｃａｔｉｏｎｓ  ｉｎ  Ｓｐｅｅｃｈ  Ｒｅｃｏｇｎｉｔｉｏｎ」、Ｐｒｏｃｅｅｄｉｎｇｓ、ＩＥＥＥ、１９８９年２月、Ｖｏｌ．７７、Ｎｏ．２
【発明の開示】
【発明が解決しようとする課題】
【０００６】
典型的な音声認識ソフトウェアにおいては、各ガウス分布に対するそれぞれの平均と分散は、３２ビットの浮動小数点数により表される。起こり得る異なるガウス分布は多数存在するため、最も起こりそうな状態の決定には、数百から数千のガウス分布に関する計算が必要となる。かなりの数の浮動小数点の演算を、音声認識アルゴリズムの間、各ガウス分布について実行しなければならず、また、対応する多数の３２ビットのパラメータは、音声認識を行うコンピュータまたは他の信号処理装置の利用可能なメモリに対して相当の容量を要求することになる。認識精度を犠牲にしないで、利用可能なメモリに対する要求を低減させるような方法でガウス分布の計算を実行することが望ましい。
【課題を解決するための手段】
【０００７】
本発明のある態様によれば、１つ以上の確率分布関数を使用するデータ処理アルゴリズムにおいて、実行メモリの使用が低減される。各確率分布関数は、１つ以上の圧縮されていない平均値と１つ以上の分散値により特徴付けられる。圧縮されていない平均値および分散値は、αビットの浮動小数点数により表される。ここで、αは１より大きい整数である。確率分布関数は、βビットの整数として表される圧縮された平均値および／または分散値を有する圧縮された確率関数に変換される。ここで、βはαより小さいので、圧縮された平均値および／または分散値は、圧縮されていない平均値および／または分散値よりも占有するメモリ空間が小さい。データを処理するアルゴリズムの部分は、圧縮された平均値と分散値を使って実行することができる。
【０００８】
本発明により開示される事項は、添付した図面とともに以下の詳細な説明を考察することにより容易に理解することができる。
【発明を実施するための最良の形態】
【０００９】
以下の詳細な説明は、説明の便宜上、限定的な詳細事項を多く含んでいるが、以下の詳細な説明に対する多くの変形例および代替例が本発明の請求の範囲内に含まれることは当業者により理解されるところである。したがって、以下に説明する例示的な実施例は、請求された本発明の一般性を何ら失うことなく、また請求された本発明に制限を課すことなく、説明される。
【００１０】
図１は、アルゴリズム１００を示すフロー図である。本図においては、音声認識のような認識アルゴリズムに関する特定のケースについて説明された本発明の実施例が示される。特に１０２において、時間領域の信号は、Ｎ個の異なる識別可能な信号特徴量χ０〜χｎ（ここで、ｎ＝Ｎ−１である）を得るために分析される。このシステムで観測された特徴量は、成分χ０〜χｎを有するベクトルとして表すことができる。これらの成分は、所与の観測された音声信号のスペクトル特徴量、ケプストラム特徴量、または時間的特徴量である。
【００１１】
本発明の実施例を限定しない一例として、成分χ０〜χｎは音声信号のケプストラム係数であってもよい。ケプストラムとは、デシベルスペクトラムを信号と同じようにフーリエ変換（ＦＴ）した結果である。時間領域の音声信号についてのケプストラムとは、時間領域信号についてのフーリエ変換の対数（ラッピングされていない位相状態）をフーリエ変換したものとして文言上は定義される。時間領域信号Ｓ（ｔ）のケプストラムは、ＦＴ（ｌｏｇ（ＦＴ（Ｓ（ｔ）））＋ｊ２πｑ）として、数学的に表すことができる。ここで、ｑは、複素対数関数の角度または虚数部を適切にアンラップ（ｕｎｗｒａｐ）するのに必要とされる整数である。アルゴリズム的に見ると、ケプストラムは、信号→ＦＴ→対数→位相のアンラッピング→ＦＴ→ケプストラムという演算手順により生成される。
【００１２】
ケプストラムには、複素数のケプストラムと実数のケプストラムがある。実数のケプストラムでは実数の数値用に定義された対数関数を使用し、複素数ケプストラムでは複素数の数値用に定義された複素対数関数を使用する。複素数のケプストラムでは、初期スペクトルの大きさと位相に関する情報を保持して、信号の再構成が行えるようにする。実数のケプストラムでは、スペクトラムの大きさに関する情報しか使用しない。一般性を失わない一例として、アルゴリズム１００は実数のケプストラムを用いることができる。
【００１３】
ケプストラムは、異なるスペクトル帯域における変化率に関する情報と見なすことができる。音声認識への応用では、スペクトラムは、通常、メル（Ｍｅｌ）周波数帯域を用いて最初に変換される。その結果は、メル周波数ケプストラム係数（ＭＦＣＣ）と呼ばれる。ヘルツ（秒当りのサイクル）単位の周波数ｆは、ｍ＝１１２７．０１０４８ｌｏｇｅ（１＋ｆ／７００）の式にしたがって無次元ピッチｍに変換される。同様に、メルピッチは、ｆ＝７００（ｅｍ／１１２７．０１０４８−１）の式を用いてヘルツ単位の周波数に変換される。
【００１４】
成分χ０〜χｎのある組み合わせのパターンは、音声の単位（たとえば、単語）や副単位、たとえば単語の音節、音素、その他の副単位に対応する。それぞれの単位または副単位は、このシステムの一つの状態としてみなされる。このシステムのあるガウス分布（ｋ番目のガウス分布）についての確率密度関数ｆｋ（χ０〜χｎ）は、確率密度関数であればどのような形式でもよい。ガウス関数は、例えば次式で表される。
【数１】
2007133411.tif 000003
ここで、
【数２】
2007133411.tif 000004
ｉ＝１〜Ｎ，ｋ＝１〜Ｍ
【００１５】
上式において、ｉは特微量についての指数であり、ｋはガウス分布についての指数である。式（１）において、下付き添字ｋは、ガウス関数についての指数である。音声認識アルゴリズムで使用されるガウス分布には、数百から数十万のガウス分布がある。数量μｋｉは、システムのｋ番目のガウス分布における特微量χｉについての平均値である。数量σｋｉ２は、ｋ番目のガウス分布におけるχｉについての分散である。図１の１０４に示すように、Ｌ個の異なる状態があり、これは、システム中の総数Ｍ個のガウス分布を含んでいる。数量μｋｉは、トレーニングデータのすべての時間窓にわたるｆｋ（χ０〜χｎ）に属するχｉの全測定値についての平均であり、σｋｉ２は、μｋｉを計算するために使われる対応する測定値についての分散である。
【００１６】
通常、各々の数量（χｉ、μｋｉ、σｋｉ２）は、多数ビットαにより特徴付けられる浮動データ形式により表される。αの値としては、６４ビット、１６ビット、または他の適当な整数ビット数を使用してもよいが、ここでは一例としてα＝３２とする。パラメータ｛χｉ，μｋｉ，σｋｉ２、ｉ＝１〜Ｎ，ｋ＝１〜Ｍの場合｝は、プログラムが実行される間、音響モデルにより使われるメモリの大部分を占める。冗長なパラメータδｋは、計算効率向上のためリアルタイムに記憶される。
【００１７】
再び図１を参照し、１０６において実行メモリを節約するために、ガウス分布は圧縮されたかたちに変換される。方法に関する本発明の実施例では、平均μｋｉと分散σｋｉ２をαビットの浮動小数点形式からβビットの固定小数点データ形式
【数３】
2007133411.tif 000005
に圧縮する。ここで、βはαより小さい。同様に、識別できる成分χｉは、αビットの浮動小数点からβビットの整数
【数４】
2007133411.tif 000006
に圧縮される。また、β＜αの場合、以下に示す同じ式を使って、αビットからβビットの整数に変換することもできる。
【００１８】
式（１）で与えられるガウス分布は、圧縮された平均
【数５】
2007133411.tif 000007
と、圧縮された分数
【数６】
2007133411.tif 000008
を用いて、次式のように、圧縮されたガウス分布として書き換えることができる。
【数７】
2007133411.tif 000009
ここで、行列式
【数８】
2007133411.tif 000010
は先に定めたようにαビットの浮動小数点数であり、
【数９】
2007133411.tif 000011
は圧縮された識別できる成分であり、
【数１０】
2007133411.tif 000012
はｋ番目のガウス分布におけるｉ番目の識別できる成分についての圧縮された平均を表すβビットの整数であり、
【数１１】
2007133411.tif 000013
は、ｋ番目のガウス分布におけるｉ番目の識別できる成分についての圧縮された分散を表すβビットの整数である。
【数１２】
2007133411.tif 000014
であり、さもなければφ（χ）はχの固定小数点形式で表される。ここで、Θ＝２β−１である。
特別のパラメータ｛ａ，ｂｉ，ｃｉ｝は、αビットの浮動小数点データ形式である。しかしながら、これらのパラメータは、Ｍ個の圧縮されたガウス確率関数のすべてについて同じである。さらに、数量ａは、一度計算する必要があるにすぎない。
【００１９】
上式において、数量ａは、ユニバーサルスカラと見なされる。数量ｂｉは、Ｍ個の起こり得るガウス分布のすべてにわたって取られるｉ番目の識別できる特微量についてのすべての平均の中心と見なされる。数量ｃｉは、Ｍ個の起こり得るガウス分布のすべてにわたって取られるｉ番目の識別できる特微量についての分散として見なされる。元形（μｋｉ，σｋｉ２）からの｛ａ，ｂｉ，ｃｉ｝の計算は、次式で示される。
【数１３】
2007133411.tif 000015
数量ｄｉは、すべての分散の逆数の平均である。数量λは、１から１００までの間の値をとる整数のグローバルスケーリング因数である。数量λは、認識精度を最適化するために、試行錯誤により経験的に調整される。これは、既知の音声サンプルに対して音声認識システムをテストし、λの異なる値について認識精度を決めることにより行われる。ここで説明するようなパラメータ圧縮を用いることによる音声認識アルゴリズムの一例としての実現例においては、α＝３２、β＝８である場合におけるプログラムで使われた特微量｛χｉ｝について最高の音声認識性能を示したλ値としてλ＝３０という値が経験的に定められた。このようなλの経験的決定法は、例えば、λ値の異なる既知の音声サンプルに対して圧縮データを用いた音声認識のテストを行い、どのようなλ値が最高の認識精度をもたらすかを決定することにより行われる。概して、λ値は、音声認識をモデル化するために選択された特微量およびαとβの値に依存する。
【００２０】
より客観的なλの最適化は、次式を用いて行われる。
【数１４】
2007133411.tif 000016
ここで、ａｒｇ  ｍｉｎは、次式の数量の最小値を生成するλ値である。
【数１５】
2007133411.tif 000017
ここで、∫δχｉは、変数χｉについての積分を示す。
【００２１】
通常、Ｎ＝３９、Ｍ＝１０００のようにＮはＭに対してかなり小さいため、新しいガウスパラメータ
【数１６】
2007133411.tif 000018
の実行メモリは、元のパラメータ
【数１７】
2007133411.tif 000019
に比べて著しく低減される。例えば、α＝３２、β＝８である場合、圧縮されたガウスデータのためのメモリサイズは、圧縮されていないガウスデータにより占められるメモリサイズの約２５％に低減することができる。なお、上述の説明では、平均μｋｉ，分散σｋｉ２、および信号特微量の成分χｉのすべてが圧縮された値に変換されることとしたが、これらのうち１〜２個を圧縮するだけでもメモリサイズをかなりの程度に低減することができる。
【００２２】
一度ガウスデータが圧縮されると、各ガウス分布についての確率は、図１の１０８に示すように式（２）の圧縮されたガウス関数を使って計算することができる。１１０に示されるように、すべての確率が計算された後、最大の確率が決定される。最大の確率を有するガウス分布から、その特定の時間窓について、最も確からしい、状態、単語、音素、文字等を形成することができる。なお、これらは、その状態が発生する前後関係を決定するため、それ以前または以降の時間窓について最も起こりそうな状態の決定に役立つよう、所与の時間窓について最も起こりそうな状態を使用することも可能である。
【００２３】
例：
アメリカ英語に対する音声認識のタスクにおいて、上述のようなデータ圧縮の一態様の場合、α＝３２、β＝８で、Ｎ＝２０、Ｍ＝９６８であると、パラメータ｛χｋ，δｋ，μｋｉ，σｋｉ２｝に対する総データビットサイズは、Ｎ＊３２＋Ｍ＊３２＋２＊Ｍ＊Ｎ＊３２となる。圧縮後、パラメータ
【数１８】
2007133411.tif 000020
と、
【数１９】
2007133411.tif 000021
と、
【数２０】
2007133411.tif 000022
は、βビットの整数として計算された。圧縮後の
【数２１】
2007133411.tif 000023
についてのデータビットサイズは、Ｎ＊β＋Ｍ＊３２＋２＊Ｍ＊Ｎ＊β＋３２＋２＊Ｎ＊３２である。結果が表１に示されている。この例では１２９個の単語が登場し、その文法からは７４５個の異なる文を構成することができる。
【００２４】
【表１】
2007133411.tif 000024
【００２５】
この例において、圧縮後の総データサイズは、圧縮されないデータサイズの約４分の１である。データサイズにおける低減の大部分は、３２ビット浮動から８ビット整数への平均値と分散値の圧縮の結果である。また、この例における圧縮の結果に認識精度の劣化は見られなかった。
【００２６】
本発明の実施例においては、上述のように動作する図１の形式の認識アルゴリズム（例えば、音声認識アルゴリズム）は、図２に示すとおり信号処理装置２００の一部として実現される。システム２００は、プロセッサ２０１、メモリ２０２（例えば、ＲＡＭ，ＤＲＡＭ，ＲＯＭなど）を含む。また、信号処理装置２００は、並列処理を実行させる場合には複数のプロセッサを含む。メモリ２０２は、上述のように構成されるデータとコードを含む。特に、メモリは、信号の特徴量２０４、および各々がコードやデータ、コードとデータの組み合わせを含む確率関数２０６を含む。
【００２７】
また、装置２００は、入力／出力（Ｉ／Ｏ）要素２１１、電源（Ｐ／Ｓ）２１２、クロック（ＣＬＫ）２１３、キャッシュ２１４のような、よく知られたサポート機能２１０を含む。装置２００は、プログラムおよび／またはデータを記憶するために、ディスクドライブ、ＣＤ−ＲＯＭドライブ、テープドライブなどのような大容量記憶デバイス２１５をオプションとして含んでもよい。また、コントローラ２００は、コントローラ２００とユーザとの間の相互作用を容易にするために、表示ユニット２１６とユーザインタフェースユニット２１８をオプションとして含んでいてもよい。表示ユニット２１６は、テキスト、数字、グラフィカル記号または画像を表示する陰極線管（ＣＲＴ）またはフラットパネルスクリーンの形式のものでよい。ユーザインタフェース２１８は、キーボード、マウス、ジョイスティック、ライトペンまたは他のデバイスを含んでいる。また、ユーザインタフェース２１８は、分析しようとする信号を直接捕捉できるようにするマイクロフォン、ビデオカメラまたは他の信号変換装置を含んでいてもよい。システム２００のプロセッサ２０１、メモリ２０２、および他の構成要素は、図２に示すように、システムバス２２０を介して互いに信号（例えば、コード命令とデータ）を交換する。
【００２８】
ここでいう「Ｉ／Ｏ」は、通常、システム２００へまたはシステム２００からデータを転送し、周辺装置へまたは周辺装置からデータを転送する任意のプログラム、動作、または装置である。すべての転送は、ある装置からの出力でもあり、別の装置からの入力でもある。周辺装置にはキーボードおよびマウスのような入力だけの装置、プリンタのような出力だけの装置、および、入力と出力の両方の装置として動作する書き込み可能なＣＤ−ＲＯＭのような装置が含まれる。「周辺装置」は、ＣＤ−ＲＯＭドライブ、ＣＤ−Ｒドライブまたは内蔵モデムまたはフラッシュメモリリーダライタ、ハードディスクドライブなどの他の周辺装置のような内部装置と、マウス、キーボード、プリンタ、モニタ、マイクロフォン、カメラ、外部Ｚｉｐ（商標）ドライブまたはスキャナのような外部装置とを含んでいる。
【００２９】
プロセッサ２０１は、メモリ２０２により記憶され、読み出され、プロセッサモジュール２０１により実行されるプログラム２０３のデータとプログラムコード命令に応答して、プロセッサ２０１は、先に説明したように、信号特微量２０４のデータ圧縮および／または確率関数２０６を含む信号認識を実行する。プログラム２０３のコード部分は、アセンブリ、Ｃ＋＋、ＪＡＶＡ（商標）または多くの他の言語のような異なる多数のプログラミング言語の何れかと同じである。プロセッサモジュール２０１は、プログラムコード２０３のようなプログラムを実行するときには特定目的のコンピュータになる汎用コンピュータを構成する。プログラムコード２０３は、ここではソフトウェアのかたちで実現され、汎用コンピュータで実行されるものとして説明されているが、そのタスク管理方法は、特定用途向け集積回路（ＡＳＩＣ）その他のハードウェア回路といったハードウェア構成を用いても実現可能であることは当業者に理解されるところである。また、本実施例がソフトウェア、ハードウェアを全体的または部分的に、または両者の組み合わせで実現できることもまた理解されるところである。特に、ある実現例では、プログラムコード２０３は、図１のアルゴリズム１００と同様な特微量を有する方法を実行するプロセッサにより読み取り可能な一組の命令を含んでいることがある。
【００３０】
本実施例では、音声認識のような複雑な認識アルゴリズムをより速く実行することができる。光学的な文字認識を含む他の形式の認識アルゴリズムにも本実施例が容易に応用できることは当業者に理解されるところである。また、この技術は、ガウス関数以外の確率関数を使う隠れマルコフモデルにも拡張できる。さらに、３２ビット浮動小数点から８ビット整数への圧縮について説明したが、本明細書で説明した技術は、例えば６４ビットから１６ビットへの圧縮など、βがαより小さいような他の任意の適当な圧縮に対しても広く応用できる。８ビット未満への圧縮も本発明の実施例の範囲内にある。ただし一般に、αには任意の値が与えられるのに対して、βにはそのデータ圧縮が認識精度に許容できない程度の劣化をもたらすという現実的な低い限界がある。
【００３１】
以上、本発明の好適な実施例を説明したが、種々の代替例、変形例、および均等例を使用することはもちろんである。したがって、本発明の特許請求の範囲は、以上の説明にしたがって定められるべきではなく、そのすべての均等範囲に沿って特許請求の範囲により定められるべきである。この明細書で説明した特微はいずれも、それが好適であるか否かにかかわらず、本明細書で説明した他の特微のいずれと組み合わされてもよい。
【図面の簡単な説明】
【００３２】
【図１】本発明の実施例による認識アルゴリズムを示すフロー図である。
【図２】本発明を実現する構成例を示す図である。
【符号の説明】
【００３３】
１００  認識アルゴリズム、  １０２  観測された信号の特徴量、  ２００  信号処理装置、  ２０１  プロセッサ、  ２０２  メモリ、  ２０３  プログラム、  ２０４  信号特微量、  ２０６  確率関数、  ２１０  サポート機能、  ２１４  キャッシュ、  ２１５  大容量記憶デバイス、  ２１６  表示ユニット、  ２１８  ユーザインタフェース。
【図１】
2007133411.tif 000076
【図２】
2007133411.tif 000077