GitHubじゃ!Pythonじゃ!

GitHubからPython関係の優良リポジトリを探したかったのじゃー、でも英語は出来ないから日本語で読むのじゃー、英語社会世知辛いのじゃー

scikit-learn-contrib

imbalanced-learn – サンプリング中に実行するPythonモジュールと、さまざまな手法でオーバーサンプリング

投稿日:

サンプリング中に実行するPythonモジュールと、さまざまな手法でオーバーサンプリングします。 http://imbalanced-learn.org

不均衡な学習

imbalanced-learnは、強力なクラス間の不均衡を示すデータセットでよく使われるいくつかのリサンプリング手法を提供するpythonパッケージです。 これはscikit- learnプロジェクトと互換性があり、 scikit- learn-contribプロジェクトの一部です。

ドキュメンテーション

インストールドキュメント、APIドキュメント、およびサンプルは、 ドキュメントに記載されています

インストール

依存関係

imbalanced-learnは、Python 2.7とPython 3.5、および3.6で動作することがテストされています。 依存関係の要件は、最後のscikit-learnリリースに基づいています。

  • scipy(> = 0.13.3)
  • (> = 1.8.2)
  • scikit-learn(> = 0.19.0)

さらに、サンプルを実行するには、matplotlib(> = 2.0.0)が必要です。

インストール

PyPiのリポジトリで現在不均衡な学習が利用可能で、pip経由でインストールできます:

pip install -U imbalanced-learn

このパッケージはAnaconda Cloudプラットフォームでもリリースされています。

conda install -c conda-forge imbalanced-learn

必要に応じて、それを複製してsetup.pyファイルを実行することもできます。 GitHubからコピーを取得し、すべての依存関係をインストールするには、次のコマンドを使用します。

git clone https://github.com/scikit-learn-contrib/imbalanced-learn.git
cd imbalanced-learn
pip install .

またはpipとGitHubを使ってインストールしてください:

pip install -U git+https://github.com/scikit-learn-contrib/imbalanced-learn.git

テスト

インストール後、ノーズを使用してテストスイートを実行できます。

make coverage

開発

このscikit-learn-contribの開発は、scikit-learnコミュニティの1つと一致しています。 したがって、 開発ガイドを参照することができます。

科学的な出版物で不均衡な学習を使用する場合は、次の論文の引用を感謝します。

