跳到内容

scikit学习控制/不平衡学习

_Codecov公司_圆形CI_Python版本_皮皮_书写器_黑色_

不平衡学习

inbalanced-learn是一个python包,它提供了许多重采样技术,这些技术通常用于显示类间强烈不平衡的数据集。它与兼容科学知识学习是的一部分科学学习控制项目。

文档

安装文档、API文档和示例可以在文档.

安装

依赖关系

不平衡学习需要以下依赖项:

  • Python(>=3.8)
  • 数字Py(>=1.17.3)
  • SciPy(>=1.5.0)
  • Scikit-learn(>=1.0.2)

此外,不平衡学习需要以下可选依赖项:

  • 熊猫(>=1.0.5)用于处理数据帧
  • 用于处理Tensorflow模型的Tensorflow(>=2.4.3)
  • 用于处理Keras模型的Keras(>=2.4.3)

示例将需要以下附加依赖项:

  • Matplotlib(>=3.1.2)
  • 海生(>=0.9.0)

安装

来自PyPi或conda-forge存储库

不平衡学习目前在PyPi的存储库中可用,您可以通过“pip”进行安装:

pip安装-U不平衡学习

该软件包也在Anaconda Cloud平台中发布:

conda安装-c conda-forge不平衡学习

来自GitHub上可用的源

如果愿意,可以克隆它并运行setup.py文件。使用以下命令从Github获取副本并安装所有依赖项:

git克隆https://github.com/scikit-learn-contrib/imbalanced-learn.gitcd不平衡学习pip安装。

请注意,您可以使用以下工具在开发人员模式下安装:

pip安装--无构建隔离--可编辑。

如果您希望在GitHub上发出拉入请求,我们建议您安装预提交:

pip安装预提交预提交安装

测试

安装后,您可以使用pytest测试要运行测试套件:

覆盖范围

开发

这一科学学习控制的发展与科学学习社区的发展是一致的。因此,您可以参考他们开发指南.

关于

如果您在科学出版物中使用不平衡学习,我们希望您能引用以下论文:

@文章{JMLR:v18-16-365,作者=Guillaume Lema和Fernando Nogueira以及Christos K.Aridas,title={Imbalanced-learn:在机器学习中解决不平衡数据集诅咒的Python工具箱},journal={机器学习研究杂志},年份={2017年},体积={18},数字={17},页数={1-5},url={http://jmlr.org/papers/v18/16-365}}

大多数分类算法只有在每个类的样本数大致相同时才能达到最佳性能。高度扭曲的数据集,其中少数人被一个或多个类别严重超过,已被证明是一个挑战,同时也变得越来越普遍。

解决此问题的一种方法是重新对数据集进行采样,以抵消这种不平衡,并希望获得比其他方法更可靠、更公平的决策边界。

您可以参考不平衡学习文档以查找有关实现的算法的详细信息。