JPH10116092A - 発音プレフィックスツリーのエンコード方法及びシステム - Google Patents

発音プレフィックスツリーのエンコード方法及びシステム

Info

Publication number
JPH10116092A
JPH10116092A JP9168914A JP16891497A JPH10116092A JP H10116092 A JPH10116092 A JP H10116092A JP 9168914 A JP9168914 A JP 9168914A JP 16891497 A JP16891497 A JP 16891497A JP H10116092 A JPH10116092 A JP H10116092A
Authority
JP
Japan
Prior art keywords
node
pronunciation
prefix tree
probability
word
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.)
Granted
Application number
JP9168914A
Other languages
English (en)
Other versions
JP3601751B2 (ja
Inventor
Fileno A Alleva
エイ アレヴァ フィレノ
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.)
Microsoft Corp
Original Assignee
Microsoft 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 Microsoft Corp filed Critical Microsoft Corp
Publication of JPH10116092A publication Critical patent/JPH10116092A/ja
Application granted granted Critical
Publication of JP3601751B2 publication Critical patent/JP3601751B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/18Speech classification or search using natural language modelling
    • G10L15/183Speech classification or search using natural language modelling using context dependencies, e.g. language models
    • G10L15/187Phonemic context, e.g. pronunciation rules, phonotactical constraints or phoneme n-grams
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • G06F40/216Parsing using statistical methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities

Abstract

