-1

私はKaggleのテキスト分類競争のためにsklearnを使ってロジスティック回帰モデルを実装しています。sklearnのクロスバリデーションを使用してもロジスティック回帰過ぎ?

  1. ユニグラムを使用すると、23,617個の機能があります。 mean_test_scoreクロスバリデーションの検索(sklearnのGridSearchCV)は、私がKaggleから得たスコアに似ています。最高のモデルを使用しています。

  2. bigramを使用すると1,046,524個の機能があります。 GridSearchCVは私にunigramと比較してより良いmean_test_scoreを与えますが、この新しいモデルを使用して、私はKaggleのはるかに低い得点を得ました。

私はあまりにも多くの機能を持っているので、理由はあまりにもふさわしいかもしれないと思います。私はGridSearchCVを5倍、または2倍に設定しようとしましたが、スコアはまだ矛盾しています。

実際に、検証段階でも、2番目のモデルがオーバーフィットしていることを実際に示していますか?もしそうなら、sklearnを使ってロジスティックモデルの正則化用語を調整するにはどうすればいいですか?どんな提案も感謝しています!

+0

誰でも、あなたのコメントを追加してください。だから私は将来もっと良い質問をすることができます。 –

答えて

1

あなたがsklearnを使用していると仮定します。チューニングパラメータmax_dfmin_df、およびmax_featuresを調べてみることもできます。これらをGridSearchに投げるには時間がかかるかもしれませんが、興味深い結果が返ってくる可能性があります。私はこれらの機能がsklearn.feature_extraction.text.TfidfVectorizerに実装されていることを知っていますが、私はそれらが他の場所でも使用されていると確信しています。本質的には、あまりに多くのグラムを含めるとオーバーフィットにつながる可能性があります。ドキュメントの頻度が低い、または高いグラムが多すぎると同じことです。

+0

'mean_test_score'がクロスバリデーション検索でかなり良い理由を知っていますか?これは、あらかじめ検証が行われているためですか? –

関連する問題