不均衡なデータを処理する 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 ライブラリは、この問題に対処するためのさまざまなテクニックを提供します。データセットと問題に応じて、データを効果的にバランスさせる最も適切な方法を選択できます。

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

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

ブログ    
ブログ    

推薦する

人工知能の発展は、人間社会が現実から仮想へと向かう傾向を反映している。

人類は遊牧から農耕へ、そして農耕から工業化へと移行しました。工業化の後半は情報化であり、情報化の究極...

...

...

...

CNN が RNN に取って代わる?シーケンスモデリングで再帰ネットワークが不要になったとき

過去数年間はリカレントニューラルネットワークが主流でしたが、現在では自己回帰 Wavenet や T...

...

LeCun が予測した自己教師モデルはここにあります: 最初のマルチモーダル高性能自己教師アルゴリズム

自己教師あり学習は、さまざまなタスクで階層的な特徴を学習し、実生活で利用可能な膨大なデータをリソース...

Baidu Brainの生体検知+合成画像識別、顔の「写真活性化」ブラックマーケット攻撃を1秒で捉える

現在、顔認識技術の成熟度が増すにつれ、特にDeepFakeやFaceSwapなどの顔編集・生成技術の...

AIによって非効率と判断され、150人の労働者が解雇された。「労働者をコントロールできるのはまさに人工知能だ」

この記事はAI新メディアQuantum Bit(公開アカウントID:QbitAI)より許可を得て転載...

エッジコンピューティングの価値はデータにある

企業はビジネスニーズの変化に応じてスケールアップおよびスケールダウンできるコンピューティングおよびス...

がん治療への新たな希望:AIが科学者の生きた人間の細胞の観察を向上

[[230060]]細胞生物学者と細胞研究者は、新しい細胞モデルツールを利用できるようになりました。...

データサイエンスと人工知能の専門家がプログラミングスキルを向上させる方法

[[379310]]ビッグデータダイジェスト制作出典: medium編集者: Hippoプログラミン...

マスク氏の元従業員が「宇宙工場」を建設し、スペースXのロケットで打ち上げられた新型コロナウイルス治療薬パクスロビドの製造を開始した。

人類が宇宙に建設した最初の工場がここにあります。しかも無人工場です!先週、この衛星はマスク氏のスペー...

...