JP2004334848A - 2レベル形態規則をコンパイルするための方法及びその装置 - Google Patents

2レベル形態規則をコンパイルするための方法及びその装置 Download PDF

Info

Publication number
JP2004334848A
JP2004334848A JP2004110408A JP2004110408A JP2004334848A JP 2004334848 A JP2004334848 A JP 2004334848A JP 2004110408 A JP2004110408 A JP 2004110408A JP 2004110408 A JP2004110408 A JP 2004110408A JP 2004334848 A JP2004334848 A JP 2004334848A
Authority
JP
Japan
Prior art keywords
finite state
core
rule
state
transducer
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.)
Ceased
Application number
JP2004110408A
Other languages
English (en)
Inventor
Curtis E Huttenhower
イー.フッテンハワー カーティス
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 JP2004334848A publication Critical patent/JP2004334848A/ja
Ceased legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/268Morphological analysis

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Machine Translation (AREA)
  • Devices For Executing Special Programs (AREA)
  • Complex Calculations (AREA)

Abstract

【課題】 規則の要素を有限状態変換器テンプレートに挿入することにより第1及び第2の正字法規則を個別の有限状態変換器にコンパイルする、正字法規則をコンパイルする方法を提供すること。
【解決手段】 個別の有限状態変換器を結合して、単一の結合有限状態変換器を形成する。一実施形態では、まず有限状態変換器を有限状態変換器内の共通のコアに基づいて結合する。その後、そのコアに対する結合有限状態変換器を結合して、その一組の正字法規則に対する単一の有限状態変換器を形成する。
【選択図】 図1

Description

