0

1000 サンプルのデータを含むサンプル データセットが与えられた場合、10000 行のデータを取得するためにデータを前処理したいとします。したがって、データの元の各行は 10 個の新しいサンプルにつながります。さらに、モデルをトレーニングするときに、クロス検証も実行できるようにしたいと考えています。私が持っているスコアリング関数は、元のデータを使用してスコアを計算するため、生成されたデータではなく、元のデータでもクロス検証スコアリングが機能するようにします。生成されたデータをトレーナーに供給しているため (RandomForestClassifier を使用しています)、クロス検証に頼って元のサンプルに従ってデータを正しく分割することはできません。

やろうと思ったこと:

  • カスタム特徴エクストラクタを作成して特徴を抽出し、分類子にフィードします。
  • 特徴抽出器をパイプラインに追加し、たとえば GridSearchCv にフィードします
  • 元のデータを操作して、選択したパラメーターのセットを指定してモデルをスコアリングするカスタム スコアラーを実装します。

私が達成しようとしていることのためのより良い方法はありますか?

Kaggleで現在行われているコンテストに関連して質問しています

4

1 に答える 1

0

おそらく、展開されたサンプルで層化交差検証 (層化 K フォールドまたは層化シャッフル分割など) を使用し、元のサンプル idx を層化情報として使用して、モデル評価で元のサンプルを無視するカスタム スコア関数と組み合わせて使用​​できます。

于 2013-06-03T08:37:25.567 に答える