Py之imblearn:imblearn/imbalanced-learn库的简介、安装、使用方法之详细攻略

简介: Py之imblearn:imblearn/imbalanced-learn库的简介、安装、使用方法之详细攻略

imblearn/imbalanced-learn库的简介


       imblearn/imbalanced-learn是一个python包,它提供了许多重采样技术,常用于显示强烈类间不平衡的数据集中。它与scikit learn兼容,是 scikit-learn-contrib 项目的一部分。


在python3.6+下测试了imbalanced-learn。依赖性要求基于上一个scikit学习版本:


scipy(>=0.19.1)

numpy(>=1.13.3)

scikit-learn(>=0.22)

joblib(>=0.11)

keras 2 (optional)

tensorflow (optional)




imblearn/imbalanced-learn库的安装


pip install imblearn

pip install imbalanced-learn

pip install -U imbalanced-learn

conda install -c conda-forge imbalanced-learn


image.png




imblearn/imbalanced-learn库的使用方法


        大多数分类算法只有在每个类的样本数量大致相同的情况下才能达到最优。高度倾斜的数据集,其中少数被一个或多个类大大超过,已经证明是一个挑战,但同时变得越来越普遍。

解决这个问题的一种方法是通过重新采样数据集来抵消这种不平衡,希望得到一个比其他方法更健壮和公平的决策边界。


Re-sampling techniques are divided in two categories:


Under-sampling the majority class(es).

Over-sampling the minority class.

Combining over- and under-sampling.

Create ensemble balanced sets.

Below is a list of the methods currently implemented in this module.


Under-sampling


Random majority under-sampling with replacement

Extraction of majority-minority Tomek links [1]

Under-sampling with Cluster Centroids

NearMiss-(1 & 2 & 3) [2]

Condensed Nearest Neighbour [3]

One-Sided Selection [4]

Neighboorhood Cleaning Rule [5]

Edited Nearest Neighbours [6]

Instance Hardness Threshold [7]

Repeated Edited Nearest Neighbours [14]

AllKNN [14]

Over-sampling


Random minority over-sampling with replacement

SMOTE - Synthetic Minority Over-sampling Technique [8]

SMOTENC - SMOTE for Nominal Continuous [8]

bSMOTE(1 & 2) - Borderline SMOTE of types 1 and 2 [9]

SVM SMOTE - Support Vectors SMOTE [10]

ADASYN - Adaptive synthetic sampling approach for imbalanced learning [15]

KMeans-SMOTE [17]

Over-sampling followed by under-sampling


SMOTE + Tomek links [12]

SMOTE + ENN [11]

Ensemble classifier using samplers internally


Easy Ensemble classifier [13]

Balanced Random Forest [16]

Balanced Bagging

RUSBoost [18]

Mini-batch resampling for Keras and Tensorflow

 


相关文章
|
机器学习/深度学习 算法 TensorFlow
Py之imblearn:imblearn/imbalanced-learn库的简介、安装、使用方法之详细攻略
Py之imblearn:imblearn/imbalanced-learn库的简介、安装、使用方法之详细攻略
Py之imblearn:imblearn/imbalanced-learn库的简介、安装、使用方法之详细攻略
|
机器学习/深度学习 SQL 算法
中原银行实时风控体系建设实践
中原银行数据平台中心开发工程师陈玉强在 FFA 2021 的演讲。
中原银行实时风控体系建设实践
|
Oracle 安全 关系型数据库
搭建 OpenLDAP 自助修改密码系统
让修改open ldap密码变得简单
1989 0
搭建 OpenLDAP 自助修改密码系统
|
机器学习/深度学习 数据采集 弹性计算
甩掉容量规划炸弹:用 AHPA 实现 Kubernetes 智能弹性伸缩
我们提出了一种智能化弹性伸缩方案 AHPA,可以根据历史时序数据进行主动预测,提前扩容,避免弹性滞后。同时,会根据实时数据动态调整主动预测结果,兼容周期变动等场景。
699 84
甩掉容量规划炸弹:用 AHPA 实现 Kubernetes 智能弹性伸缩
|
Rust 安全 编译器
编程语言新宠:Rust语言的特性、优势与实战入门
【10月更文挑战第26天】Rust语言诞生于2006年,由Mozilla公司的Graydon Hoare发起。作为一门系统编程语言,Rust专注于安全和高性能。通过所有权系统和生命周期管理,Rust在编译期就能消除内存泄漏等问题,适用于操作系统、嵌入式系统等高可靠性场景。
1908 2
|
域名解析 缓存 负载均衡
架构知识分享——负载均衡技术研究
基于多年工作实践,总结日常使用到的负载均衡技术相关的理论,定义,产品和使用场景。
3913 0
架构知识分享——负载均衡技术研究
|
索引 Python
pandas删除数据&重复值处理
pandas删除数据&重复值处理
pandas删除数据&重复值处理
|
消息中间件 canal JSON
Canal使用
使用canal监听MySQL中binlog,搭配RabbitMQ,做到记录数据库变化
806 1
LabVIEW 调整Table表格行高列宽的方法与例程
LabVIEW 调整Table表格行高列宽的方法与例程
1158 1

热门文章

最新文章