問題タブ [trigram]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
0 に答える
292 参照

postgresql - 最も頻繁に使用される単語によるオートコンプリート - postgres または lucene?

Postgres とそのフルテキスト機能を使用して、システム内のドキュメント (投稿コンテンツ) を検索していますが、非常にうまく機能しています。

オートコンプリートのために、ドキュメントで使用されているすべての単語を含むインデックス (辞書?) を作成し、最も頻繁に使用される単語で検索したいと考えています。私たちは常に1つの単語を検索します。フレーズを検索することはありません。

だから私が書くと:

  • 「目」

私は受け取ります(私たちの文書で最も頻繁に使用される単語を想定してください):

  • "これ"
  • "そこの"
  • 「想い」
  • ...

Postgresでそれを行う方法は? それとも、apache lucene / solr のようなより高度なソリューションが必要でしょうか?

postgres 全文検索 (字句を提供する) も postgres trigram も、この作業には適していないようです。それとも私が間違っているのでしょうか?

テキストを手動で解析したり、エラーが発生しやすいすべての英語のストップワードを無視したりしたくありません。Postgres は、lexem インデックスを構築する際にこれをうまく処理します。しかし、語彙の代わりに、正規化せずに単語辞書を作成して検索する必要があります

ご協力いただきありがとうございます

0 投票する
1 に答える
695 参照

python - nltk.KneserNeyProbDist は、ほとんどのトライグラムに 0.25 の確率分布を与えています

私はnltkを使用して言語モデリングに取り組んでいます。このエッセイをmypet.txtファイルのコーパスとして使用しています。ほとんどのtrigramで 0.25 の Kneser Ney 確率分布が得られます。どうしてか分かりません。そうですか?なぜそうしているのですか?これは私のword_ngram.pyファイルです:

これは、utf-8 文字を処理している私のpreprocessor.pyファイルです。

これは、utf-8 char を ascii char に置き換えるために使用したutf_to_ascii.jsonファイルです。

これは、いくつかのトライグラムの出力例です。

0 投票する
1 に答える
1376 参照

python - nltk python でトライグラムの conditional_frequency_distribution と conditional_probability_distribution を計算する方法

言語モデルの条件付き確率分布を計算したいのですが、生成できない条件付き頻度分布が必要なため、計算できません。これは私のコードです:

しかし、私はこのエラーが発生しています:

これは、utf-8 文字を処理している私の preprocessor.py ファイルです。

これは、utf-8 char を ascii char に置き換えるために使用した utf_to_ascii.json ファイルです。

NLTKのトリグラムの条件付き頻度分布を計算するにはどうすればよいですか?