(57)【要約】 (修正有) 【課題】 発音プレフィックスツリーを直線的にエンコ
ードする。 【解決手段】 発音プレフィックスツリーは、各非ルー
ト及び非リーフノードが音素を表すノードを有し、各リ
ーフノードは、ルートノードからリーフノードへの経路
で非リーフノードによる音素でワードを表し、そのワー
ドに関連した確率を有する。コンピュータシステムは、
各ワードを構成する音素の指示を含むツリーノード辞書
を形成し、子ノードの子孫リーフノードの最も高い確率
で各非リーフノードの子ノードを順序付けする。各非リ
ーフノードに対し、その確率をその子ノードの確率にセ
ットすると共に、各ノードのファクタを、ノードの確率
をその親ノードの確率で除算したものにセットする。コ
ンピュータシステムは、発音プレフィックスツリーの各
リーフノードに対してエンコードされた発音エントリー
を発生し、リーフノードのワードを指示し、1.0以外
のファクタの最も近い祖先のファクタを含む。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、コンピュータスピ
ーチ認識のためのコンピュータシステムに係り、より詳
細には、発音のプレフィックスツリーをコンパクトにエ
ンコードするための方法及びシステムに係る。
【0002】
【従来の技術】コンピュータシステムにより人間のスピ
ーチを迅速且つ正確に認識することはコンピュータシス
テムの開発者が長年追求している目標である。このよう
なコンピュータスピーチ認識(CSR)システムから得
られる利益は絶大である。例えば、文書をコンピュータ
システムに打ち込むのではなく、人間は文書のワードを
単に話すだけでよく、CSRシステムがワードを認識
し、そしてワードがタイプされたかのように各ワードの
文字を記憶する。人間は一般にタイプするより速く話す
ことができるので、効率が改善される。又、人間は、も
はやタイプの仕方を学習する必要がなくなる。又、コン
ピュータを使用できる多くの用途では、人間の手がタイ
プ以外の作業で占有されるために、その使用が現在非実
際的となっている。
【0003】スピーチを処理するために、典型的なCS
Rシステムは、音素と称するスピーチの基本単位を定義
する。各音素は異なる音に対応する。例えば、ワード
「cotton」は、通常、4つの音素「k」、「a
w」、「t」及び「en」で話される。CSRシステム
は、音声辞書を使用して、各ワードの音素を辞書に記憶
する。図1は、5ワードの語彙サンプルに対する音声辞
書を示している。この音声辞書は、語彙の各ワードを、
そのワードを構成する音素と共に含む。例えば、ワード
「cotton」の辞書入力は、「cotton k
aw t en」である。CSRシステムは、スピーチ
の一部分を受け取ると、どの音素が話されたか識別す
る。音素が識別されると、CSRシステムは、辞書を走
査して、どのワードがそれらの音素を構成するか決定す
ることができる。CSRシステムが各音素を正しく識別
できる場合には、スピーチの認識が比較的単純な作業と
なる。しかしながら、音素の正しい識別は、困難な作業
であると分かっている。
【0004】音素認識において遭遇する難題は、人間の
スピーチパターンがほとんど無限に変化することにより
生じる。この変化は、話し手のアクセント、話す速度及
び調子、話し手の現在の健康状態(例えば、風邪をひい
た)、話し手の年齢及び性別等により生じる。従って、
CSRシステムは、スピーチの一部分を処理するとき
に、各音素に対し、スピーチのその部分がその音素に対
応する見込みを示す確率を指定する。例えば、「wer
e」又は「wear」のワードが話される場合には、C
SRシステムは、スピーチが2つの部分を構成すると考
える。第1の部分に対して、CSRシステムは、音素
「w」に0.9の確率を指定し、音素「axr」に0.
1の確率を指定し、そして他の全ての音素に0の確率を
指定する。第2の部分に対して、CSRシステムは、音
素「er」に0.6の確率を指定し、音素「axr」に
0.3の確率を指定し、音素「w」に0.1の確率を指
定し、そして他の全ての音素に0の確率を指定する。次
いで、CSRシステムは、ワードを話されたワードと最
も厳密に一致する最も高い確率で一連の音素を認識する
ことができる。この例では、話されたワードが「wer
e」である確率が0.54(即ち0.9x0.6)であ
り、そして話されたワードが「wear」である確率が
0.36(即ち0.9x0.4)である。従って、CS
Rシステムは、ワードを「were」と認識する。
【0005】スピーチパターンのこれらの変化を更に加
味するために、CSRシステムは、話されたワードの識
別を助けるために、典型的なスピーチパターンから累積
される種々の確率を使用する。特に、CSRシステム
は、特定のワードが日常のスピーチで話される確率を使
用する。図1の音声辞書は、語彙のワードに対する例示
的な確率を示している。これらの確率は、前後関係とは
独立したもので、即ちそのワードの前後に話されるワー
ドに関わりなくワードが話される確率を表す。例えば、
この例示的な語彙においては、ワード「we」は、0.
3の確率を有し、そしてワード「cotton」は、
0.1の確率を有する。これらの確率は、ワード「w
e」が典型的にワード「cotton」よりも3倍は頻
繁に話されることを示す。前後関係とは独立した確率
は、単一のワードに基づくので、それらをユニグラム確
率と称する。上記例を続けると、前後関係とは独立した
確率も考慮する場合は、話されたワードが「were」
である確率は、0.081であり、そして話されたワー
ドが「wear」である確率は、0.09である。従っ
て、前後関係とは独立した確率が考慮された場合には、
CRSシステムは、ワードを「were」ではなく、
「wear」と認識する。
【0006】認識を更に改善するために、CSRシステ
ムは、前後関係に従属する確率も用いている。前後関係
に従属する確率は、各ワードが一連の他のワードに続く
確率である。例えば、ワード「to be or no
t to」の後にワード「be」が続く確率は、極めて
高い。しかしながら、記憶する必要のある確率の数はシ
ーケンスの長さと共に指数関数的に増加する。特に、l
個のワードの全ての考えられるシーケンスを表すために
記憶する必要のある確率の数は、辞書におけるワードの
数をnとすれば、nのl乗となる。通常の辞書は、6
0,000語を含むことができるので、前後関係に従属
する確率を表すには膨大な量の記憶が必要になる。従っ
て、CSRシステムは、一般に、確率を記憶するシーケ
ンスの長さを2に制限している(即ち、l=2)。例え
ば、CSRシステムは、ワード「be」がワード「t
o」に続く確率と、ワード「or」がワード「be」に
続く確率を記憶するが、ワード「or」がワード「to
be」に続く確率は記憶しない。図2は、長さ2の例
示的な語彙のシーケンスに対する前後関係に従属する確
率を示す。例えば、ワード「wear」の後にワード
「cotton」が続く確率は、0.9であり、そして
ワード「wear」の後にワード「we」が続く確率
は、0.1である。これらの前後関係に従属する確率
は、2つのワードのシーケンスに基づいているので、バ
イグラム確率と称する。上記例を続けると、ワード「w
e」が次に話されそして前後関係に従属する確率を考慮
する場合に、最初に話されたワードが「were」であ
る確率は、0.0405であるが、最初に話されたワー
ドが「wear」である確率は、0.009である。従
って、CRSシステムは、最初に話されたワードをワー
ド「were」として認識する。
【0007】
【発明が解決しようとする課題】大きな語彙システムに
おいてスピーチを認識するには膨大な量の計算が必要と
なるので、システム語彙のワードの始めに見られる二重
の発音プレフィックスとの一致に関連した冗長な計算を
排除するために、発音プレフィックスツリーに基づくデ
ータ編成が使用される。
【0008】図3は、例示的な音声辞書のプレフィック
スツリーデータ構造体を示す。このプレフィックスツリ
ーデータ構造体は、音声辞書と同じ情報を、スペースを
節約し且つ容易にサーチできるフォーマットで含んでい
る。発音プレフィックスツリー(PPT)と称するこの
プレフィックスツリーデータ構造体は、共通のプレフィ
ックスを共用するワードに対する冗長な音素の記憶を排
除することによりスペースを節約する。例えば、ワード
「caught」及び「cotton」の発音は、ノー
ド201ないし206により表される。最初の3つの音
素「k」、「aw」及び「t」は、両方のワードに共用
されるので、PPTは、これら音素の各々に対し1つの
ノードしか含まない。CSRシステムは、ルートノード
から、話されたワードを表すリーフノードへ、認識され
た音素の経路をたどることによりPPTを迅速にサーチ
することができる。例えば、音素「k aw t e
n」が受け取られた場合には、CSRシステムは、ルー
トノード200でスタートして、ワード「cotto
n」を表すリーフノード206で終わるプレフィックス
ツリーを進むことになる。各リーフノードは、辞書のワ
ードを表し、そのワードのユニグラム確率を含んでい
る。例えば、リーフノード206は、ワード「cott
on」に対するユニグラム確率である0.1の確率を含
む。PPTの各ノードは、ルートからノードへの分岐の
数を表すプレフィックスツリー内の深さにある。例え
ば、ノード206の深さは5である。図3のPPTは、
ユニグラム確率を含むので、ユニグラムPPTとして知
られている。
【0009】図4は、ワード「were」に続く辞書の
ワードに対するバイグラム確率を表すバイグラムPPT
である。各リーフノードは、ワード「were」に続く
ことのできるワードに対応し、このようなワードがワー
ド「were」に続く確率を含む。従って、全てのバイ
グラム確率を表すために、辞書の各ワードは、そのワー
ドに続くワードの対応確率を含むバイグラムPPTを有
する。このようなバイグラムPPTの表示は、大量の記
憶を必要とする。例えば、典型的な辞書は、バイグラム
PPTで表された5.02百万のバイグラム確率を有
し、全部で18.2百万のノードをもつ。各ノードが4
バイトのメモリを使用すると仮定すれば、全てのバイグ
ラム確率を記憶するのに72.8百万のバイトが必要に
なる。このような大量のデータは、このような情報を従
来のメモリ装置に記憶するのを不可能にするだけではな
く、確率を迅速に探索するのも不可能にする。
【0010】
【課題を解決するための手段】本発明は、バイグラム発
音プレフィックスツリーを表すのに必要な記憶量を著し
く低減しそしてスピーチ認識中に子ノードを迅速に決定
できるようにバイグラム発音プレフィックスツリーを直
線的にエンコードする方法及びシステムを提供する。コ
ンピュータシステムは、1つのツリーノード辞書を伴う
各バイグラム発音プレフィックスツリーに対し、バイグ
ラム発音プレフィックスツリーを直線的エンコードで表
す。コンピュータシステムは、語彙の各ワードを構成す
る音素のリストを含むツリーノード辞書を発生する。次
いで、コンピュータシステムは、各バイグラム発音プレ
フィックスツリーに対して次の動作を繰り返す。コンピ
ュータシステムは、各非リーフノードの確率を、その子
ノードの確率に基づく確率にセットする(即ち、スミア
リング(smearing))。次いで、コンピュータシステム
は、各ノードのファクタを、そのノードの確率をそのノ
ードの親ノードの確率で除算したものにセットする(即
ち、ファクトリング(factoring) )。最後に、コンピュ
ータシステムは、バイグラム発音プレフィックスツリー
の各リーフノードに対してエンコードされた発音エント
リーを形成する。このエンコードされた発音エントリー
は、リーフノードで表されたワードを指示し、そして所
定のファクタ以外のファクタをもつ最も近い祖先のファ
クタを含む。
【0011】次いで、この直線的にエンコードされたバ
イグラム発音プレフィックスツリーをスピーチ認識中に
使用して、バイグラムコンテクストをインスタンス生成
することができる。バイグラムコンテクストは、対応す
る音素が話された見込みを示す各ノードの確率をもつバ
イグラム発音プレフィックスツリーのインスタンスであ
る。各音素が話されるたびに、コンピュータシステム
は、直線的エンコードを使用して、バイグラムコンテク
ストに追加されるべき次の子ノードを識別する。次い
で、コンピュータシステムは、ツリーノード辞書を使用
して、バイグラムコンテクストに追加されるべき子ノー
ドを迅速に識別する。
【0012】バイグラム発音プレフィックスツリーをエ
ンコードするのに加えて、コンピュータシステムは、ト
リグラム及び一般的には任意の長さのnグラムに対して
発音ツリーをエンコードすることができる。各発音プレ
フィックスツリーは、nグラムの長さに関わりなく、同
じ形式の情報を含み、即ちワード及び確率に対応するリ
ーフノードを含む。スピーチを認識すると、nグラムコ
ンテクストは、nグラムのワード数から1を引いたもの
にセットされる。例えば、トリグラムコンテクストは、
直線的にエンコードされたトリグラム発音プレフィック
スツリーに関連した2つのワードにセットされる。
【0013】
【発明の実施の形態】好ましい実施形態において、本発
明は、バイグラム発音プレフィックスツリーを直線的に
エンコードしそしてこの直線的エンコードの発音プレフ
ィックスツリーを用いてスピーチを認識するための方法
及びシステムを提供する。バイグラム発音プレフィック
スツリーは、認識中に祖先ノードのみに基づいて「スミ
アリング」された確率を決定できるようにエンコードさ
れる。スミアリングされた確率とは、そのノードの子孫
ノードの確率に基づいて各非リーフノードに記憶された
確率を意味する。スミアリングされた確率を使用する
と、ワードの識別が分かる前に、認識中に確率の計算を
行うことができる。
【0014】本発明のシステムは、スミアリングされた
確率をもつバイグラム発音プレフィックスツリーを、各
バイグラム発音プレフィックスに対し1つのツリーノー
ド辞書と直線的エンコードとの組み合わせとしてエンコ
ードする。ツリーノード辞書は、語彙の各ワードを構成
する音素のリストを含む。各バイグラム発音プレフィッ
クスツリーの直線的エンコードは、各リーフノードのエ
ントリーを含む。このエントリーは、1.0以外のファ
クタをもつ最も近い祖先ノードのファクタと共にリーフ
ノードのワードを識別する。バイグラム発音プレフィッ
クスツリーの各ノードは、そのノードのスミアリングさ
れた確率を親ノードの確率で除算したものに等しいファ
クタが指定される。このファクタは、兄弟ノードをもた
ない各ノードのファクタが1.0であるという特徴を有
する。バイグラム発音プレフィックスツリーにおける大
半のノードは、通常、兄弟をもたないので、1.0のフ
ァクタをエンコードから除去することができる。
【0015】直線的にエンコードされたバイグラム発音
プレフィックスツリーは、スピーチ認識中に、バイグラ
ムコンテクストをインスタンス生成するのに使用でき
る。バイグラムコンテクストは、対応する音素が話され
た見込みを示す各ノードの確率をもつバイグラム発音プ
レフィックスツリーのインスタンスである。各音素が話
されたときには、コンピュータシステムは、直線的エン
コードを使用して、バイグラムコンテクストに追加され
るべき次の子ノードを識別する。次いで、コンピュータ
システムは、ツリーノード辞書を使用して、バイグラム
コンテクストに追加されるべき子ノードを速やかに識別
する。
【0016】図3は、本発明の要素を示すコンピュータ
システムのブロック図である。このコンピュータシステ
ムは、中央処理ユニット、メモリ及び種々の記憶装置を
備えた標準的なコンピュータである。このコンピュータ
システムは、バイグラムPPT301、直線的PPTエ
ンコーダ302、直線的にエンコードされたバイグラム
PPT303、音素認識装置304、コンピュータスピ
ーチ認識装置305、及びユニグラムPPT306を備
えている。直線的PPTエンコーダ及びコンピュータス
ピーチ認識装置を実施するコンピュータプログラムは、
通常は、コンピュータメモリ又はディスクドライブのよ
うなコンピュータ読み取り可能な媒体に記憶される。直
線的PPTエンコーダ302は、バイグラムPPT30
1が直線的にエンコードされたバイグラムPPT303
を発生できるようにする。直線的にエンコードされたバ
イグラムPPTは、バイグラムPPTのコンパクトエン
コードである。スピーチ認識中に、CSRシステム30
5は、音素認識装置304から一連の音素を受け取り、
そして直線的にエンコードされたバイグラムPPT30
3及びユニグラムPPT306を用いて、一連の受け取
った音素をワードとして認識する。
【0017】図6は、例示的な辞書に対する拡張ユニグ
ラムPPTを示す。拡張ユニグラムPPTは、各ノード
のファクタを含むように拡張されると共にそのノードが
ユニグラム確率により順序付けされたユニグラムPPT
である。各親ノードの子ノードは、その子ノードの子孫
リーフノードの最大の確率に基づいて左から右へと順序
付けされる。例えば、ノード〔1〕の子孫リーフノード
の最大の確率は0.3であり、ノード〔2〕の子孫リー
フノードの最大の確率は0.2であるから、ノード
〔1〕は、ノード〔2〕の左にある。同様に、ノード
〔3〕、ノード〔4〕及びノード〔5〕の子孫リーフノ
ードの最大確率は、0.3、0.25及び0.15であ
るから、ノード〔3〕は最も左にあり、そしてノード
〔5〕は最も右にある。ユニグラムPPTの各ノードに
は、順次ノード識別が指定される。これらのノード識別
は、ユニグラムPPTの巾優先の左−右の横断において
ノードが訪問されるときに指定される。従って、同じ深
さにあるノードは、順次の独特の識別子を有する。例え
ば、深さ3のノードは、識別子〔3〕、〔4〕、〔5〕
及び〔6〕を含む。
【0018】拡張ユニグラムPPTのファクタは、式
(1)及び(2)に基づく確率から形成される。先ず、
各非リーフノードの確率が、リーフノードの確率に基づ
いてセットされる。各非リーフノードの確率は、次の式
で発生される。 P’(n)= max (P(x)) (1) {x |x ε child(n) } 即ち、ユニグラムPPTの各非リーフノードの確率は、
その子ノードの確率の最大値である。例えば、ノード
〔1〕は、0.3の確率を有し、これは、その子ノード
〔3〕、〔4〕及び〔5〕の確率である0.3、0.2
5及び0.15のうちの最大確率である。各ノードのフ
ァクタは、次の式により発生される。 f(n)=P’(n)/P’(parent(n) ) (2) 即ち、ノードのファクタは、そのノードの確率をその親
ノードの確率で除算したものである。例えば、ノード
〔5〕の確率は、0.15であり、そしてその親ノード
〔1〕の確率は、0.3であり、従って、ノード〔5〕
のファクタは、0.15を0.3で除算した0.5であ
る。拡張ユニグラムPPTは、ノードのファクタのみを
記憶する。というのは、ファクタから確率を発生できる
からである。ノードに関連した確率は、その親ノードの
確率にノードのファクタを乗算したものである。例え
ば、ノード〔1〕の確率は0.3であり、そして子ノー
ド〔5〕のファクタは0.5である。従って、ノード
〔5〕の確率は、0.3に0.5を乗算した0.15と
なる。確率ではなく、このようなファクタを使用するの
は、大半のファクタが一般的に1.0であり、コンパク
トな表示に適しているからである。即ち、除去されるい
かなるファクタも、1.0であると仮定することができ
る。
【0019】拡張ユニグラムPPTが発生されると、直
線的PPTエンコーダは、ツリーノード辞書(TND)
を発生する。図7は、図6の拡張ユニグラムPPTに対
するツリーノード辞書を示している。TNDは、辞書内
の各ワードに対するエントリーを、そのワードを認識す
るときに拡張ユニグラムPPTに訪問される各ノードの
ノード識別子と共に含んでいる。例えば、ワード「co
tton」を認識するために、ノード
〔0〕、〔2〕、
〔6〕、〔10〕、〔12〕及び〔13〕が横断され
る。横断は常にノード
〔0〕でスタートするので、その
ノード識別子をTNDから除去することができる。TN
D及び直線的にエンコードされたバイグラムPPTは、
バイグラムPPTのエンコードを表す。
【0020】又、直線的PPTエンコーダは、各バイグ
ラムPPTをユニグラムPPTの拡張と同様に拡張す
る。特に、各非リーフノードに対してファクタが発生さ
れる。図8は、ワードバイグラムコンテクスト「wer
e」に対する拡張バイグラムPPTを表し、そして図9
は、ワードバイグラムコンテクスト「wear」に対す
る拡張バイグラムPPTを表している。直線的PPTエ
ンコーダは、拡張バイグラムPPT601及び701に
対し各々直線的エンコード602及び702を発生す
る。直線的にエンコードされたバイグラムPPTは、各
リーフノードごとにエントリーを含む。直線的にエンコ
ードされたバイグラムPPT及びTNDからバイグラム
PPTを再生することができる。従って、直線的にエン
コードされたバイグラムPPTは、バイグラムPPTの
コンパクトエンコードを表す。直線的にエンコードされ
たバイグラムPPT(LEBPPT)の各エントリー
は、拡張バイグラムPPT内のワード、ファクタ及び深
さを識別する。例えば、LEBPPT602の第2エン
トリーは、ワード「caught」、ファクタ0.8及
び深さ1を識別する。この第2エントリーは、ワード
「caught」のリーフノードが0.8の確率を有す
ることを示す。即ち、ノード〔11〕の確率は、LEB
PPT602の第1エントリーのファクタ0.5の0.
8倍である。更に、この第2エントリーは、0.8のフ
ァクタが拡張バイグラムPPT内の深さ1のノードに記
憶されることを示す。
【0021】直線的PPTエンコーダは、拡張バイグラ
ムPPTの左−右の深さ優先横断を実行することにより
LEBPPTを発生する。訪問した各リーフノードごと
に、直線的PPTエンコーダは、リーフノード内のワー
ド並びに1.0以外のファクタ有する最後に訪問したノ
ードのファクタ及び深さを識別するエントリーをLEB
PPTに加える。例えば、図8のリーフノード〔7〕が
訪問されたときには、1.0以外のファクタをもつ最後
に訪問したノードがノード
〔0〕である。それ故、LE
BPPTの最初のエントリーは、「we 0.5 0」
であり、これは0.5のファクタと0の深さを示す。第
2のエントリーは、ノード〔11〕に対応する。ノード
〔11〕を訪問する前に最後に訪問した1.0以外のフ
ァクタをもつノードはノード〔2〕であり、これはファ
クタ0.8及び深さ1を有する。従って、LEBPPT
の第2のエントリーは、「caught 0.8 1」
である。最後に、ノード〔13〕が訪問されたときに
は、1.0以外の確率をもつ最後に訪問したノードはノ
ード〔12〕であり、これは、ファクタ0.25及び深
さ4を有する。従って、LEBPPTの第3エントリー
は、「cotton0.25 4」である。
【0022】バイグラムPPTは、ツリーノード辞書
(TND)を用いてLEBPPTをデコードすることに
よりLEBPPTから再生することができる。LEBP
PTの各エントリーごとに、デコーダは、LEBPPT
エントリーに記憶されたワードに対してTNDからエン
トリーを検索する。(好ましいCSRシステムは、認識
を開始する前にこのようなデコードを実際に行わず、デ
コードは認識と一体化される。)TNDエントリーは、
そのワードのバイグラムPPTの一部分であるノードを
識別する。即ち、エントリーは、そのワードに対するル
ートノードからリーフノードへ至る経路上でバイグラム
PPTを識別する。デコーダは、各識別されたノードに
対しバイグラムPPTにノードを追加する。例えば、デ
コーダは、LEBPPT601の第1エントリーに遭遇
すると、バイグラムPPTにルートを追加し、そしてワ
ード「we」に対してTNDエントリーにおいて識別さ
れた各ノードごとにノードを追加する。次いで、デコー
ダは、LEBPPTエントリーに記憶された深さにある
ノードを除いて、各追加ノードのファクタを1.0にセ
ットする。デコーダは、そのノードのファクタをLEB
PPTエントリーのファクタにセットする。同様に、デ
コーダは、第2のエントリーに遭遇すると、その第2エ
ントリーに記憶されたワードに対しTNDからエントリ
ーを検索する。デコーダは、各識別されたノードに対し
てバイグラムPPTにノードを追加する(まだ追加され
ていない場合)。デコーダは、ワード「caught」
に対するノードの識別子をTNDから検索し、そして各
識別されたノードに対しノードを追加する。次いで、デ
コーダは、深さ1に形成されたノードのファクタを0.
8にセットし、そして他の全てのファクタを1.0にセ
ットする。最後に、デコーダは、第3のエントリーに遭
遇すると、ワード「cotton」に対してTNDエン
トリーを検索し、そしてまだ追加されていない各識別さ
れたノード、即ちノード〔12〕及びノード〔13〕に
対してノードを追加する。次いで、デコーダは、LEB
PPTエントリーの深さにあるノードのファクタをLE
BPPTエントリーのファクタ0.25にセットし、そ
して他の全てのファクタを1.0にセットする。この点
において発生されるPPTは、拡張バイグラムPPTで
ある。次いで、デコーダは、拡張バイグラムPPTを横
断して、リーフノードに対する確率を発生する。バイグ
ラムPPTをコンパクトに表すために、直線的にエンコ
ードされたバイグラムツリーのカラムの深さが不要であ
ることが当業者に明らかであろう。しかしながら、以下
で明らかなように、深さを含ませると、スピーチ認識中
にバイグラムコンテクストを迅速に形成することができ
る。
【0023】図10は、エンコードバイグラムPPTル
ーチンのフローチャートである。エンコードバイグラム
PPTルーチンは、直線的PPTエンコーダにより実行
される。このルーチンは、ルーチンに通された拡張バイ
グラムPPTの深さ優先の左−右横断を実行しそして直
線的にエンコードされたバイグラムPPTを形成する反
復ルーチンである。このルーチンは、最初に呼び出され
ると、拡張バイグラムPPTのルートノードを通す。ル
ーチンがそれ自身を繰り返し呼び出すたびに、拡張バイ
グラムPPTのサブツリーを通す。ステップ801にお
いて、通されたサブツリーのルートノードがリーフノー
ドである場合には、ルーチンはステップ805に続く
が、さもなくば、ルーチンはステップ802に続く。ス
テップ802ないし804において、ルーチンはループ
して、通されたサブツリーのルートノードの各子ノード
を選択し、そしてこのルーチンを繰り返し呼び出して、
選択された子ノードをサブツリーのルートノードとして
通す。ステップ802において、ルーチンは、第1の子
ノードで始めて、通されたサブツリーの次の子ノードを
選択する。ステップ803において、通されたサブツリ
ーのルートノードの全ての子ノードが既に選択された場
合には、ルーチンは復帰するが、さもなくば、ルーチン
は、このルーチンを繰り返し呼び出して、選択されたノ
ードをサブツリーのルートノードとして通し、そしてス
テップ802へループして、次の子ノードを選択する。
ステップ805において、ルーチンは、ルートノードの
ワードに対しLEBPPTにエントリーを追加すると共
に、1.0のファクタをもたない最後の訪問したノード
の深さ及びファクタを追加し、そして復帰する。このル
ーチンは、バイグラムPPTをエンコードするものとし
て説明しないが、対応するnグラムの長さに関わりな
く、この同じルーチンを変更せずに使用して、PPTを
エンコードすることができる。
【0024】図11は、デコードLEBPPTルーチン
のフローチャートである。デコードLEBPPTルーチ
ンには、LEBPPT及びTNDが通され、拡張バイグ
ラムPPTを再生する。上記のように、好ましいCSR
システムは、拡張バイグラムPPTを再生する必要はな
い。むしろ、CSRシステムは、以下に述べるように必
要な情報をLEBPPTから直接検索する。ステップ9
01ないし909において、ルーチンはループして、各
LEBPPTエントリーを選択し、そしてそのエントリ
ーにより表された拡張バイグラムPPTにノードを追加
する。ステップ901において、ルーチンは、最初から
始めて次のLEBPPTを選択する。ステップ902に
おいて、全てのLEBPPTエントリーが既に選択され
た場合には、ルーチンは復帰し、さもなくば、ルーチン
はステップ903に続く。ステップ903において、ル
ーチンは、選択されたLEBPPTエントリーのワード
に対応するTNDエントリーを選択する。ステップ90
4ないし909において、ルーチンはループして、選択
されたTNDエントリーで識別された各ノードを処理
し、そしてまだ追加されていない場合にはそれを拡張バ
イグラムPPTに追加する。ステップ904において、
ルーチンは、選択されたLEBPPTエントリーの深さ
で始めて次の深さを選択する。選択された深さが、選択
されたTNDエントリーの最大深さより大きい場合に
は、ルーチンはステップ901へループして、次のLE
BPPTエントリーを選択するが、さもなくば、ルーチ
ンはステップ906に続く。ステップ906では、ルー
チンは、選択されたTNDエントリーで識別されたノー
ドに対応するノードを拡張バイグラムPPTに追加す
る。ステップ907において、選択された深さが、選択
されたLEBPPTエントリーの深さに等しい場合に
は、ルーチンはステップ908に続き、さもなくば、ル
ーチンはステップ909に続く。ステップ908におい
ては、ルーチンは、追加されたノードのファクタを、選
択されたLEBPPTエントリーのファクタにセットす
る。ステップ909において、ルーチンは、追加された
ノードのファクタを1.0にセットする。次いで、ルー
チンは、ステップ904にループし、次の深さを選択す
る。
【0025】図12は、LEBPPTを使用するCSR
システムのフローチャートである。CSRシステムは、
一連の音素を検索し、そしてそれらの音素に最もマッチ
する一連のワードを選択する。認識システムは、各音素
が処理されるときに一連の音素が表す一連のワードに関
して新たな仮定を繰り返し発生する。例えば、CSRシ
ステムは、次の仮定を確立する。 H1(t)=「we wear」 P(H1(t))=0.6 H2(t)=「we were」 P(H2(t))=0.4 CSRシステムは、TNDに関連してユニグラム及びバ
イグラムPPTを参照することによりこれらの仮定を拡
張する。
【0026】図13ないし15は、CSRシステムによ
り発生されたPPTを示す。CSRシステムは、最良の
仮定(即ち、最も高い確率をもつ仮定)に対してユニグ
ラムPPTを発生し、そして各々の仮定(バイグラムコ
ンテクストと称する)に対してバイグラムPPTを発生
する。ユニグラムPPTのノードは、最良の仮定の確率
に、そのノードに対するユニグラム確率を乗算したもの
を含む。例えば、図13のノード〔5〕の確率は、図6
のノード〔5〕からのユニグラム確率0.15に最良の
仮定の確率0.6を乗算した0.09である。バイグラ
ムPPTのノードは、対応する仮定の確率にそのノード
の確率を乗算したものを含む。例えば、図14のノード
〔10〕の確率は、図8のノード〔10〕からのバイグ
ラム確率0.4に、対応する仮定の確率0.6を乗算し
た0.24である。CSRシステムは、各音素が受け取
られるときに、ユニグラムPPT及びバイグラムPPT
を並列に構成する。バイグラムPPTを発生するため
に、CSRシステムは、LEBPPT及びTNDを使用
して、どんなノードを追加すべきか及びそれらノードに
対する確率を識別する。
【0027】最後の音素が処理された後に、CSRシス
テムは、音素に最良にマッチする一連のワードとして最
良の仮定を選択する。最後の音素がまだ処理されない場
合には、CSRシステムは、最初から始めて、次の未処
理の仮定を次の仮定として選択する。
【0028】図12を参照すれば、ステップ1001に
おいて、システムは、次の音素を検索する。ステップ1
002において、全ての音素が既に処理された場合に
は、システムは、ステップ1010に続き、さもなく
ば、ステップ1003に続く。ステップ1003におい
て、システムは、検索された音素に対し新たな仮定を確
立する。ステップ1004において、新たな仮定が確立
されない場合には、システムは、ステップ1005に続
き、さもなくば、システムは、ステップ1007にスキ
ップして、バイグラムPPTを更新する。ステップ10
05−1009において、システムは、最良の仮定に対
してユニグラムPPTをそして各仮定に対してバイグラ
ムPPTをインスタンス生成する。次いで、システム
は、仮定の確率とユニグラム及びバイグラムの確率とに
基づいて、PPTのノードの確率をセットし、システム
はループして、仮定の状態を反映するようにPPTを更
新する。ステップ1005において、システムは、初期
化ワード間バイグラムPPTルーチンを呼び出し、これ
は1つのワードから次のワードへの移行に対してバイグ
ラムPPTを初期化する。ステップ1006において、
システムは、初期化ワード間ユニグラムPPTルーチン
を呼び出し、これは1つのワードから次のワードへの移
行に対してユニグラムPPTを初期化する。ステップ1
007ないし1009において、ルーチンはループし、
バイグラムPPTのユニグラムを音素に基づいて更新す
る。ステップ1007において、システムは、更新バイ
グラムPPTを呼び出し、音素に基づいてバイグラムP
PTを更新する。ステップ1008において、システム
は、更新ユニグラムPPTルーチンを呼び出す。ステッ
プ1009において、新たに確立された各仮定のバイグ
ラムPPTが完了した場合に、ルーチンはステップ10
01へループし、次の音素を選択するが、さもなくば、
ステップ1007へループして、PPTの更新を完了す
る。ステップ1010において、システムは、検索され
た一連の音素に対する認識されたワードとして最良の仮
定を選択し、そして完了する。
【0029】図16は、初期化ワード間バイグラムPP
Tルーチンを示すフローチャートである。このルーチン
は、新たに確立された各仮定の最後のワードに対しバイ
グラムコンテクスト(即ち、新たなバイグラムPPT)
を確立する。このルーチンは各バイグラムコンテクスト
に対しルートノードを初期化する。ステップ1401な
いし1409において、ルーチンはループして各仮定の
選択及び処理を行う。ステップ1401において、ルー
チンは、最初から始めて次の仮定を選択する。ステップ
1402において、全ての仮定が既に選択された場合に
は、ルーチンは復帰し、さもなくば、ルーチンはステッ
プ1403へ続く。ステップ1403において、ルーチ
ンは、バイグラムコンテクストを、選択された仮定の最
後のワードにセットする。ステップ1404ないし14
09において、ルーチンはループして、指定のバイグラ
ムコンテクストに対し各LEBPPTを処理する。ステ
ップ1404において、ルーチンは、最初のLEBPP
Tエントリーでスタートして選択されたバイグラムコン
テクストに対し、LEBPPTの次のエントリーを選択
する。ステップ1405において、バイグラムコンテク
ストの全てのLEBPPTエントリーが既に選択された
場合には、ルーチンはステップ1401へループして次
の仮定を選択するが、さもなくば、ルーチンは、ステッ
プ1406に続く。ステップ1406において、選択さ
れたエントリーの深さが0又は1である場合には、ルー
チンはステップ1407に続くが、さもなくば、ルーチ
ンは、ステップ1404へループして、次のLEBPP
Tエントリーを選択する。ステップ1407において、
ルーチンは、TNDから選択されたLEBPPTエント
リーのワードの第1の音素を識別する。ステップ140
8において、ステップ1408において、ルーチンは、
選択されたLEBPPTエントリーのワードの第1の音
素に対しこのバイグラムコンテクストのノードをインス
タンス生成する。ステップ1409において、ルーチン
は、ノードの確率を、LEBPPTエントリーのファク
タに選択された仮定の確率を乗算したものにセットし、
そしてステップ1404へループして、次のLEBPP
Tエントリーを選択する。
【0030】図17は、初期化ワード間ユニグラムPP
Tルーチンを示すフローチャートである。このルーチン
は、最も高い確率をもつ仮定に対しユニグラムPPTを
インスタンス生成する。このルーチンは、ユニグラムP
PTのルートノードの各子ノードに対しノードを初期化
する。ステップ1501において、ルーチンは、最も高
い確率をもつ仮定を選択する。ステップ1502ないし
1505において、ルーチンは、ユニグラムPPTのル
ートノードの各子ノードに対しユニグラムコンテクスト
をインスタンス生成する。ステップ1502において、
ルーチンは、最初からスタートして、ユニグラムPPT
のルートノードの次の子ノードを選択する。ステップ1
503において、全ての子ノードが既に選択された場合
には、ルーチンは復帰し、さもなくば、ルーチンは、ス
テップ1504に続く。ステップ1504において、ル
ーチンは、選択された子ノードに対し選択された仮定の
ためのノードをインスタンス生成する。ステップ150
5において、ルーチンは、インスタンス生成されたノー
ドの確率を、子ノードのファクタに選択された仮定の確
率を乗算したものにセットし、そしてステップ1502
へループし、ルートノードの次の子ノードを選択する。
【0031】図18は、更新バイグラムPPTルーチン
のフローチャートである。ステップ1601において、
ルーチンは、最初からスタートして、次のバイグラムコ
ンテクストを選択する。ステップ1602において、全
てのバイグラムコンテクストが既に選択された場合に
は、ルーチンは復帰し、さもなくば、ルーチンはステッ
プ1603へ続く。ステップ1603ないし1608で
は、ルーチンがループして、選択されたバイグラムコン
テクストに対しバイグラムPPTの各リーフノードに子
ノードを追加する。ステップ1603において、ルーチ
ンは、最初からスタートしてバイグラムPPTに対し次
のリーフノードを選択する。ステップ1604におい
て、全てのリーフノードが既に選択された場合には、ル
ーチンはステップ1601へループし、次のバイグラム
コンテクストを選択するが、さもなくば、ルーチンはス
テップ1605へ続く。ステップ1605において、ル
ーチンは、TNDにおける選択されたノードのワードの
次の音素を識別する。ステップ1606において、ルー
チンは、次の音素に対し、選択されたバイグラムコンテ
クストのバイグラムPPTのためのノードをインスタン
ス生成する。ステップ1607において、ルーチンは、
インスタンス生成されたノードの確率を選択されたリー
フノードの確率にセットする。ステップ1608におい
て、ルーチンは、インスタンス生成されたノードの兄弟
に対するノードを追加するルーチンを呼び出し、そして
ステップ1603へループして、次のリーフノードを選
択する。
【0032】図19は、インスタンス生成されたノード
の兄弟のノードを追加するルーチンのフローチャートで
ある。ステップ1701において、ルーチンは、インス
タンス生成されたノードのエントリーで始めて、LEB
PPTの次のエントリーを選択する。ステップ1702
において、LEBPPTの全てのエントリーが既に選択
された場合には、ルーチンは復帰し、さもなくば、ルー
チンはステップ1703へ続く。ステップ1703にお
いて、選択されたLEBPPTエントリーの深さが、イ
ンスタンス生成されたノードの深さに1を加えたものよ
り大きい場合には、ルーチンはステップ1701へルー
プして、次のLEBPPTエントリーを選択するが、さ
もなくば、ルーチンはステップ1704に続く。ステッ
プ1704において、選択されたエントリーの深さが、
インスタンス生成されたノードの深さ以下である場合に
は、ルーチンは復帰し、さもなくば、ルーチンはステッ
プ1705へ進む。ステップ1705において、ルーチ
ンは、TNDから選択されたLEBPPTエントリーの
ワードの次の音素を識別する。ステップ1706におい
て、ルーチンは、次の音素に対し、選択されたバイグラ
ムコンテクストのバイグラムPPTのノードをインスタ
ンス生成する。ステップ1707において、ルーチン
は、ノードの確率を、親ノードの確率に選択されたLE
BPPTエントリーのファクタを乗算したものにセット
し、そしてステップ1701へループして、次のLEB
PPTエントリーを選択する。
【0033】図20は、更新ユニグラムPPTルーチン
のフローチャートである。ステップ1801において、
ルーチンは、最良の仮定の次のリーフノードを選択す
る。ステップ1802において、最良の仮定の全てのリ
ーフノードが既に選択された場合には、ルーチンは復帰
し、さもなくば、ルーチンはステップ1803に続く。
ステップ1803において、ルーチンは、選択されたリ
ーフノードの各子ノードに対してノードをインスタンス
生成する。ステップ1803において、ルーチンは、拡
張ユニグラムPPTから選択されたリーフノードの次の
子ノードを選択する。ステップ1804において、全て
の子ノードが既に選択された場合には、ルーチンはステ
ップ1801へループして、次のリーフノードを選択す
るか、さもなくば、ルーチンはステップ1805に続
く。ステップ1805において、ルーチンは、選択され
た子ノードに対してノードをインスタンス生成する。ス
テップ1806において、ルーチンは、インスタンス生
成されたノードの確率を、親ノードの確率に拡張ユニグ
ラムPPTからのファクタを乗算したものにセットし、
そしてステップ1803へループして、次の子ノードを
選択する。
【0034】好ましい実施形態について本発明を以上に
説明したが、本発明は、この実施形態に限定されるもの
ではない。当業者にとっては、本発明の精神から逸脱せ
ず、種々の変更がなされ得ることが明らかであろう。本
発明の範囲は、特許請求の範囲に規定する。特に、本発
明の直線的なエンコード技術は、スピーチ認識に関連し
ない種々の用途に対してツリーデータ構造をエンコード
するのにも使用することができる。一般に、エンコード
技術は、ツリーデータ構造をコンパクトに表すための一
般的な機構として使用することができる。
【図面の簡単な説明】
【図1】励磁的な5ワード語彙に対する音声辞書を示す
図である。
【図2】長さ2の例示的な語彙のシーケンスに対する前
後関係に従属する確率を示す図である。
【図3】例示的な音声辞書に対するユニグラムPPTを
示す図である。
【図4】ワード「were」に続く辞書のワードのバイ
グラムPPTを示す図である。
【図5】本発明の要素を示すコンピュータシステムのブ
ロック図である。
【図6】例示的な辞書の拡張ユニグラムPPTを示す図
である。
【図7】図6のユニグラムPPTに対するツリーノード
辞書を示す図である。
【図8】ワード「were」に対する拡張バイグラムP
PTを示す図である。
【図9】ワード「wear」に対するバイグラムPPT
を示す図である。
【図10】エンコードバイグラムPPTルーチンのフロ
ーチャートである。
【図11】デコードLEBPPTルーチンのフローチャ
ートである。
【図12】LEBPPTを使用するCSRシステムのフ
ローチャートである。
【図13】CSRシステムにより発生されたPPTを示
す図である。
【図14】CSRシステムにより発生されたPPTを示
す図である。
【図15】CSRシステムにより発生されたPPTを示
す図である。
【図16】初期化ワード間バイグラムPPTルーチンの
フローチャートである。
【図17】初期化ワード間ユニグラムPPTルーチンの
フローチャートである。
【図18】更新バイグラムPPTルーチンのフローチャ
ートである。
【図19】インスタンス生成されたノードの兄弟のノー
ドを追加するためのルーチンのフローチャートである。
【図20】更新ユニグラムPPTルーチンのフローチャ
ートである。
【符号の説明】
200 ルートノード 301 バイグラムPPT 302 直線的PPTエンコーダ 303 直線的にエンコードされたバイグラムPPT 304 音素認識装置 305 コンピュータスピーチ認識装置 306 拡張ユニグラムPPT

