問題タブ [imbalanced-data]
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.
pytorch - BCEWithLogitsLoss の重み
マルチラベル、マルチクラスの分類タスクで問題に直面しています。サイズ 33000 のデータセットがあり、各サンプルには 104 クラスが含まれています。[1, 0, 1, 0, 0, …]、[0, 1, 1, 0, 1, …]、[1, 0, 0, 0] (それぞれlabel には少なくとも 1 つの要素 1 が含まれます)、[0, 0, 0, …]、[0, 0, 0, …] などの 16500 個のラベル (すべてのラベルのすべての要素が 0)。各クラスの pos_count を計算するとき、クラス 0 の数 pos_count_0 は、データセット内の各ラベルの最初の位置に表示される 1 の数です。クラス 1 の場合、pos_count_1 は 2 番目の位置にある 1 の数などです。その後、クラス 0 の pos_weight は (33000-pos_count_0)/pos_count_0、クラス 1 の pos_weight は (33000-pos_count_1)/pos_count_1 ? クラスの neg_count と pos_count がどのように計算されるか、少し混乱しています。
tensorflow - TypeError: 'int' オブジェクトは添字可能ではありません (imblearn ジェネレーター)
不均衡なテキストベースのデータセットを扱っています。次のようにモデルをトレーニングするときに、tensorflow バランス バッチ ジェネレーターを使用してバランス バッチを作成しました。
しかし、次のエラーが発生しました:
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) と見なされている理由がわかりません。
誰かがここで私を助けてくれますか?