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

 


相关文章
|
应用服务中间件 Linux 网络安全
Linux 安装 Nginx 并配置为系统服务(超详细)
Linux 安装 Nginx 并配置为系统服务(超详细)
|
Oracle Java 关系型数据库
Oracle jdk 的国内下载镜像
Oracle jdk 的国内下载镜像
50502 0
|
10月前
|
机器学习/深度学习 Python
机器学习中评估模型性能的重要工具——混淆矩阵和ROC曲线。混淆矩阵通过真正例、假正例等指标展示模型预测情况
本文介绍了机器学习中评估模型性能的重要工具——混淆矩阵和ROC曲线。混淆矩阵通过真正例、假正例等指标展示模型预测情况,而ROC曲线则通过假正率和真正率评估二分类模型性能。文章还提供了Python中的具体实现示例,展示了如何计算和使用这两种工具来评估模型。
365 8
|
10月前
|
机器学习/深度学习 算法 数据挖掘
介绍一下如何处理数据不平衡的问题
介绍一下如何处理数据不平衡的问题
532 1
|
SQL Linux Shell
centos yum 升级 glibc
在 CentOS 上使用 YUM 升级 GLIBC 库需要谨慎操作,因为 GLIBC 库是系统的基础组件,错误的升级可能导致系统不稳定或与现有应用程序不兼容。 以下是升级 GLIBC 库的步骤: 1. 备份重要数据:在执行任何系统级更改之前,请确保备份重要的数据和配置文件,以防止数据丢失或配置错误。 2. 更新系统:使用 YUM 更新系统软件包,确保系统是最新的稳定版本。可以使用以下命令进行更新: ```sql sudo yum update ``` 3. 备份 GLIBC 库:在升级之前,建议备份当前的 GLIBC 库。可以使用以下命令进行备份: ```bash sudo cp
6899 0
|
12月前
|
资源调度
Z-Score方法
Z-Score方法
1175 2
|
存储 大数据 Python
NumPy 内存管理和性能调优
【8月更文第30天】NumPy 是 Python 中用于科学计算的核心库之一,它提供了高效的数组操作功能。然而,随着数据集的增大,如何有效地管理和优化 NumPy 数组的内存使用成为了一个重要的问题。本文将介绍一些技巧,帮助你更好地管理和优化 NumPy 数组的内存使用。
529 0
|
Ubuntu 数据安全/隐私保护
服务器Ubuntu系统安装图形化界面
服务器Ubuntu系统安装图形化界面
|
移动开发 前端开发 HTML5
前端下载图片的N种方法
前端下载图片的N种方法
553 0
前端下载图片的N种方法
|
存储 JSON 自然语言处理
在自定义数据集上微调Alpaca和LLaMA
本文将介绍使用LoRa在本地机器上微调Alpaca和LLaMA,我们将介绍在特定数据集上对Alpaca LoRa进行微调的整个过程,本文将涵盖数据处理、模型训练和使用流行的自然语言处理库(如Transformers和hugs Face)进行评估。此外还将介绍如何使用grado应用程序部署和测试模型。
1637 1