本発明は、言語処理に関するもので、より詳細には、表層テキスト(surface text)を語彙表現(lexical representation)に変換する言語処理技術に関する。
言語処理では、表層形式の単語を語彙形式に変換することで、品詞の違いに関連する形態により生じる単語の綴りの差違を取り除くのが一般的である。例えば、「happiness」という表層形式は、「happy+ness」という語彙形式に変換され、「found」は「find」という語彙形式に変換され、過去形を示すマーカーがその語彙形式に付加される。このような変換を行うと、対応する必要のある単語の変化形の数が減るため単語の後処理が簡素化される。
このような変換を実行する一般的な方法として、有限状態変換器(Finite State Transducers)が使われている。有限状態変換器では、表層形式の単語を語彙形式の文字又はマーキングにマッピングする遷移により2つの状態が接続される。多くのシステムでは、有限状態変換器は、表層形式の文字から語彙形式の文字へのマッピングを記述する一組の規則に基づいて生成される。これの規則のいくつかは、左文脈(left context)、右文脈(right context)、又は左右両方の文脈を含み、有限状態変換器内に2つよりも多い状態を必要とする。例えば、iからyへの変換を行う規則に、文字iの前に表層形式の「p」を必要とする「p:p」という左文脈及び文字iの後に「n」を必要とする「n:n」という右文脈が含まれていた場合、完全な有限状態変換器は、開始状態、第2の状態への文字pの遷移、第2の状態から第3の状態への変換i:yの遷移、及び第3の状態からの文字「n」の遷移を含むことになる。
2レベル形態(two−level morphology)の有限状態変換器を使用して語彙形式の単語を作成するが、そのために、表層形式を有限状態変換器に入力として適用する。有限状態変換器は、状態毎に、現在の状態から次の状態への遷移に入力の中の現在の文字を使用できるかどうかを判別する。使用できる場合、有限状態変換器は次の状態への遷移を進め、入力の中の次の文字を選択する。現在の文字がある状態から出る遷移のどれとも一致しない場合、有限状態変換器は失敗し、有限状態変換器の開始状態に戻る。
従来技術では、規則の各部分、つまり、左文脈、コア(core)、及び右文脈は、別々の有限状態変換器として定義されていた。これらの有限状態変換器はそれぞれ、別々に、形態処理時に使用することが可能な2進表現に変換される。
実行時に、さまざまな有限状態変換器がユーザ入力に基づいて動的に結合され、その入力に合わせて修正された単一の仮想FSTが生成される。
有限状態変換器を実行時に結合することで実用的な形態システム(morphology systems)が得られるが、形態処理の時間がかなり長くなる。
本発明は、規則のコアに対するコア有限状態変換器(core Finite State Transducer)と規則の文脈に対する文脈有限状態変換器(context Finite State Transducer)を形成する正字法規則(orthography rules)をコンパイルする方法を提案することを目的とする。
コア有限状態変換器は、規則の演算子に関連付けられたテンプレートに基づき、文脈有限状態変換器と結合され、規則有限状態変換器(rule Finite State Transducer)を形成する。その後、この規則有限状態変換器を使用して、実行可能有限状態変換器(executable Finite State Transducer)を作成する。一実施形態では、規則有限状態変換器は、さらに、有限状態変換器の共通コアに基づいて結合され、コア有限状態変換器を形成する。その後、複数のコア有限状態変換器が結合され、正字法規則の集合に対する集合有限状態変換器(set Finite State Transducer)を形成する。その後、この集合有限状態変換器は、実行可能有限状態変換器に変換される。
以下、図面を参照して本発明の実施の態様について説明する。
図1は、本発明を実装できる好適なコンピューティングシステム環境の一実施例を示す図である。コンピューティングシステム環境100は、適当なコンピューティング環境の一例にすぎず、本発明の用途又は機能性の範囲に関する制限を示唆する意図はない。コンピューティング環境100は、オペレーティング環境例100に示されている1つのコンポーネント又はその組み合わせに関係する依存関係又は要求条件があるものと解釈すべきでない。
本発明は、他の数多くの汎用又は専用コンピューティングシステム環境又は構成で動作する。本発明とともに使用するのに好適と思われるよく知られているコンピューティングシステム、環境、及び/又は構成の例として、パーソナルコンピュータ、サーバコンピュータ、ハンドヘルド又はラップトップデバイス、マルチプロセッサシステム、マイクロプロセッサベースのシステム、セットトップボックス、プログラム可能な家電製品、ネットワークPC、ミニコンピュータ、メインフレームコンピュータ、電話システム、上述したシステム又はデバイスを含む分散コンピューティング環境などがあるが、これらに限定されない。
本発明は、コンピュータによって実行される、プログラムモジュールなどのコンピュータ実行可能命令の一般的背景状況において説明することができる。一般に、プログラムモジュールは、特定のタスクを実行する、又は特定の抽象データ型を実装するルーチン、プログラム、オブジェクト、コンポーネント、データ構造などを含む。本発明は、通信ネットワークを通じてリンクされているリモート処理デバイスによりタスクが実行される分散コンピューティング環境で実施するものである。分散コンピューティング環境では、プログラムモジュールは、メモリ記憶デバイスなどのローカルコンピュータとリモートコンピュータの両方の記憶媒体に配置される。
図1を参照すると、本発明を実装するシステム例は、汎用コンピューティングデバイスをコンピュータ110の形で備えている。コンピュータ110が備えるコンポーネントとしては、処理ユニット120、システムメモリ130、及びシステムメモリを備えるさまざまなシステムコンポーネントを処理ユニット120に結合するシステムバス121などがあるが、これらに限定されない。システムバス121は、メモリバス又はメモリコントローラ、周辺機器バス、及び各種バスアーキテクチャを採用するローカルバスを含む数種類のバス構造のどれでもよい。例えば、このようなアーキテクチャとしては、Industry Standard Architecture(ISA)バス、Micro Channel Architecture(MCA)バス、Enhanced ISA(EISA)バス、Video Electronics Standards Association(VESA)ローカルバス、及びMezzanineバスとも呼ばれるPeripheral Component Interconnect(PCI)バスがあるが、これらに限定されない。
コンピュータ110は通常、さまざまなコンピュータ読取可能な媒体を含む。このコンピュータ読取可能な媒体は、コンピュータ110によってアクセスできる媒体であればどのような媒体でも使用でき、揮発性及び不揮発性媒体、取り外し可能及び取り外し不可能媒体を含む。例えば、コンピュータ読取可能な媒体は、コンピュータ記憶媒体及び通信媒体を含むことができるが、これらに限定されない。コンピュータ記憶媒体は、コンピュータ可読命令、データ構造体、プログラムモジュール、又はその他のデータなどの情報を格納する方法又は技術で実装される揮発性及び不揮発性、取り外し可能及び取り外し不可能媒体を含む。コンピュータ記憶媒体としては、RAM、ROM、EEPROM、フラッシュメモリ又はその他のメモリ技術、CD−ROM、デジタル多目的ディスク(DVD)又はその他の光ディスク記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置又はその他の磁気記憶デバイス、又は目的の情報を格納するために使用することができコンピュータ110によりアクセスできるその他の媒体がある。通信媒体は、通常、搬送波又はその他のトランスポートメカニズムなどの変調データ信号により、コンピュータ可読命令、データ構造体、プログラムモジュール、又はその他のデータを実現するものであり、さらに情報配信媒体を含む。「変調データ信号」という用語は、信号内の情報を符号化する方法でその特性のうち1つ又は複数が設定又は変更された信号を意味する。例えば、通信媒体としては、有線ネットワーク又は直接配線接続などの有線媒体、及び音響、RF、赤外線、及びその他の無線媒体などの無線媒体があるが、これらに限定されない。上記のいずれの組み合わせもコンピュータ読取可能な媒体の範囲に収まらなければならない。
システムメモリ130は、読み取り専用メモリ(ROM)131及びランダムアクセスメモリ(RAM)132などの揮発性及び/又は不揮発性メモリの形態のコンピュータ記憶媒体を含む。起動時などにコンピュータ110内の要素間の情報伝送を助ける基本ルーチンを含む基本入出力システム133(BIOS)は通常、ROM131内に格納される。通常、RAM132には、処理ユニット120に直接アクセス可能な、かつ/又は処理ユニット120により現在操作されているデータ及び/又はプログラムモジュールを格納する。例えば、図1は、オペレーティングシステム134、アプリケーションプログラム135、その他のプログラムモジュール136、及びプログラムデータ137を示しているが、これらに限定されない。
コンピュータ110はさらに、その他の取り外し可能/取り外し不可能な揮発性/不揮発性コンピュータ記憶媒体を備えることもできる。これは例にすぎないが、図1は、取り外し不可能な不揮発性磁気媒体の読み書きを行うハードディスクドライブ141、取り外し可能な不揮発性磁気ディスク152の読み書きを行う磁気ディスクドライブ151、及びCD−ROM又はその他の光媒体などの取り外し可能な不揮発性光ディスク156の読み書きを行う光ディスクドライブ155を示している。操作環境例で使用できる他の取り外し可能/取り外し不可能な揮発性/不揮発性コンピュータ記憶媒体としては、磁気テープカセット、フラッシュメモリカード、デジタル多目的ディスク、デジタルビデオテープ、ソリッドステートRAM、ソリッドステートROMなどがあるが、これらに限定されない。ハードディスクドライブ141は、通常、インターフェース140などの取り外し不可能なメモリインターフェースを介してシステムバス121に接続され、磁気ディスクドライブ151及び光ディスクドライブ155は、通常、インターフェース150などの取り外し可能なメモリインターフェースによりシステムバス121に接続される。
図1に示されている上述したドライブ及び関連するコンピュータ記憶媒体は、コンピュータ110用のコンピュータ可読命令、データ構造体、プログラムモジュール、及びその他のデータを格納する機能を備える。例えば、図1では、ハードディスクドライブ141は、オペレーティングシステム144、アプリケーションプログラム145、その他のプログラムモジュール146、及びプログラムデータ147を格納するものとして示されている。これらのコンポーネントは、オペレーティングシステム134、アプリケーションプログラム135、その他のプログラムモジュール136、及びプログラムデータ137と同じである場合もあれば異なる場合もあることに注意されたい。オペレーティングシステム144、アプリケーションプログラム145、その他のプログラムモジュール146、及びプログラムデータ147に対しては、ここで、異なる番号を割り当てて、最低でも、それが異なるコピーであることを示している。
ユーザは、キーボード162、マイク163、及びマウス、トラックボール、タッチパッドなどのポインティングデバイス161などの入力デバイスを介してコンピュータ110にコマンド及び情報を入力できる。他の入力デバイス(図示せず)としては、ジョイスティック、ゲームパッド、衛星放送受信アンテナ、スキャナなどがある。これらの入力デバイスやその他の入力デバイスは、システムバスに結合されているユーザ入力インターフェース160を介して処理ユニット120に接続されることが多いが、パラレルポート、ゲームポート、又はユニバーサルシリアルバス(USB)などの他のインターフェース及びバス構造により接続することもできる。モニタ191又はその他の種類の表示デバイスも、ビデオインターフェース190などのインターフェースを介してシステムバス121に接続される。モニタの他に、コンピュータはさらにスピーカー197及びプリンタ196などの他の周辺出力デバイスも備えることができ、これらは出力周辺インターフェース195を介して接続することができる。
コンピュータ110は、リモートコンピュータ180などの1つ又は複数のリモートコンピュータへの論理接続を使用してネットワーク環境で動作する。リモートコンピュータ180は、パーソナルコンピュータ、ハンドヘルドデバイス、サーバ、ルータ、ネットワークPC、ピアデバイス、又はその他の共通ネットワークノードでもよく、通常は、コンピュータ110に関係する上述の要素の多く又はすべてを含む。図1に示されている論理接続は、ローカルエリアネットワーク(LAN)171とワイドエリアネットワーク(WAN)173を含むが、他のネットワークを含むこともできる。このようなネットワーキング環境は、オフィス、企業全体にわたるコンピュータネットワーク、イントラネット、及びインターネットでは一般的なものである。
LANネットワーキング環境で使用する場合、コンピュータ110はネットワークインターフェース又はアダプタ170を介してLAN171に接続される。WANネットワーキング環境で使用する場合、コンピュータ110は通常、モデム172又はインターネットなどのWAN173上で通信を確立するための他の手段を備える。モデム172は、内蔵でも外付けでもよいが、ユーザ入力インターフェース160又はその他の適切なメカニズムを介してシステムバス121に接続できる。ネットワーク環境では、コンピュータ110又はその一部に関して述べたプログラムモジュールは、リモートメモリ記憶デバイスに格納できる。例えば、図1には、リモートアプリケーションプログラム185がリモートコンピュータ180に常駐しているように示されている。図示されているネットワーク接続は一例であり、コンピュータ間に通信リンクを確立するための他の手段を使用できることは理解されるであろう。
本発明は、実行時に効率よく動作して表層言語形式を語彙形式に変換する有限状態変換器を構成する方法を提示する。
図2及び図3は、それぞれ、本発明の実施形態の基本動作を示す単純なブロック図及び流れ図を示している。図3のステップ300では、表層形式から語彙形式への可能な変換を記述するため言語学者によって一組の正字法規則200が書かれている。既定では、表層形式による各文字は語彙形式によるそれと同じ文字にマッピングされるとする。各規則で、この既定のマッピングの例外を記述する。
一実施形態では、各規則は、既定でないマッピング、左文脈、及び右文脈を定義するコアを含む。これらの要素はそれぞれ、コロンで区切られた文字のペアとして書かれ、左側の文字は表層形式による文字を表し、右側の文字は語彙形式による文字を表す。したがって、コア「i:y」は、表層形式の文字「i」から語彙形式の文字「y」へのマッピングを示す。同様に、「a:b」の左文脈は、表層形式によるコア文字の左に「a」があり、語彙形式によるコア文字の右に「b」があることを示す。通常、左文脈の表層形式による文字と語彙形式の文字は互いに、「a:a」というように、一致する。右文脈の表層形式による文字と語彙形式による文字も、互いに一致する傾向にある。
一実施形態では、規則が存在しうる、存在しなければならない、コアの表層形式の文字が見つかった場合に存在しなければならない、又は存在してはならない、に基づいて、4種類の規則がある。これらの規則はそれぞれ、別々の演算子−>、<−>、<−、及び><により表される。通常、これらの規則は以下の形式で書かれる。
コア演算子左文脈−−−右文脈
例えば、以下のルール:
a:b−>c:c−−−d:d
は、「a」から「b」へのコアのマッピングを表しており、c:cの左文脈とd:dの左文脈がある場合に存在しうる。
正字法規則200は、コンパイラ202に送られる。ステップ302で、コンパイラ202内の規則FST形成204により有限状態変換器が生成される。規則FST形式204は、まず、ステップ301で各規則を解析し、各規則のコア、演算子、左文脈、及び右文脈を識別する。ステップ302で、規則FST形成204により、各コア、左文脈、及び右文脈に対し別々のFSTが形成される。次に、規則の演算子に関連付けられているテンプレートを使用して、各規則の左文脈FSTを規則のそれぞれのコアFSTと結合する。この結合されたFSTは、さらに、同じテンプレートに基づき、規則のそれぞれの右文脈FSTと結合され、規則FSTが形成される。
4種類の演算子があり得るので、演算子の種類毎に1つずつ、4つの別々のテンプレートがある。
図4は、「存在しうる」演算子に対するテンプレート有限状態変換器を示す図である。テンプレートは、3つの状態400、406、及び414を含む。状態400及び406は、有限状態変換器がそれらの状態で終わるときに「成功」の値を生成する受理状態を表す。状態414は、有限状態変換器がその状態で終わるときに「失敗」の値を生成する棄却状態を表す。一般に、本発明に示している図では、受理状態は2つの同心円で表されており、棄却状態は単一の円で表されている。
図4のテンプレートで、規則の左文脈はLs:L1として示されているように状態400と状態406の間の遷移402に沿って挿入される。左文脈は、さらに、自己ループ遷移(self loop transition)408に沿って挿入され、状態406から出て、状態406に戻る。したがって、有限状態変換器では、状態変換器が状態400又は状態406にある間に左文脈が表層形式及び語彙形式で出現した場合、有限状態変換器は状態406に移動する。状態400はさらに既定の遷移404を含み、この遷移により、有限状態変換器は左文脈が出現するまで状態400をループする。
次に、コアCs:Clが、状態406と状態414の間の遷移412に沿って挿入される。コアCsの表層形式を使用し、「*」文字とのペアを形成して、語彙形式による可能な任意の文字を表す。次に、このペアは、状態406から状態412への遷移410に沿って挿入される。そこで、有限状態変換器は、状態406にある場合、コアが出現した場合に状態414に遷移し、左文脈が再び出現した場合に状態406に戻り、他の値が出現した場合に状態400に戻る。
右文脈Rs:Rlが、状態414と状態400の間の遷移416に挿入される。有限状態変換器が状態414にある間に右文脈が出現した場合、有限状態変換器は状態400に戻る。しかし、状態414で他の値が出現した場合、有限状態変換器は失敗し、棄却状態414で終わる。
図5は、「存在してはならない」演算子に対するテンプレート有限状態変換器を示す図である。テンプレートには、3つの受理状態500、502、及び504と1つの棄却状態506が含まれる。左文脈Ls:Llは、状態図500と状態502の間の遷移508と状態502に対する自己ループ遷移510に挿入される。コアCs:Clは、状態502と504の間の遷移512に挿入され、右文脈Rs:Rlは、状態504と506の間に挿入される。
動作時に、図5の有限状態変換器は、状態500又は状態502にある間に左文脈が出現した場合に状態502に遷移する。状態502にある間にコアが出現した場合、有限状態変換器は状態504に遷移する。状態502にある間にコアも左文脈も出現しない場合、有限状態変換器は遷移512に沿って状態500に戻る。状態504にある間に、右文脈が出現した場合、有限状態変換器は遷移514を辿り、棄却状態506に進み、左文脈、コア、及び右文脈のシーケンスに遭遇しているため有限状態変換器は失敗する。状態504で右文脈が出現しない場合、遷移516は状態500に進む。
図6は、コアの意味論的形式が出現した場合に「存在しなければならない」演算子のテンプレートを示す図である。図6のテンプレートは、受理状態600及び602及び棄却状態604を含むが、これらは図4の「存在しうる」テンプレートの状態400、406、及び414に類似している。このテンプレートは、さらに、受理状態606及び棄却状態608を含む。左文脈Ls:Llが、状態602で終わる遷移610、612、及び614に挿入される。コアCs:Clが遷移616に挿入され、コアCsの表層形式による文字が語彙形式に対する「*」文字と結合され、遷移618に挿入される。右文脈Rs:Rlが、遷移620と遷移622に挿入される。
実行されると、図6の有限状態変換器は、左文脈に遭遇したときに状態600から状態602に進む。左文脈が出現しなければ、遷移624に沿って状態600をループする。状態602で、有限状態変換器は、コアが出現すれば状態604に進み、左文脈が再び出現すれば状態602をループし、コアの語彙形式と異なる値を持つコアの表層形式の文字が出現すれば状態606に遷移し、これら以外のすべての場合については状態600に戻る。状態604で、有限状態変換器は、右文脈が出現すれば受理状態600に戻る。右文脈が出現しない場合、有限状態変換器は状態604で失敗する。
状態606で、有限状態変換器は、右文脈が出現すれば失敗状態608に遷移する。そこで、シーケンスに左文脈が含まれ、コアの表層形式とコアの語彙形式以外の文字とがペアになっており、右文脈が出現した場合、テンプレートは状態608で失敗する。状態606で左文脈が出現した場合、有限状態変換器は状態602に戻る。状態606でこれ以外の値があった場合、有限状態変換器は既定の遷移626に沿って状態600に戻る。
図7は、「存在しなければならない」演算子に対するテンプレートを示す図である。このテンプレートは、図6のテンプレートに似ており、3つの受理状態700、702、及び706及び2つの棄却状態704及び708を含む。左文脈は、遷移710、712、及び714で状態702に挿入され、コアは、遷移716で状態704に挿入され、右文脈は、遷移718で状態700に挿入され、遷移720で状態708に挿入される。既定の遷移722及び724が、状態702と706の間、及び状態706と700の間に入る。
図3のステップ302で規則を適切なテンプレートに挿入することにより個々の有限状態変換器が形成された後、図2のコンパイラ202の規則結合器206により、各コアに対する個々の有限状態変換器がコア別に結合される。このような有限状態変換器の結合の一例が図8、図9、及び図10に示されている。図8は、コア「a:b」の第1の有限状態変換器を示しており、図9は、コア「a:b」の第2の有限状態変換器を示している。コア「a:b」の結合有限状態変換器は、図10に示されている。
図8に示されている有限状態変換器は、規則
a:b−>c:c−−−d:d
を表しており、図9に示されている有限状態変換器は、規則
a:b<−d:d−−−e:e
を表している。
これらの規則に関して2点注意すべきである。第1に、これらは異なる演算子を伴うことである。本発明では、有限状態変換器はどのような演算子についても、ステップ304で結合できる。第2に、図8の有限状態変換器の規則の右文脈は、図9の有限状態変換器の左文脈を形成するということである。したがって、これらの規則は逐次実行される。
図8及び図9の有限状態変換器を結合する第1のステップでは、初期状態800及び900を結合して図10の有限状態変換器の単一の初期状態1000を形成する。その後、図8の状態802及び804は図10の有限状態変換器に状態1002及び1004として挿入され、図9の状態902、904、906、及び908はそれぞれ状態1006、1008、1010、及び1012として挿入される。初期有限状態変換器内の状態間の遷移は、2、3例外がある結合有限状態変換器内に保持される。第1に、別の初期状態が単一の初期状態1000により置き換えられているため、初期状態800及び900への遷移及び初期状態800及び900からの遷移は初期状態1000への遷移及び初期状態1000からの遷移に変更される。第2に、図8の有限状態変換器の右文脈は図9の有限状態変換器の左文脈であるため、図8の有限状態変換器の右文脈に対する状態804から状態800への遷移806は、初期状態1000ではなく状態1006で終了するように、結合有限状態変換器内で変更される。これにより、表層シーケンス「cadae」は、状態1000、1002、1004、1006、1008と進み、状態1000に戻ることにより、「cad」と「dae」の両方に対する状態を辿ることができる。
最後に、コア遷移の前の各状態は、すべての受理状態から左文脈遷移を通って到達可能でなければならない。そのために、遷移を付け加える。特に、左文脈「c:c」を使用できるようにするため状態1002への遷移1014及び1016が加えられ、左文脈「d:d」を使用できるようにするため状態1006への遷移1018が加えられる。
同じ初期状態を共有し、各受理状態からコア遷移前の状態への左文脈遷移が必ずあるようにし、右文脈遷移を適切に接続して規則が次から次へとつながるようにすることで、同じコアに対する追加有限状態変換器を図10の有限状態変換器と結合できることに注意されたい。
図11、図12、及び図13は、第2のコア「h:i」について有限状態変換器を結合する他の例を示す図である。図11の有限状態変換器は、規則
h:i−>g:g−−−j:j
に対するものであり、図12の有限状態変換器は、規則
h:i−>k:k−−−n:n
に対するものである。
前の例のように、図11及び図12の有限状態変換器の別々の初期状態1100及び1200は、それぞれ、結合されて、図13の有限状態変換器の単一の初期状態1300となる。個々の初期状態への遷移及び個々の初期状態からの遷移は、単一の初期状態1300への遷移及び単一の初期状態1300からの遷移に変更される。これらの規則は次々につながっていないので、各規則の右文脈は初期状態1300に戻ることに注意されたい。
さらに、受理状態から左文脈を出現させられるように、状態1306及び1308への遷移1302及び1304が追加される。遷移1302では、受理状態1306から状態1308への左文脈「g:g」を使用できる。遷移1304では、受理状態1308から状態1306への左文脈「k:k」を使用できる。
特定のコアに対する有限状態変換器が結合され単一の有限状態変換器にした後、結合コア有限状態変換器を最小にする任意選択のステップが、図2の最小化器(minimizer)208によりステップ306で実行される。このような最小化手法は、当業でよく知られており、到達不可能な状態を除去し、等価な状態が同じ入力値について同じ一組の状態に遷移する等価な状態を結合することを伴う。
図14は、有限状態変換器を最小にする従来技術による一手法の流れ図である。このプロセスはステップ1400から始まり、状態は、受理状態であるのか、棄却状態であるのかに基づいて2つのグループのうちの1つに分けられる。ステップ1402で、各グループ内の状態は、与えられた表層形式/語彙形式のペアについて遷移先のグループに基づきサブグループに分けられる。そこで、受理グループ内の状態に遷移する状態は、一方のサブグループに入れられ、棄却グループ内の状態に遷移する状態は、他方のサブグループに入れられる。
この方法では、ステップ1404で、少なくとも2つのサブグループが可能な表層/語彙形式のペアのどれかについて形成できるかどうかを調べる。サブグループを形成することが可能であれば、ステップ1406でグループは分割され、各サブグループは独立のグループとなる。その後、このプロセスはステップ1402に戻り、グループの集まりをさらに分割できるかどうかを調べる。ステップ1404でグループはもはや分割できなくなっている場合、各グループ内の状態が結合されて単一の状態となり、ステップ1408で、個々の状態への遷移及び個々の状態からの遷移が、その単一の結合された状態へ、またその単一の結合された状態から行われる。
コア有限状態変換器は、ステップ306で最小化された後、図2のコア結合器210により結合されて単一の有限状態変換器になる。図15は、図10及び図13のコア有限状態変換器を結合することにより形成される単一の有限状態変換器を示す図である。
有限状態変換器を結合してコア有限状態変換器を形成した後、コア有限状態変換器を結合するステップで、各コア有限状態変換器の初期状態を単一状態に結合する。そうして、状態1000及び1300は図15で状態1500になり、状態1000及び1300への遷移及び状態1000及び1300からの遷移は状態1500への遷移及び状態1500からの遷移となる。
左文脈を使用できるためには、各左文脈の遷移は、コア遷移の前に各受理状態から適切な状態に届かなければならない。したがって、可能な左文脈のそれぞれを使用できるようにするため、多数の遷移を加えなければならない。例えば、状態1506への左文脈「g:g」を使用できるようにするため、遷移1502及び1504を追加する。さらに、コア有限状態変換器を形成するときに行ったように規則を次々につなげられるようにするには、右文脈の遷移を修正する必要がある。
図15の有限状態変換器は、一組の規則に対する単一の有限状態変換器の小さな例であることに注意されたい。実際には、単一有限状態変換器はかなり大きくなる。
有限状態変換器は、ステップ308で形成された後、最小化器212を使用してステップ310で最小化される。このため、集合有限状態変換器が得られるが、これは正字法規則200のすべてを表す単一有限状態変換器である。その後、この集合有限状態変換器は、ステップ312で実行可能有限状態変換器214に変換される。実行可能有限状態変換器は、実行時に直接実行することができる。実行時に、表層形式216の文字列が実行可能有限状態変換器214に適用される。表層形式に基づき、有限状態変換器214は、状態間を移動し、それにより、語彙形式218を出力する。すべての規則に対して単一の有限状態変換器があるため、実行時での実行は従来技術のシステムよりもかなり高速化される。
本発明は、特定の実施形態を参照しながら説明したが、当業者は本発明の精神と範囲を逸脱することなく形式と内容に変更を加えられることを理解できるであろう。
本発明の実施形態を実施できる好適なコンピューティング環境のブロック図である。 本発明により有限状態変換器を形成し、使用するシステムのブロック図である。 本発明により有限状態変換器を形成する方法の流れ図である。 「存在しうる」有限状態変換器("may occur" Finite State Transducer)の状態図である。 「存在しなければならない」有限状態変換器("must occur" Finite State Transducer)の状態図である。 「コア表層文字が出現した場合に存在しなければならない」有限状態変換器("must occur if a core surface character occurs" Finite State Transducer)の状態図である。 「存在してはならない」有限状態変換器("must not occur" Finite State Transducer)の状態図である。 コアを持つ規則に対する有限状態変換器を示す図である。 図8と同じコアを持つ第2の規則に対する有限状態変換器を示す図である。 図8及び9の有限状態変換器を結合することにより形成される有限状態変換器を示す図である。 コアを持つ規則に対する有限状態変換器を示す図である。 図11と同じコアを持つ第2の規則に対する有限状態変換器を示す図である。 図11及び12の有限状態変換器を結合することにより形成される有限状態変換器を示す図である。 有限状態変換器を最小にする一方法の流れ図である。 図10及び13の有限状態変換器を結合することにより形成される有限状態変換器を示す図である。
符号の説明
100 コンピューティングシステム環境
110 コンピュータ
120 処理ユニット
121 システムバス
130 システムメモリ
131 読み取り専用メモリ(ROM)
132 ランダムアクセスメモリ(RAM)
133 基本入出力システム
134 オペレーティングシステム
135 アプリケーションプログラム
136 その他のプログラムモジュール
137 プログラムデータ
140 インターフェース
141 ハードディスクドライブ
144 オペレーティングシステム
145 アプリケーションプログラム
146 その他のプログラムモジュール
147 プログラムデータ
150 インターフェース
151 磁気ディスクドライブ
152 取り外し可能な不揮発性磁気ディスク
155 光ディスクドライブ
156 取り外し可能な不揮発性光ディスク
160 ユーザ入力インターフェース
161 ポインティングデバイス
162 キーボード
163 マイク
170 アダプタ
171 ローカルエリアネットワーク(LAN)
172 モデム
173 ワイドエリアネットワーク(WAN)
180 リモートコンピュータ
185 リモートアプリケーションプログラム
190 ビデオインターフェース
191 モニタ
195 出力周辺インターフェース
196 プリンタ
197 スピーカー
200 正字法規則
202 コンパイラ
204 規則FST形成
206 規則結合器
208 最小化器
210 コア結合器
214 実行可能有限状態変換器
216 表層形式
218 語彙形式
400、406、414 状態
408 自己ループ遷移
412 遷移
500、502、504 受理状態
506 棄却状態
600、602 受理状態
604 棄却状態
610、612、614 遷移
626 遷移
700、702、706 受理状態
704、708 棄却状態
710、712、714 遷移
716 遷移
718 遷移
720 遷移
722、724 遷移
802、804 状態
1002、1004 状態
902、904、906、908 状態
1006、1008、1010、1012 状態
1100、1200 初期状態
1300 初期状態
1302、1304 遷移
1306、1308 状態
1500 状態
1502、1504 遷移
1506 状態

