以前、テキストの本文で一般的な単語を見つけるためのコードを作成しましたが、テキストの本文で一般的なフレーズを見つける既知の方法があるかどうか知りたいと思いました。(Javaの場合)
Luceneやnlpなしでこのようなことを達成する方法を知っている人はいますか?他にどのようなツールやソリューションがありますか?
あなたが何をしたいのかを正確に知らずにあなたに答えを与えることは難しいです。問題に対する素朴な答えは、テキストを句読点で分割し、データ構造を使用してテキスト内のすべての文のカウンターを格納し、テキストから解析するすべての文のカウンターをインクリメントします。
たとえば、優先度付きキューを使用して、文をカウンターで並べ替えたままにすることができます。次に、n個の最も一般的な文の最大要素をn回削除するか、カウンターが必要な数より大きくなるまで文をポップします。
ただし、正確な文が必要ない場合は、優先キューに格納する内容を変更するか、別のアルゴリズムを完全に使用する必要があります。
これが少なくとも役立つことを願っています!
少し間接的なアルゴリズム:
並べ替えられたインデックスを作成することができます:すべての文のすべての単語に対して、文を保存し、単語、残りの文、そしてすべての前に並べ替えます。前の部分は関係ありません。
そうすれば、2つ以上の単語の一般的なフレーズを数えることができるはずです。