Claims (22)

    【特許請求の範囲】
  1. 【請求項1】 コンピュータシステムにおいて発音プレ
    フィックスツリーを直線的にエンコードする方法であっ
    て、発音プレフィックスツリーは複数のノードを有し、
    各非ルート及び非リーフノードは音素を表し、各リーフ
    ノードはルートノードからリーフノードへの経路におい
    て非リーフノードにより表された音素で形成されたワー
    ドを表し、各リーフノードは確率を有し、上記方法は、 各非リーフノードの確率を、その子ノードの確率に基づ
    く確率にセットし、 各ノードのファクタを、そのノードの確率をそのノード
    の親ノードの確率で除算したものにセットし、そして発
    音プレフィックスツリーの各リーフノードに対しエンコ
    ードされた発音エントリーを発生し、このエンコードさ
    れた発音エントリーは、リーフノードにより表されたワ
    ードを指示すると共に、所定のファクタ以外のファクタ
    をもつ最も近い祖先ノードのファクタを含み、 上記発音プレフィックスツリーは、上記エンコードされ
    た発音エントリー及び各ワードを構成する音素のリスト
    から発生できることを特徴とする方法。
  2. 【請求項2】 ノードの子ノードは、最も高い確率をも
    つ子孫リーフノードを有する子ノードが他の子ノードの
    左側となるように順序付けされ、そして発音プレフィッ
    クスツリーの各リーフノードに対してエンコードされた
    発音エントリーを発生する上記段階は、発音プレフィッ
    クスツリーの深さ優先の左−右の横断を実行することを
    含む請求項1に記載の方法。
  3. 【請求項3】 ユニグラム発音プレフィックスツリーを
    発生し、 発生されたユニグラム発音プレフィックスツリーの各ノ
    ードに独特な識別子を指定し、そして各ワードごとに、
    ユニグラム発音プレフィックスツリーのルートノードか
    ら、そのワードを表すリーフノードへの経路において各
    ノードに対する独特の識別子を記憶する、ことによりツ
    リーノード辞書を形成することを含む請求項1に記載の
    方法。
  4. 【請求項4】 独特の識別子の指定は、ユニグラム発音
    プレフィックスツリーの巾優先の左−右横断において訪
    問するノードに順次の識別子を指定する請求項3に記載
    の方法。
  5. 【請求項5】 各ノードは、発音プレフィックスツリー
    内に深さを有し、そしてエンコードされた発音エントリ
    ーは、1.0以外のファクタをもつ最も近い祖先ノード
    の深さを含む請求項1に記載の方法。
  6. 【請求項6】 各ワードを構成する音素の指示を含むツ
    リーノード辞書を形成し、 子ノードの子孫リーフノードの最も高い確率に基づいて
    発音プレフィックスツリーの各非リーフノードの子ノー
    ドを順序付けし、 発音プレフィックスツリーの各非リーフノードに対し、
    非リーフノードの確率をその子ノードの確率に基づく確
    率にセットし、 発音プレフィックスツリーの各ノードに対し、ノードの
    ファクタを、そのノードの確率をそのノードの親ノード
    の確率で除算したものにセットし、そして発音プレフィ
    ックスツリーの各リーフノードに対し、エンコードされ
    た発音エントリーを発生し、このエンコードされた発音
    エントリーは、リーフノードにより表されたワードを指
    示すると共に、1.0以外のファクタをもつ最も近い祖
    先ノードのファクタを含む請求項1に記載の方法。
  7. 【請求項7】 ノードの子ノードは、最も高い確率をも
    つ子孫リーフノードを有する子ノードが最も左側となる
    ように確率により順序付けされ、そして発音プレフィッ
    クスツリーの各リーフノードに対してエンコードされた
    発音エントリーを発生する上記段階は、発音プレフィッ
    クスツリーの深さ優先の左−右の横断を実行することを
    含む請求項6に記載の方法。
  8. 【請求項8】 ツリーノード辞書の形成は、 ユニグラム発音プレフィックスツリーを発生し、 発生されたユニグラム発音プレフィックスツリーの各ノ
    ードに独特な識別子を指定し、そして各ワードごとに、
    ルートノードから、そのワードを表すリーフノードへの
    経路において各ノードに対する独特の識別子を記憶す
    る、ことを含む請求項6に記載の方法。
  9. 【請求項9】 独特の識別子の指定は、ユニグラム発音
    プレフィックスツリーの巾優先の左−右横断において訪
    問するノードに順次の識別子を指定する請求項8に記載
    の方法。
  10. 【請求項10】 スピーチを認識するコンピュータシス
    テムにおいて、 発音プレフィックスツリーを直線的にエンコードするた
    めの直線的エンコーダと、 認識されるべきスピーチを受け取りそしてその受け取っ
    たスピーチを構成する音素を識別するための音素認識装
    置と、 識別された音素に対応するワードを、直線的にエンコー
    ドされた発音プレフィックスツリーでエンコードされた
    確率を用いて識別するための認識装置と、を備えたこと
    を特徴とするコンピュータシステム。
  11. 【請求項11】 発音プレフィックスツリーは複数のノ
    ードを有し、各非ルート及び非リーフノードは音素を表
    し、各リーフノードはルートノードからリーフノードへ
    の経路において非リーフノードにより表された音素で形
    成されたワードを表し、各リーフノードは確率を有し、 各非リーフノードの確率を、その子ノードの確率に基づ
    く確率にセットし、 各ノードのファクタを、そのノードの確率をそのノード
    の親ノードの確率で除算したものにセットし、そして発
    音プレフィックスツリーの各リーフノードに対しエンコ
    ードされた発音エントリーを発生し、このエンコードさ
    れた発音エントリーは、リーフノードにより表されたワ
    ードを指示すると共に、所定のファクタ以外のファクタ
    をもつ最も近い祖先ノードのファクタを含む請求項10
    に記載のコンピュータシステム。
  12. 【請求項12】 ノードの子ノードは、最も高い確率を
    もつ子孫リーフノードを有する子ノードが他の子ノード
    の左側となるように順序付けされ、そして発音プレフィ
    ックスツリーの各リーフノードに対してエンコードされ
    た発音エントリーを発生する上記段階は、発音プレフィ
    ックスツリーの深さ優先の左−右の横断を実行すること
    を含む請求項11に記載のコンピュータシステム。
  13. 【請求項13】 上記直線的エンコーダは、 ユニグラム発音プレフィックスツリーを発生し、 発生されたユニグラム発音プレフィックスツリーの各ノ
    ードに独特な識別子を指定し、そして各ワードごとに、
    ユニグラム発音プレフィックスツリーのルートノードか
    ら、そのワードを表すリーフノードへの経路において各
    ノードに対する独特の識別子を記憶する、ことによりツ
    リーノード辞書を形成する請求項11に記載のコンピュ
    ータシステム。
  14. 【請求項14】 独特の識別子の指定は、ユニグラム発
    音プレフィックスツリーの巾優先の左−右横断において
    訪問するノードに順次の識別子を指定する請求項13に
    記載のコンピュータシステム。
  15. 【請求項15】 発音プレフィックスツリーは、バイグ
    ラム発音プレフィックスツリーである請求項11に記載
    のコンピュータシステム。
  16. 【請求項16】 発音プレフィックスツリーは、トリグ
    ラム発音プレフィックスツリーである請求項11に記載
    のコンピュータシステム。
  17. 【請求項17】 上記ツリーは複数のノードを有し、上
    記ツリーは、ルートノード及びリーフノードを有し、各
    リーフノードは、ある値を有し、リニアエンコーダは、 ルートノードからリーフノードへ至る各経路のノードの
    識別を伴う経路リストと、 各ノードのファクタを、ノードの値をそのノードの親ノ
    ードの値で除算したものにセットする手段と、 ツリーの各リーフノードに対しエンコードされたエント
    リーを発生する手段とを備え、上記エンコードされたエ
    ントリーは、リーフノードを識別すると共に、所定のフ
    ァクタ以外のファクタをもつ最も近い祖先ノードのファ
    クタを含む請求項10に記載のコンピュータシステム。
  18. 【請求項18】 上記ツリーは、上記エンコードされた
    エントリー及び経路リストから発生することができる請
    求項17に記載のコンピュータシステム。
  19. 【請求項19】 各ノードは、ツリー内の深さを有し、
    上記エンコードされたエントリーは、1.0以外のファ
    クタをもつ最も近い祖先ノードの深さを含む請求項17
    に記載のコンピュータシステム。
  20. 【請求項20】 エンコードされたエントリーを発生し
    た後に、各エンコードされたエントリーごとに、そのエ
    ンコードされたエントリーにより識別されたリーフノー
    ドのリストにおいてある深さのノードの識別を選択する
    ことにより、ツリー内のある深さのノードを識別する手
    段を備えた請求項19に記載のコンピュータシステム。
  21. 【請求項21】 上記ある深さは、リストのインデック
    スとして使用される請求項20に記載のコンピュータシ
    ステム。
  22. 【請求項22】 上記ツリーは、バイグラム発音プレフ
    ィックスツリーであり、そしてある深さのノードの識別
    は、一連の音素の認識中に実行される請求項20に記載
    のコンピュータシステム。
