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

 


相关文章
|
Oracle 安全 关系型数据库
搭建 OpenLDAP 自助修改密码系统
让修改open ldap密码变得简单
2072 0
搭建 OpenLDAP 自助修改密码系统
|
JavaScript Linux
linux安装pm2全过程
你要在linux上安装pm2有很多方法,但我是用node的工具npm来完成安装的,所以在安装pm2之前需要先安装node
5262 1
|
机器学习/深度学习 数据采集 弹性计算
甩掉容量规划炸弹:用 AHPA 实现 Kubernetes 智能弹性伸缩
我们提出了一种智能化弹性伸缩方案 AHPA,可以根据历史时序数据进行主动预测,提前扩容,避免弹性滞后。同时,会根据实时数据动态调整主动预测结果,兼容周期变动等场景。
745 88
甩掉容量规划炸弹:用 AHPA 实现 Kubernetes 智能弹性伸缩
|
机器学习/深度学习 算法 数据挖掘
量子计算在金融领域的应用探索
量子计算凭借其强大的计算能力和数据处理能力,正逐渐在金融领域展现巨大潜力。本文探讨了量子计算在风险管理、投资组合优化、高频交易、反欺诈及金融衍生品定价等方面的应用,介绍了当前进展及未来挑战,展示了量子计算如何提升金融决策效率和准确性。
1545 8
|
数据采集 存储 数据可视化
Python实战项目——餐厅订单数据分析(一)
Python实战项目——餐厅订单数据分析(一)
1962 0
|
存储 人工智能 调度
容器服务:智算时代云原生操作系统及月之暗面Kimi、深势科技实践分享
容器技术已经发展成为云计算操作系统的关键组成部分,向下高效调度多样化异构算力,向上提供统一编程接口,支持多样化工作负载。阿里云容器服务在2024年巴黎奥运会中提供了稳定高效的云上支持,实现了子弹时间特效等创新应用。此外,容器技术还带来了弹性、普惠的计算能力升级,如每分钟创建1万Pod和秒级CPU资源热变配,以及针对大数据与AI应用的弹性临时盘和跨可用区云盘等高性能存储解决方案。智能运维方面,推出了即时弹性节点池、智能应用弹性策略和可信赖集群托管运维等功能,进一步简化了集群管理和优化了资源利用率。
|
机器学习/深度学习 人工智能 Ubuntu
|
数据采集 机器学习/深度学习 数据挖掘
清洗数据的魔法:让你的数据干净又整洁
清洗数据的魔法:让你的数据干净又整洁
1267 2
|
传感器 存储 Ubuntu
Azure Kinect DK + ROS1 Noetic使用教程
本文是Azure Kinect DK在Ubuntu20.04下配合ROS1 Noetic使用的教程,内容包括一键安装脚本、硬件介绍、安装SDK相关软件包、设置Udev规则、SDK基本测试、DK ROS基本测试,以及存在的一些重要缺陷和相关参考文献。教程详细指导了如何配置和使用Azure Kinect DK,提供了安装步骤和解决常见问题的方法。
1775 1
Azure Kinect DK + ROS1 Noetic使用教程
|
数据可视化 前端开发 数据安全/隐私保护
Streamlit快速构建数据应用程序
【10月更文挑战第21天】Streamlit 是一个开源的 Python 库,用于快速构建数据应用程序。它简化了数据可视化的开发过程,允许用户通过简单的 Python 脚本创建交互式应用,而无需编写复杂的前端代码。本文介绍了 Streamlit 的基本概念、安装方法、示例应用的创建、扩展功能及部署方法,展示了其在 Python 可视化领域的潜力和优势。