是否有分层分类器的实现/示例?

机器算法验证 机器学习 分类 预测模型 scikit-学习
2022-03-28 11:42:20

目前,我正在使用Scikit-learninPython 3.6对具有 7-8 个类别的数据进行分类(例如[C, A.1, A.2, B.3, B.1.1, B.1.2, B.2.1, B.2.2],由下面的黑色边框表示),但我开始意识到这些组中有一个固有的层次结构,可以在分类过程中使用。我打算编写自己的算法,但如果存在的话,我不想重新发明轮子。

是否存在可以像这样以分层方式预测类标签的算法(最好在 中Python)?如果没有,是否有任何使用这种方法的例子?它让我想起了神经网络中的层,但我没有足够的样本用于神经网络。

例如,A.1A.2inLevel-1是 的子组Level-0_ALevel-0_C没有子群。

在此处输入图像描述

3个回答

我在 scikit-learn 官方文档上找不到层次分类的实现。但我最近发现了这个存储库。该模块基于 scikit-learn 的接口和约定。我希望这会有用。

https://github.com/globality-corp/sklearn-hierarchical-classification

可以使用 pip 安装它:

pip install sklearn-hierarchical-classification

repo 中提供了一个完整的使用示例。

如果有人偶然发现这一点,请查看我为处理此类数据而开发的包。

这是调查抗生素耐药性的教程

同行评审的出版物是Espinoza-Dupont 等人。2021

我们刚刚发布了一个与 scikit-learn 兼容的新库,用于创建本地分层分类器。

它可以使用pip install hiclass或轻松安装conda install hiclass文档和示例可以在https://gitlab.com/dacs-hpi/hiclass找到。

我希望这对未来的读者有用。:)