2011-08-18 24 views
3

平均的な長さの約10,000〜7-20語のフレーズがあるとします。私が探しているフレーズにはいくつかの誤りがあるかもしれません。例えば、1つまたは2つの単語が欠けている、いくつかの単語が間違っている、またはいくつかのランダムな単語があります。 「私は私の青い自転車に乗っていたので、クリスティーヌを見ました」、または「私は自転車に乗っていました。私はクリスティンとマリオンを見ました」この問題に対する良いアプローチは何でしょうか?私はLevenhsteinの距離について知っていますが、私はこの問題には簡単で良い解決策がないとも考えています。ファジー文の検索アルゴリズム

+0

結果はどうしますか?それらを特定するだけですか? – DMan

+0

好ましくは、これらをキーとして扱い、対応する値を検索したいと思います。本からの文章、そして対応するページ/章を探したいと思っています。 – fsh

+0

また、盗作検出器を探してみてください –

答えて

1

良いテキスト検索エンジンは、あなたが説明するような機能、fshを提供します。典型的なアプローチは、単語のいずれかが発生した場合に一致するクエリを作成し、互いに近接して発生し、発生確率に反比例して重み付けされた用語の数に基づく重みを使用して結果を順序付けすることである。偶然に共起する可能性が高い。情報検索と呼ばれるこのようなことに関する理論は全部ありますが、おそらくあなたはそれについて知っています。さらに、大文字小文字や句読点などを正規化し、いくつかの基本的な言語変換(ステミング)を適用し、場合によっては類義語の辞書を導入することによって、単語知識の曖昧性が説明されるようにしたいそれを調整するために利用可能です。

オープンソースの検索エンジンを試してみると、this article by Vikは2009年の観点から妥当な調査を行い、this one by Middleton and Baeza-Yatesはそのトピックについての詳細な説明を提供します。