JP16891497A 1996-06-25 1997-06-25 発音プレフィックスツリーのエンコード方法及びシステム Expired - Lifetime JP3601751B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/674656 1996-06-25
US08/674,656 US5758024A (en) 1996-06-25 1996-06-25 Method and system for encoding pronunciation prefix trees

Publications (2)

Publication Number Publication Date
JPH10116092A true JPH10116092A (ja) 1998-05-06
JP3601751B2 JP3601751B2 (ja) 2004-12-15

Family

ID=24707448

Family Applications (1)

Application Number Title Priority Date Filing Date
JP16891497A Expired - Lifetime JP3601751B2 (ja) 1996-06-25 1997-06-25 発音プレフィックスツリーのエンコード方法及びシステム

Country Status (5)

Country Link
US (1) US5758024A (ja)
EP (1) EP0817169B1 (ja)
JP (1) JP3601751B2 (ja)
CN (1) CN1107915C (ja)
DE (1) DE69726499T2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100509797B1 (ko) * 1998-04-29 2005-08-23 마쯔시다덴기산교 가부시키가이샤 결정 트리에 의한 스펠형 문자의 복합 발음 발생과 스코어를위한 장치 및 방법
US7627474B2 (en) 2006-02-09 2009-12-01 Samsung Electronics Co., Ltd. Large-vocabulary speech recognition method, apparatus, and medium based on multilayer central lexicons

