Earley Parserは、DFAのLevenshtein Automata Algoのようなファジーパーサーにできますか?


10

DFAと実行時に入力された単語のLevenshtein Automataを実行して、あいまいな解析を実行する方法があります(タイプミスがある場合でも文字列を受け入れます)。Earleyパーサーでも同様のことができますか?アルゴリズムを理解するのは難しいと思います。この質問に答えることは言うまでもありません。


1
まあ、PDAはNFAの多くの操作に対して閉鎖されているので、これは原則的に可能であるはずです。Earleyの調整は、アイテムでカウンターを使用することが許可されているため、おかしな練習のようです。何か不足していますか?
ラファエル

@Raphaelはいこれは一般的な考えです。ユーザーの知っていることまたは知らないことを評価することは難しいので、私の答えは長くなります。
バブー2015

plzは、 "Levenshtein Automata"の参照/スケッチ定義を引用しています。対象となる可能性のあるものを知っていますが、どちらを参照していますか?
vzn 2015

回答:


8

答えはイエスです。ただし、同じ機能を持つ単純なものがあるため、Earleyパーサーではそれを行いません。

基本的に、Earleyパーサーは、文法が曖昧な場合に、特定の文字列に対して可能なすべての解析を生成する一般的なコンテキストフリーパーサーのファミリーに属します。

これらのパーサーを理解するには、少なくとも2つの方法があります。

  • 入力文字列の文法に対応するプッシュダウンオートマトンの動的プログラミング解釈として;

  • 文法と有限状態オートマトンの交差の構築として。

単一の文字列を解析する場合、考慮される有限状態オートマトンは、 解析される文字列のみを一度に1シンボルずつ認識する線形オートマトンです(状態の数は| w | + 1)。あなたがFAのクロス製品構造に適用した場合AとCF garmmar G(バーヒレル、ペルリス、シャミール1961)は、新しい文法で新しいCF文法取得Fを生成LA LGを。通常見過ごされている興味深い点は、FGによって使用される解析ツリーを保持することです。w|w|+1GFLLGFG、非ターミナルの名前変更まで(クロス積による)。

したがってFA場合、あなたの入力文字列を生成し、文法Fは、 (それが中である場合にのみ、その文字列を生成しますLG 、それ以外の場合は空の言語を生成)。さらに、Gがそれを生成するために使用できるすべての解析ツリーを使用して生成します。FLGG

この文法は通常「共有解析フォレスト」と呼ばれるものであり、すべての一般的なCF解析アルゴリズムは、CYK、Earley、一般化されたLRまたはLLなどに関係なく、クロス積構成の多かれ少なかれ最適化されたバージョンです。だから私が言っていることはすべて彼らにも当てはまる。F

しかし、ご覧のように、これは、誰かが興味を持っている場合は、通常のセット全体を解析することに一般化されます。

ww

GF

必要に応じて、これを使用して最小限の距離で弦のみを維持できます。

ただし、有限状態機械との合成は結合的であるため、これは少し改善できます。

GwΣ

以前と同じ結果を得るためにその構造を枝刈りするのは簡単ですが、最善の方法は、Earleyを含む文献のほとんどのパーサーで使用されている動的プログラミング組織など、より制御された交差構造であり、生成を回避するために使用します距離を計算し、目的のしきい値を超えたときに計算パスを中止することによる無用のルール。動的プログラミングを使用して、入力までの距離が最も短い文字列の解析フォレスト(または解析ツリー)を直接計算することもできます。


これは役立つと思いますが、質問を「読みすぎ」ている可能性があるため、「これはまさにあなたの質問です」などと言っても正確ではありません。あなたは厳密に形式化されていないやや曖昧な質問をし、自分で形式化しました(試みましたか?)。元のややあいまいなアイデアを形式化するには、おそらく複数の方法があります。レーベンシュタインDFAの構造が何をするかを最初に注意深く定義し(いくつかの既知/調査済みのものがありますが、どの構造について話しているのか)、この概念をCFLに一般化する方法を説明すると役立つと思います。
2015

1
私は実際には、互いに補完するさまざまな形式化を行います。プロセスでの重みの正確な使用など、私が理解しなかった微妙な点があります。これは、取得したい正確な結果によって異なります。私の目的は、自分の意見にほとんど関心のない答えを出すことだけでなく、問題をより広く理解することです。使用される編集距離の選択は重要ではありません。これは、重み付き有限状態トランスデューサーで表現できるものであれば何でも機能します。
バブー2015
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.