Claims (21)

  1. 正字法規則をコンパイルして実行可能有限状態変換器を形成する方法であって、
    前記正字法規則のコアに対してコア有限状態変換器を形成し、
    前記正字法規則の文脈に対して文脈有限状態変換器を形成し、
    前記正字法規則の演算子に関連付けられたテンプレートに基づき、前記コア有限状態変換器と前記文脈有限状態変換器とを結合して規則有限状態変換器を形成し、
    該規則有限状態変換器を使用して、実行可能有限状態変換器を作成する
    ことを特徴とする方法。
  2. 前記正字法規則の第2の文脈に対して第2の文脈有限状態変換器を形成し、前記規則有限状態変換器を形成することは、前記テンプレートに基づき前記コア有限状態変換器、前記文脈有限状態変換器、及び前記第2の文脈有限状態変換器を結合することを特徴とする請求項1に記載の方法。
  3. 前記正字法規則は第1の正字法規則であり、前記規則有限状態変換器は第1の規則有限状態変換器であり、第2の正字法規則に対するコア有限状態変換器及び文脈有限状態変換器を形成し、前記第2の規則の演算子に関連付けられたテンプレートに基づき前記コア有限状態変換器及び文脈有限状態変換器を結合して第2の規則有限状態変換器にすることを特徴とする請求項2に記載の方法。
  4. 前記第2の正字法規則の前記テンプレートは、前記第1の正字法規則の前記テンプレートと異なることを特徴とする請求項3に記載の方法。
  5. 前記第1の正字法規則の演算子は、前記第2の正字法規則の前記演算子と異なることを特徴とする請求項4に記載の方法。
  6. 複数の規則有限状態変換器を作成し、各規則有限状態変換器は異なる規則に関連付けられていることを特徴とする請求項1に記載の方法。
  7. 前記規則有限状態変換器を使用することは、同じコアを備える規則有限状態変換器を結合してコア毎に単一の結合コア有限状態変換器を形成することを特徴とする請求項6に記載の方法。
  8. 前記規則有限状態変換器を使用することは、コアに対する前記結合コア有限状態変換器を結合して集合有限状態変換器を形成することを特徴とする請求項7に記載の方法。
  9. 前記集合有限状態変換器を形成する前に各結合コア有限状態変換器を最小にすることを特徴とする請求項8に記載の方法。
  10. コンピュータ実行可能命令を格納するコンピュータ読取可能な媒体であって、
    前記コンピュータ実行可能命令は、
    正字法規則内の演算子を識別するステップと、
    前記演算子に基づいてテンプレートを選択するステップと、
    前記正字法規則の要素を前記テンプレートに挿入し、有限状態変換器を形成するステップと
    を実行することを特徴とするコンピュータ読取可能な媒体。
  11. 前記正字法規則は、表層形式から語彙形式へのマッピングを示すコアを含むことを特徴とする請求項10に記載のコンピュータ読取可能な媒体。
  12. 前記正字法規則は、左文脈及び右文脈を含むことを特徴とする請求項11に記載のコンピュータ読取可能な媒体。
  13. 前記正字法規則の要素を挿入することは、前記コア、左文脈、及び右文脈を前記テンプレートに挿入することを特徴とする請求項12に記載のコンピュータ読取可能な媒体。
  14. 演算子を識別する前記ステップと、テンプレートを選択する前記ステップと、複数の規則のそれぞれに対する要素を挿入して複数の有限状態変換器を形成する前記ステップを実行することを特徴とする請求項10に記載のコンピュータ読取可能な媒体。
  15. 前記有限状態変換器のうちの少なくとも2つを結合して結合有限状態変換器を形成することを特徴とする請求項14に記載のコンピュータ読取可能な媒体。
  16. 少なくとも2つの有限状態変換器を結合することは、同じコアを持つすべての有限状態変換器を結合することを特徴とする請求項15に記載のコンピュータ読取可能な媒体。
  17. 少なくとも2つの有限状態変換器を結合することは、第1のコアを持つすべての有限状態変換器を結合することにより第1の結合有限状態変換器を形成し、第2のコアを持つすべての有限状態変換器を結合することにより第2の結合有限状態変換器を形成することを特徴とする請求項16に記載のコンピュータ読取可能な媒体。
  18. 前記第1の結合有限状態変換器と前記第2の結合有限状態変換器とを結合して集合有限状態変換器を形成することを特徴とする請求項17に記載のコンピュータ読取可能な媒体。
  19. 前記第1の結合有限状態変換器を最小化し、前記第2の結合有限状態変換器を最小化することを特徴とする請求項17に記載のコンピュータ読取可能な媒体。
  20. 前記集合有限状態変換器を最小化することを特徴とする請求項9に記載の方法又は請求項19に記載のコンピュータ読取可能な媒体。
  21. 前記集合有限状態変換器から実行可能有限状態変換器を形成することを特徴とする請求項20に記載の方法又はコンピュータ読取可能な媒体。