Families Citing this family (67)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2000007123A1 (en) * 1998-07-28 2000-02-10 Triada, Ltd. Methods of deleting information in n-gram tree structures
US6757647B1 (en) * 1998-07-30 2004-06-29 International Business Machines Corporation Method for encoding regular expressions in a lexigon
AU1767600A (en) * 1999-12-23 2001-07-09 Intel Corporation Speech recognizer with a lexical tree based n-gram language model
US6614789B1 (en) 1999-12-29 2003-09-02 Nasser Yazdani Method of and apparatus for matching strings of different lengths
US6260011B1 (en) 2000-03-20 2001-07-10 Microsoft Corporation Methods and apparatus for automatically synchronizing electronic audio files with electronic text files
AU2000276400A1 (en) 2000-09-30 2002-04-15 Intel Corporation Search method based on single triphone tree for large vocabulary continuous speech recognizer
US7930181B1 (en) * 2002-09-18 2011-04-19 At&T Intellectual Property Ii, L.P. Low latency real-time speech transcription
US7653619B1 (en) * 2004-07-23 2010-01-26 Netlogic Microsystems, Inc. Integrated search engine devices having pipelined search and tree maintenance sub-engines therein that support variable tree height
US7747599B1 (en) 2004-07-23 2010-06-29 Netlogic Microsystems, Inc. Integrated search engine devices that utilize hierarchical memories containing b-trees and span prefix masks to support longest prefix match search operations
US8886677B1 (en) 2004-07-23 2014-11-11 Netlogic Microsystems, Inc. Integrated search engine devices that support LPM search operations using span prefix masks that encode key prefix length
ES2237345B1 (es) * 2005-02-28 2006-06-16 Prous Institute For Biomedical Research S.A. Procedimiento de conversion de fonemas a texto escrito y sistema informatico y programa informatico correspondientes.
GB2428508B (en) * 2005-07-15 2009-10-21 Toshiba Res Europ Ltd Parsing method
US8677377B2 (en) 2005-09-08 2014-03-18 Apple Inc. Method and apparatus for building an intelligent automated assistant
US9318108B2 (en) 2010-01-18 2016-04-19 Apple Inc. Intelligent automated assistant
US8086641B1 (en) 2006-11-27 2011-12-27 Netlogic Microsystems, Inc. Integrated search engine devices that utilize SPM-linked bit maps to reduce handle memory duplication and methods of operating same
US7987205B1 (en) 2006-11-27 2011-07-26 Netlogic Microsystems, Inc. Integrated search engine devices having pipelined node maintenance sub-engines therein that support database flush operations
US7953721B1 (en) 2006-11-27 2011-05-31 Netlogic Microsystems, Inc. Integrated search engine devices that support database key dumping and methods of operating same
US7831626B1 (en) 2006-11-27 2010-11-09 Netlogic Microsystems, Inc. Integrated search engine devices having a plurality of multi-way trees of search keys therein that share a common root node
US8996376B2 (en) 2008-04-05 2015-03-31 Apple Inc. Intelligent text-to-speech conversion
US10241644B2 (en) 2011-06-03 2019-03-26 Apple Inc. Actionable reminder entries
US10241752B2 (en) 2011-09-30 2019-03-26 Apple Inc. Interface for a virtual digital assistant
US9431006B2 (en) 2009-07-02 2016-08-30 Apple Inc. Methods and apparatuses for automatic speech recognition
US8682667B2 (en) 2010-02-25 2014-03-25 Apple Inc. User profiling for selecting user specific voice input processing information
CN103650033B (zh) * 2011-06-30 2016-10-26 谷歌公司 使用可变长度语境的语音识别
US9280610B2 (en) 2012-05-14 2016-03-08 Apple Inc. Crowd sourcing information to fulfill user requests
US9721563B2 (en) 2012-06-08 2017-08-01 Apple Inc. Name recognition system
US9547647B2 (en) 2012-09-19 2017-01-17 Apple Inc. Voice-based media searching
US9336771B2 (en) * 2012-11-01 2016-05-10 Google Inc. Speech recognition using non-parametric models
US9063916B2 (en) * 2013-02-27 2015-06-23 Oracle International Corporation Compact encoding of node locations
WO2014197334A2 (en) 2013-06-07 2014-12-11 Apple Inc. System and method for user-specified pronunciation of words for speech synthesis and recognition
CN103577548B (zh) * 2013-10-12 2017-02-08 优视科技有限公司 近音文字匹配方法及装置
US9785630B2 (en) * 2014-05-30 2017-10-10 Apple Inc. Text prediction using combined word N-gram and unigram language models
US9430463B2 (en) 2014-05-30 2016-08-30 Apple Inc. Exemplar-based natural language processing
US9858922B2 (en) 2014-06-23 2018-01-02 Google Inc. Caching speech recognition scores
US9338493B2 (en) 2014-06-30 2016-05-10 Apple Inc. Intelligent automated assistant for TV user interactions
WO2016008128A1 (en) * 2014-07-17 2016-01-21 Microsoft Technology Licensing, Llc Speech recognition using foreign word grammar
US9668121B2 (en) 2014-09-30 2017-05-30 Apple Inc. Social reminders
US9299347B1 (en) 2014-10-22 2016-03-29 Google Inc. Speech recognition using associative mapping
US10747498B2 (en) 2015-09-08 2020-08-18 Apple Inc. Zero latency digital assistant
US10671428B2 (en) 2015-09-08 2020-06-02 Apple Inc. Distributed personal assistant
US10366158B2 (en) 2015-09-29 2019-07-30 Apple Inc. Efficient word encoding for recurrent neural network language models
US11010550B2 (en) 2015-09-29 2021-05-18 Apple Inc. Unified language modeling framework for word prediction, auto-completion and auto-correction
US11587559B2 (en) 2015-09-30 2023-02-21 Apple Inc. Intelligent device identification
US10691473B2 (en) 2015-11-06 2020-06-23 Apple Inc. Intelligent automated assistant in a messaging environment
US10049668B2 (en) 2015-12-02 2018-08-14 Apple Inc. Applying neural network language models to weighted finite state transducers for automatic speech recognition
US10223066B2 (en) 2015-12-23 2019-03-05 Apple Inc. Proactive assistance based on dialog communication between devices
US10446143B2 (en) 2016-03-14 2019-10-15 Apple Inc. Identification of voice inputs providing credentials
US9934775B2 (en) 2016-05-26 2018-04-03 Apple Inc. Unit-selection text-to-speech synthesis based on predicted concatenation parameters
US9972304B2 (en) 2016-06-03 2018-05-15 Apple Inc. Privacy preserving distributed evaluation framework for embedded personalized systems
US10249300B2 (en) 2016-06-06 2019-04-02 Apple Inc. Intelligent list reading
US10049663B2 (en) 2016-06-08 2018-08-14 Apple, Inc. Intelligent automated assistant for media exploration
DK179588B1 (en) 2016-06-09 2019-02-22 Apple Inc. INTELLIGENT AUTOMATED ASSISTANT IN A HOME ENVIRONMENT
US10490187B2 (en) 2016-06-10 2019-11-26 Apple Inc. Digital assistant providing automated status report
US10509862B2 (en) 2016-06-10 2019-12-17 Apple Inc. Dynamic phrase expansion of language input
US10192552B2 (en) 2016-06-10 2019-01-29 Apple Inc. Digital assistant providing whispered speech
US10586535B2 (en) 2016-06-10 2020-03-10 Apple Inc. Intelligent digital assistant in a multi-tasking environment
US10067938B2 (en) 2016-06-10 2018-09-04 Apple Inc. Multilingual word prediction
DK179343B1 (en) 2016-06-11 2018-05-14 Apple Inc Intelligent task discovery
DK179049B1 (en) 2016-06-11 2017-09-18 Apple Inc Data driven natural language event detection and classification
DK179415B1 (en) 2016-06-11 2018-06-14 Apple Inc Intelligent device arbitration and control
DK201670540A1 (en) 2016-06-11 2018-01-08 Apple Inc Application integration with a digital assistant
US10593346B2 (en) 2016-12-22 2020-03-17 Apple Inc. Rank-reduced token representation for automatic speech recognition
DK179745B1 (en) 2017-05-12 2019-05-01 Apple Inc. SYNCHRONIZATION AND TASK DELEGATION OF A DIGITAL ASSISTANT
DK201770431A1 (en) 2017-05-15 2018-12-20 Apple Inc. Optimizing dialogue policy decisions for digital assistants using implicit feedback
US10387575B1 (en) * 2019-01-30 2019-08-20 Babylon Partners Limited Semantic graph traversal for recognition of inferred clauses within natural language inputs
CN111128172B (zh) * 2019-12-31 2022-12-16 达闼机器人股份有限公司 一种语音识别方法、电子设备和存储介质
US11893983B2 (en) * 2021-06-23 2024-02-06 International Business Machines Corporation Adding words to a prefix tree for improving speech recognition

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5033087A (en) * 1989-03-14 1991-07-16 International Business Machines Corp. Method and apparatus for the automatic determination of phonological rules as for a continuous speech recognition system
US5144671A (en) * 1990-03-15 1992-09-01 Gte Laboratories Incorporated Method for reducing the search complexity in analysis-by-synthesis coding
US5454062A (en) * 1991-03-27 1995-09-26 Audio Navigation Systems, Inc. Method for recognizing spoken words
US5349645A (en) * 1991-12-31 1994-09-20 Matsushita Electric Industrial Co., Ltd. Word hypothesizer for continuous speech decoding using stressed-vowel centered bidirectional tree searches
CA2088080C (en) * 1992-04-02 1997-10-07 Enrico Luigi Bocchieri Automatic speech recognizer
US5535305A (en) * 1992-12-31 1996-07-09 Apple Computer, Inc. Sub-partitioned vector quantization of probability density functions
US5528728A (en) * 1993-07-12 1996-06-18 Kabushiki Kaisha Meidensha Speaker independent speech recognition system and method using neural network and DTW matching technique

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100509797B1 (ko) * 1998-04-29 2005-08-23 마쯔시다덴기산교 가부시키가이샤 결정 트리에 의한 스펠형 문자의 복합 발음 발생과 스코어를위한 장치 및 방법
US7627474B2 (en) 2006-02-09 2009-12-01 Samsung Electronics Co., Ltd. Large-vocabulary speech recognition method, apparatus, and medium based on multilayer central lexicons

