1. ホーム
  2. python

[解決済み] scikit CountVectorizerのmin_dfとmax_dfを理解する。

2022-11-20 10:34:11

質問

CountVectorizerに入力するテキストファイルが5つあります。このとき min_dfmax_df をCountVectorizerのインスタンスに追加する場合、最小/最大文書頻度とは正確に何を意味するのでしょうか?それはその特定のテキストファイルにおける単語の頻度なのでしょうか、それともコーパス全体(5つのテキストファイル)における単語の頻度なのでしょうか?

の場合、どのような違いがあるのでしょうか? min_dfmax_df は整数または浮動小数点数として提供されますか?

ドキュメント は完全な説明を提供していないようですし、これら2つのパラメータの使用を実証する例も提供していません。どなたか、以下のような説明や例を提供していただけませんか? min_dfmax_df ?

どのように解決するのですか?

max_df が表示される用語を削除するために使用されます。 あまりに頻繁に コーパス特有のストップワードとして知られています。例えば

  • max_df = 0.50 に現れる用語を無視することを意味します。 50%以上の文書に現れる用語を無視する という意味です。
  • max_df = 25 に現れる用語を無視することを意味します。 25以上の文書 という意味です。

デフォルトの max_df1.0 に現れる用語を無視することを意味します。 に100%以上現れる用語を無視することを意味します。 という意味です。したがって、デフォルトの設定では、どの用語も無視されません。


min_df は、以下のように表示される用語を削除するために使用されます。 頻度が低すぎる . 例えば

  • min_df = 0.01 に現れる用語を無視することを意味します。 1%未満の用語は無視する という意味です。
  • min_df = 5 に現れる用語を無視することを意味します。 5つ以下の文書 という意味です。

デフォルトの min_df1 に現れる用語を無視することを意味します。 1つ以下の文書 という意味です。したがって、デフォルトの設定では、どの用語も無視されません。