いくつかの英語のテキストの統計を生成していますが、"a" や "the" などの興味のない単語をスキップしたいと考えています。
- これらの面白くない単語のリストはどこにありますか?
- これらの単語のリストは、英語で最も頻繁に使用される単語のリストと同じですか?
更新: これらは明らかに「ストップ ワード」と呼ばれ、「スキップ ワード」ではありません。
いくつかの英語のテキストの統計を生成していますが、"a" や "the" などの興味のない単語をスキップしたいと考えています。
更新: これらは明らかに「ストップ ワード」と呼ばれ、「スキップ ワード」ではありません。
Google に入力する魔法の言葉は「ストップ ワード」です。これにより、合理的なリストが表示されます。
MySQL には組み込みのストップ ワードのリストもありますが、これは私の好みには包括的すぎます。たとえば、私たちの大学の図書館では、「第三世界」の「第三」がストップ ワードと見なされていたため、問題がありました。
これらはストップワードと呼ばれます。このサンプルを確認してください
使用している英語のサブドメインによっては、独自のストップ ワード リストを作成する必要がある場合があります。一部の一般的なストップ ワードは、ドメイン内で意味を持つ場合があります。たとえば、「are」という単語は、実際には一部のドメインの略語/頭字語である可能性があります。逆に、アプリケーションによっては、一般的な英語のドメインでは無視したくないドメイン固有の単語を無視したい場合があります。たとえば、病院のレポートのコーパスを分析している場合、「履歴」や「症状」などの単語はすべてのレポートに含まれており、役に立たない可能性があるため、無視したい場合があります (単純な逆索引の観点から)。
それ以外の場合は、Google から返されたリストに問題はありません。Porter Stemmerはこれを使用し、Lucene 検索エンジンの実装はこれを使用します。
大規模な txt コーパスで単語の頻度に関する統計を取得します。頻度 > ある数のすべての単語を無視します。
通常、これらの単語は最も頻度の高いドキュメントに表示されます。単語のグローバルリストがあると仮定します。
{ Word Count }
単語のリストを使用して、単語を最大カウントから最小カウントの順に並べると、逆対数関数であるグラフ(カウント(y軸)と単語(x軸))が作成されます。すべての停止単語は次のようになります。左側にあり、「ストップワード」の停止点は、最高の一次導関数が存在する場所になります。
この解決策は、辞書の試みよりも優れています。
辞書の試みはより良いです:
少し前にlucene.netで検索アプリを作った時、ここのドイツ語のストップワードリストを使ったと思います。サイトには英語のリストも含まれており、サイト上のリストは明らかに lucene プロジェクトがデフォルトとして使用するものでもあります。