Also Published As

Publication number Publication date
EP0817169B1 (en) 2003-12-03
CN1107915C (zh) 2003-05-07
US5758024A (en) 1998-05-26
DE69726499D1 (de) 2004-01-15
CN1180202A (zh) 1998-04-29
DE69726499T2 (de) 2004-05-27
EP0817169A2 (en) 1998-01-07
EP0817169A3 (en) 1998-09-23
JP3601751B2 (ja) 2004-12-15

Similar Documents

Publication Publication Date Title
JP3601751B2 (ja) 発音プレフィックスツリーのエンコード方法及びシステム
Weiss et al. Sequence-to-sequence models can directly translate foreign speech
US7113903B1 (en) Method and apparatus for providing stochastic finite-state machine translation
Young et al. The HTK book
JP6188831B2 (ja) 音声検索装置および音声検索方法
JP4215418B2 (ja) 単語予測方法、音声認識方法、その方法を用いた音声認識装置及びプログラム
US7783474B2 (en) System and method for generating a phrase pronunciation
US5502790A (en) Speech recognition method and system using triphones, diphones, and phonemes
US4741036A (en) Determination of phone weights for markov models in a speech recognition system
JP3004254B2 (ja) 統計的シーケンスモデル生成装置、統計的言語モデル生成装置及び音声認識装置
EP1575030B1 (en) New-word pronunciation learning using a pronunciation graph
JP2543148B2 (ja) 音声認識装置を学習させる装置
US7299178B2 (en) Continuous speech recognition method and system using inter-word phonetic information
US5884259A (en) Method and apparatus for a time-synchronous tree-based search strategy
US7574411B2 (en) Low memory decision tree
US5765133A (en) System for building a language model network for speech recognition
JPH02273795A (ja) 連続音声認識方法
JP2002041080A (ja) 単語予測方法、音声認識方法、単語予測装置、音声認識装置、コンピュータ・システム、記憶媒体およびプログラム伝送装置
Wu et al. Encoding linear models as weighted finite-state transducers.
Federico et al. Language modelling for efficient beam-search
KR100726875B1 (ko) 구두 대화에서의 전형적인 실수에 대한 보완적인 언어모델을 갖는 음성 인식 디바이스
CN112133285B (zh) 语音识别方法、装置、存储介质和电子设备
US20050267755A1 (en) Arrangement for speech recognition
JP2001312294A (ja) 入力記号列を出力記号列に変換するトランスデューサの学習方法およびトランスデューサの学習プログラムを記憶したコンピュータ読み取り可能な記録媒体
CN113012690B (zh) 一种支持领域定制语言模型的解码方法及装置

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040119

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040308

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040317

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: 20040823

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040916

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081001

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091001

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101001

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111001

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121001

Year of fee payment: 8