問題タブ [tfidfvectorizer]
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.
scikit-learn - Tfidfvectorizer にパラメーターとして渡されるトークナイザーの予想される戻り値の型は何ですか?
私は見ています:
それはただ言う:
tokenizer : callable または None (デフォルト) 前処理と n-gram 生成ステップを維持しながら、文字列トークン化ステップをオーバーライドします。アナライザー == '単語' の場合にのみ適用されます。
関数は何を返す必要がありますか? 単語のリスト ? この関数によって返されなければならないデータ構造を示す例はどこかにありますか?
編集:たとえば、独自のカスタムトークナイザー関数を作成している場合、何を返す必要がありますか。
scikit-learn - MultinomialNB モデルをトレーニングするために sklearn tfidf 行列を渡すことは適切ですか?
私はいくつかのテキスト分類タスクを行っています。私が観察したことは、(sklearn's からのTfidfVectorizer
) tfidf 行列が与えられた場合、ロジスティック回帰モデルは常に MultinomialNB モデルよりも優れているということです。以下は、両方をトレーニングするための私のコードです。
現在 lr_score > mnb_score 常に。tfidf の用語頻度はクラス情報に基づいて計算されないため、MultinomialNB が tfidf 行列をどの程度正確に使用しているか疑問に思っています。LogisticRegression に行ったのと同じ方法で、tfidf 行列を MultinomialNB にフィードしないでください。
TfidfVectorizer
更新:との結果の違いを理解していますCountVectorizer
。また、sklearn の MultinomialNB.fit() 関数のソース コードを確認したところ、頻度に反してカウントが期待されているようです。これは、以下の私のコメントで言及されているパフォーマンスの向上についても説明します。ただし、どのような状況でも tfidf を MultinomialNB に渡すことが理にかなっているのかどうかはまだ疑問です。sklearn のドキュメントでは、その可能性について簡単に言及されていましたが、詳細についてはあまり言及されていませんでした。
どんなアドバイスでも大歓迎です!
python - Sklearn TFIDF ベクトライザーはスレッドセーフですか?
TfidfVectorizer を構築し、それを自分のデータセットに適合させました
tfidf.transform()
私は今、複数のスレッドでやりたいと思っています。これは安全ですか?