問題タブ [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.
tensorflow - tensorflow の ImageDataGenerator Flow From Directory で SMOTE を使用する
Python3.6、TF 1.15、imblearn 0.0 を使用
私は不均衡なデータセットを持っています.3つのクラス、2つは偶数、1つは低いです。データセットに SMOTE を適用しようとしていますが、ディレクトリからのフローを使用しており、next(train_generator) を使用してデータ ジェネレーターから X_train と y_train を取得できることがわかりました。
問題は、ジェネレーターが 1 つのクラスのみを y_train に出力しているように見えることです。Ravel を使用すると、次のエラーが表示されます。
.ravel() なしで y_train をチャッキングすると、次のようになります。
これが私のコードです。アドバイスをいただければ幸いです。ありがとう :)
python - ベクトル予測用の SMOTE の構成
[1, 0, 0]
私は、ラベルがor[0, 1, 0]
や[0, 0, 1]
typeなどのワンホット エンコードされたベクトルとしてエンコードされるマルチラベル予測タスクに取り組んでいますndarray
。
データセットが不均衡です。したがって、私は SMOTE を使用しています。これは機能し、すべての少数派クラスをアップサンプリングします (多数派クラスが保持するのと同じ数のレコードをアップサンプリングします)。
今、私はそれほど多くのレコードをアップサンプリングしたくありません。ドキュメントによると、およびsampling_strategy
で dict を使用および提供できます。key = class label
value = total records
ただし、ndarray
as キーを dict ( TypeError: unhashable type: 'numpy.ndarray'
) に追加することはできません。ここで最善の方法は何ですか?SMOTE は明らかにこれらのワンホット エンコードされたベクトルを処理できtotal records
ます。
python - columnTransformer 内で SMOTE を実装するにはどうすればよいですか?
カラム トランスフォーマー内に SMOTENC を実装しようとしています。しかし、私はエラーが発生しています。コードとエラーを以下に示します。
これを実行しているときに、エラーが発生します: unpack するのに十分な値がありません (期待される 3、取得 2)。より正確に
上記のエラーを解決するにはどうすればよいですか?