JP2004110408A 2003-04-03 2004-04-02 2レベル形態規則をコンパイルするための方法及びその装置 Ceased JP2004334848A (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US10/406,021 US7617089B2 (en) 2003-04-03 2003-04-03 Method and apparatus for compiling two-level morphology rules

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2007302214A Division JP2008108266A (ja) 2003-04-03 2007-11-21 2レベル形態規則をコンパイルするための方法及びその装置

Publications (1)

Publication Number Publication Date
JP2004334848A true JP2004334848A (ja) 2004-11-25

Family

ID=32850637

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2004110408A Ceased JP2004334848A (ja) 2003-04-03 2004-04-02 2レベル形態規則をコンパイルするための方法及びその装置
JP2007302214A Pending JP2008108266A (ja) 2003-04-03 2007-11-21 2レベル形態規則をコンパイルするための方法及びその装置

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2007302214A Pending JP2008108266A (ja) 2003-04-03 2007-11-21 2レベル形態規則をコンパイルするための方法及びその装置

Country Status (5)

Country Link
US (1) US7617089B2 (ja)
EP (1) EP1465081A3 (ja)
JP (2) JP2004334848A (ja)
KR (1) KR20040086825A (ja)
CN (1) CN1609849A (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140136210A1 (en) * 2012-11-14 2014-05-15 At&T Intellectual Property I, L.P. System and method for robust personalization of speech recognition
US8972243B1 (en) * 2012-11-20 2015-03-03 Amazon Technologies, Inc. Parse information encoding in a finite state transducer
US11145296B1 (en) * 2019-03-25 2021-10-12 Amazon Technologies, Inc. Language and grammar model adaptation

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6032111A (en) * 1997-06-23 2000-02-29 At&T Corp. Method and apparatus for compiling context-dependent rewrite rules and input strings
US6760636B2 (en) * 2000-04-03 2004-07-06 Xerox Corporation Method and apparatus for extracting short runs of ambiguity from finite state transducers
US7010476B2 (en) * 2000-12-18 2006-03-07 Xerox Corporation Method and apparatus for constructing finite-state networks modeling non-concatenative processes
US20040193399A1 (en) 2003-03-31 2004-09-30 Microsoft Corporation System and method for word analysis

Also Published As

Publication number Publication date
EP1465081A2 (en) 2004-10-06
CN1609849A (zh) 2005-04-27
US7617089B2 (en) 2009-11-10
KR20040086825A (ko) 2004-10-12
US20040199376A1 (en) 2004-10-07
JP2008108266A (ja) 2008-05-08
EP1465081A3 (en) 2006-07-26

Similar Documents

Publication Publication Date Title
KR102129640B1 (ko) 스트링 변환의 귀납적 합성을 위한 랭킹 기법
JP4901155B2 (ja) 音声認識装置が使用するのに適した文法を生成するための方法、媒体、およびシステム
KR20130111211A (ko) 입-출력 예시를 사용한 텍스트 조작 프로그램 생성
JPH1091630A (ja) テキスト処理方法及び装置
JPWO2009017131A1 (ja) ε遷移を含まない非決定性有限オートマトン生成システムと方法およびプログラム
JPWO2007097208A1 (ja) 言語処理装置、言語処理方法および言語処理用プログラム
CN108595171A (zh) 对象的模型生成方法、装置、设备及存储介质
US6944588B2 (en) Method and apparatus for factoring unambiguous finite state transducers
JP2010134922A (ja) 類似語決定方法およびシステム
US20030004705A1 (en) Method and apparatus for factoring ambiguous finite state transducers
US7107205B2 (en) Method and apparatus for aligning ambiguity in finite state transducers
JP2008108266A (ja) 2レベル形態規則をコンパイルするための方法及びその装置
US20030033135A1 (en) Method and apparatus for extracting infinite ambiguity when factoring finite state transducers
US6965858B2 (en) Method and apparatus for reducing the intermediate alphabet occurring between cascaded finite state transducers
JP7247593B2 (ja) 生成装置、ソフトウェアロボットシステム、生成方法及び生成プログラム
JP6607482B2 (ja) 構文解析装置、学習装置、機械翻訳装置、およびプログラム
JP2005063121A (ja) ソースコード変換装置、及びソースコード変換方法、ソースコード変換プログラム、記憶媒体
KR100912348B1 (ko) 자연어처리를 위한 완성형 한글코드 음소정보 추출 방법
US6760636B2 (en) Method and apparatus for extracting short runs of ambiguity from finite state transducers
JP6805927B2 (ja) インデックス生成プログラム、データ検索プログラム、インデックス生成装置、データ検索装置、インデックス生成方法、及びデータ検索方法
US20020198702A1 (en) Method and apparatus for factoring finite state transducers with unknown symbols
WO2022091536A1 (ja) 意味表現解析システム及び意味表現解析方法
WO2022070422A1 (ja) 計算機システム及び文字認識方法
JP2021085996A (ja) 音声認識システム、音声認識方法
CN117744645A (zh) 一种词性标注器的训练方法、装置、电子设备和存储介质

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070316

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070406

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070706

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20070724

RD13 Notification of appointment of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7433

Effective date: 20071023

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20071023

A045 Written measure of dismissal of application [lapsed due to lack of payment]

Free format text: JAPANESE INTERMEDIATE CODE: A045

Effective date: 20100521