問題タブ [smote]
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.
python-3.x - 非常に不均衡な分類ステップのステップ。データをアップサンプリングしてアンダーサンプリングするか、不均衡なクラスを単にアップサンプリングするか
非常に不均衡なバイナリ (はい/いいえ) 分類データセットがあります。データセットには現在、約 0.008% の「はい」があります。
SMOTE を使用してデータセットのバランスを取る必要があります。
不均衡に対処するための2つの方法に出会いました。変数に対して MinMaxScaler を実行した後の次の手順
これにより、データセットのサイズが 240 万行から 732000 行に減少し、不均衡が 0.008% から 33.33% に改善されます。
このアプローチをしながら
これにより、行数が 240 万行から 480 万行に増加し、不均衡は 50% になりました。
これらの手順の後、データをトレーニング テスト データセットに分割する必要があります。
ここで正しいアプローチは何ですか?
これらの方法を選択する前に、どのような要因を考慮する必要がありますか?
サンプリングされていないデータに対して X_test、y_test を実行する必要があります。これは、データを分割し、トレーニング データに対してのみアップサンプリング/アンダーサンプリングを行うことを意味します。
ありがとうございました。
JD
python - SMOTE は、全カテゴリ データセットの配列サイズ / ValueError を指定しています
カテゴリ データのオーバーサンプリングに SMOTE-NC を使用しています。1 つの機能と 10500 のサンプルしかありません。
以下のコードを実行すると、エラーが発生します。
コード:
私が正しく理解している場合、形状はX_new
(n_samples, n_features) である必要があり、これは 10500 X 1 です。ValueError で形状 = (10500,0) と見なされている理由がわかりません。
誰かがここで私を助けてくれますか?
r - 合成データの作成 - データセットのバランスを取る
ポケモンのデータセットを分析しています。ランダム フォレストを作成して、ポケモンが伝説になるかどうかを予測したいと思います。
現在、118 個の観測値と 44 列で構成されるトレーニング データセットがあります。
ご覧のとおり、ダミー変数がありますが、ターゲット クラスもあります。is_legendary
問題は、データのバランスが取れていないことです。伝説のポケモンに関連する観測の数は、伝説のポケモン以外のポケモンよりも大幅に少なくなっています。そのため、合成データを作成してデータセットのバランスを取りたいと考えています。とのことSMOTE function
でしたが、エラーが発生しました。以下のコード全体をご覧ください。
エラーは次のとおりです。