不均衡なデータを処理する Python ライブラリ トップ 10

不均衡なデータを処理する Python ライブラリ トップ 10

データの不均衡は機械学習における一般的な課題であり、あるクラスの数が他のクラスを大幅に上回り、偏ったモデルや不十分な一般化につながる可能性があります。不均衡なデータを効率的に処理するのに役立つさまざまな Python ライブラリがあります。この記事では、機械学習で不均衡なデータを処理するための上位 10 個の Python ライブラリを紹介し、各ライブラリのコード スニペットと説明を提供します。

1. 不均衡な学習

imbalanced-learn は、データセットの再バランス調整のためのさまざまな手法を提供する scikit-learn の拡張機能です。オーバーサンプリング、アンダーサンプリング、および組み合わせ方式を提供します。

 from imblearn.over_sampling import RandomOverSampler ros = RandomOverSampler() X_resampled, y_resampled = ros.fit_resample(X, y)

2. スモート

SMOTE はデータセットのバランスをとるために合成サンプルを生成します。

 from imblearn.over_sampling import SMOTE smote = SMOTE() X_resampled, y_resampled = smote.fit_resample(X, y)

3. アダシン

ADASYN は、いくつかのサンプルの密度に基づいて合成サンプルを適応的に生成します。

 from imblearn.over_sampling import ADASYN adasyn = ADASYN() X_resampled, y_resampled = adasyn.fit_resample(X, y)

4. ランダムアンダーサンプラー

RandomUnderSampler は、多数派クラスからサンプルをランダムに削除します。

 from imblearn.under_sampling import RandomUnderSampler rus = RandomUnderSampler() X_resampled, y_resampled = rus.fit_resample(X, y)

5. トメックリンク

Tomek Linksは、異なるクラスの最も近い隣接ペアを削除し、複数のサンプルの数を減らすことができます。

 from imblearn.under_sampling import TomekLinks tl = TomekLinks() X_resampled, y_resampled = tl.fit_resample(X, y)

6. SMOTEENN (SMOTE + 編集された最近傍)

SMOTEENN は SMOTE と Edited Nearest Neighbors を組み合わせたものです。

 from imblearn.combine import SMOTEENN smoteenn = SMOTEENN() X_resampled, y_resampled = smoteenn.fit_resample(X, y)

7. SMOTETomek (SMOTE + Tomek リンク)

SMOTEENN は、オーバーサンプリングとアンダーサンプリングのために SMOTE と Tomek Links を組み合わせます。

 from imblearn.combine import SMOTETomek smotetomek = SMOTETomek() X_resampled, y_resampled = smotetomek.fit_resample(X, y)

8. イージーアンサンブル

EasyEnsemble は、多数派クラスのバランスの取れたサブセットを作成するアンサンブル メソッドです。

 from imblearn.ensemble import EasyEnsembleClassifier ee = EasyEnsembleClassifier() ee.fit(X, y)

9. バランスランダムフォレスト分類器

BalancedRandomForestClassifier は、ランダム フォレストとバランスのとれたサブサンプリングを組み合わせたアンサンブル メソッドです。

 from imblearn.ensemble import BalancedRandomForestClassifier brf = BalancedRandomForestClassifier() brf.fit(X, y)

10. RUSBoost分類器

RUSBoostClassifier は、ランダム アンダーサンプリングとブースティングを組み合わせたアンサンブル メソッドです。

 from imblearn.ensemble import RUSBoostClassifier rusboost = RUSBoostClassifier() rusboost.fit(X, y)

要約する

不均衡なデータに対処することは、正確な機械学習モデルを構築する上で非常に重要です。これらの Python ライブラリは、この問題に対処するためのさまざまなテクニックを提供します。データセットと問題に応じて、データを効果的にバランスさせる最も適切な方法を選択できます。

<<:  チンチラの死: 十分に訓練すれば小型モデルでも大型モデルを上回る性能を発揮できる

>>:  ガウス混合モデルを用いた多峰性分布の分離

ブログ    
ブログ    

推薦する

ビッグデータと機械学習は世界のエネルギー業界をどのように変えるのでしょうか?

機械学習、ビッグデータ、自動化は世界の産業システムに革命をもたらしており、エネルギー業界も例外ではあ...

Python+OpenCVを使用して顔追跡を実装するための50行のコード

こんにちは、親愛なる友人の皆さん、またお会いできて嬉しいです。私はただ興味本位でこのToutiaoア...

ガートナー:今後2年間で、テクノロジープロバイダーの3分の1がAIに100万ドル以上を投資する

9月30日、ガートナーの最近の調査によると、人工知能技術計画を持つテクノロジーおよびサービスプロバイ...

人工知能について、2020年に研究すべきトップ10のトレンド

いつの間にか、2019年は完全に私たちの前から去ってしまいました。過去1年を振り返ると、人工知能は間...

レポートの解釈: 企業の 91% が 2023 年に AI がビジネスの成長を促進すると予想

[[245538]]人工知能 (AI) により、早期導入メーカーはすでに分析、ビジネス インテリジェ...

1日1,000個以上の星を生成したテスラのAIディレクターがGPT Pytorchトレーニングライブラリを作成した

GPT モデルが無敵の戦艦だとすると、minGPT はおそらく風や波に乗れる小型ヨットでしょう。最近...

Pythonがリードを拡大、PyTorchはわずか6.4%

最近、有名なデータサイエンスのウェブサイト KDnuggets が、2018 年のデータサイエンスお...

JD X ロボティクス チャレンジが終了、BUPT チームのインテリジェント ロボットが優勝

3月25日、北京郵電大学のウォータードロップチームが優勝トロフィーを掲げ、JD X部門主催のJD 2...

...

アリババクラウド南京雲奇カンファレンス:スマート製造モデルの共有と最先端技術の発表

[51CTO.comより引用] 本日、アリババクラウドカンファレンス南京サミットが正式に開催され、ま...

AIのエネルギー消費は高すぎるため、マイクロソフトはデータセンターの電力供給に原子力発電の利用を検討している

9月26日のニュース: ここ数か月、マイクロソフトは人工知能 (AI) 事業の開発を加速させています...

AIはいかにして「医療の神様」となったのか?

[[236501]] 「彼はただ生き残りたいだけ。どんな罪を犯したのか?」黄茂さんが亡くなった後、...

陳作寧院士:人工知能モデルとアルゴリズムの7つの発展傾向

新しいものに直面したとき、あなたはそれに適応しますか、学びますか、拒否しますか、それとも無視しますか...

蝶ネクタイボイスチェンジャーなしでも1秒でコナンになれる——音声合成+ディープラーニング

[51CTO.com からのオリジナル記事] 「名探偵コナン」を見たことがある友人なら、コナンに出て...