@article{JMLR:v18:16-365,
author  = {Guillaume  Lema{{\^i}}tre and Fernando Nogueira and Christos K. Aridas},
title   = {Imbalanced-learn: A Python Toolbox to Tackle the Curse of Imbalanced Datasets in Machine Learning},
journal = {Journal of Machine Learning Research},
year    = {2017},
volume  = {18},
number  = {17},
pages   = {1-5},
url     = {http://jmlr.org/papers/v18/16-365}
}

ほとんどの分類アルゴリズムは、各クラスの標本数がおおよそ同じ場合にのみ最適に実行されます。 少数派が1つ以上のクラスよりも大幅に数が多い非常に歪んだデータセットは、同時により多くの共通性が増していく中で、挑戦であることが証明されています。

この問題に対処する1つの方法は、データセットを再サンプリングして、この不均衡を相殺し、そうでない場合よりも堅牢で公正な決定境界に到達することを期待することです。

リサンプリング技術は2つのカテゴリに分かれています。
  1. 多数クラスのアンダーサンプリング。
  2. 少数派クラスのオーバーサンプリング。
  3. オーバーサンプリングとアンダーサンプリングを組み合わせる。
  4. アンサンブルバランスセットを作成します。

以下は、このモジュールで現在実装されているメソッドのリストです。

  • アンダーサンプリング
    1. 置換えによるランダム過半数アンダーサンプリング
    2. 大多数の少数のTomekリンクの抽出[1]
    3. クラスタの中心とのアンダーサンプリング
    4. ニアミス – (1&2&3) [2]
    5. 凝縮された最近隣[3]
    6. 片面選択[4]
    7. 近所清掃ルール[5]
    8. 編集された最近隣[6]
    9. インスタンス硬度閾値[7]
    10. 繰り返し編集された最近の隣人[14]
    11. AllKNN [14]
  • オーバーサンプリング
    1. 置換を伴うランダムな少数オーバーサンプリング
    2. SMOTE – 合成マイノリティオーバーサンプリング手法[8]
    3. bSMOTE(1&2) – タイプ1とタイプ2の境界線SMOTE [9]
    4. SVM SMOTE – サポートベクターSMOTE [10]
    5. ADASYN – 不均衡学習のための適応合成サンプリング手法[15]
  • オーバサンプリングに続いてアンダーサンプリング
    1. SMOTE + Tomekリンク[12]
    2. SMOTE + ENN [11]
  • アンサンブルサンプリング
    1. EasyEnsemble [13]
    2. バランスカスケード[13]

さまざまなアルゴリズムがsphinx-galleryにあります。

参考文献:

[1] :I. Tomek、 “CNNの2つの修正”、Systems、Man、and Cyber​​netics、IEEE Transactions on、vol。 6、pp769-772、2010。
[2] I. I. Mani、I. Zhang。 “不均衡なデータ分布へのkNNアプローチ:情報抽出を伴うケーススタディ、” 2003年の不均衡なデータセットからの学習に関するワークショップの議事録。
[3] :P.Hart、 “凝縮された最近傍法則”、情報理論、IEEEトランザクションズ、Vol。 14(3)、pp。515-516、1968。
[4] :Kubat、S. Matwin、 “不均衡なトレーニングセットの呪いに対処する:片側選択”、ICML、vol。 97巻、179-186頁、1997年。
[5] :J. Laurikkala、 “クラス分布のバランスをとることによって難しい小さなクラスの識別を改善する”、Springer Berlin Heidelberg、2001。
[6] :D. Wilson、 “編集データを用いた最近傍ルールの漸近特性、” IEEE Transactions in Systems、Man、and Cyber​​netrics、vol。 2(3)、pp。408-421、1972。
[7] :D. Smith、Michael R.、Tony Martinez、Christophe Giraud-Carrier。 “データ複雑度のインスタンスレベルの分析”機械学習95.2(2014):225-256。
[8] :NV Chawla、KW Bowyer、LOHall、WP Kegelmeyer、 “SMOTE:人工知能研究論文集、321-357、2002年。
[9] :H.Han、W.Wen-Yuan、M.Bing-Huan、 “Borderline-SMOTE:不均衡なデータセット学習における新しいオーバーサンプリング方法”、インテリジェントコンピューティングの進歩、878-887、2005。
[10] :HM Nguyen、EW Cooper、Kamei、 “不均衡なデータ分類のための境界線のオーバーサンプリング”、ナレッジエンジニアリングとソフトデータパラダイム、3(1)、pp.4-21、2001。
[11] :G. Batista、RC Prati、MC Monard。 ACM Sigkdd Explorations Newsletter 6(1)、20-29、2004 “機械学習訓練データのバランスをとるためのいくつかの方法の挙動の研究”
[12] :G. Batista、B. Bazzan、M. Monard、「キーワードの自動注釈のためのトレーニングデータのバランス調整:事例研究」、WOB、10-18、2003。
[13] 1、2 :XY Liu、J. Wu and ZH Zhou、 “クラスインバランス学習のための探索的アンダーサンプリング”、IEEE Systems、Man and Cyber​​netics、Part B(Cyber​​netics)、vol。 39、no。 2、pp。539-550、2009年4月。
[14] 1、2 :I.Tomek、 “編集された最近隣のルールを用いた実験”、IEEE、Systems、Man、and Cyber​​netics、vol。 6(6)、pp.448-452、1976年6月。
[15] :He、Haibo、Yang Bai、Edwardo A. Garcia、およびShutao Li。 “ADASYN:不均衡な学習のための適応的な合成サンプリング手法”、ニューラルネットワークに関するIEEE国際合同会議(コンピュータ知能に関するIEEE世界会議)、pp。1322-1328、2008。







-scikit-learn-contrib
-, , , ,

執筆者: