Python 输出数量可变的 Scikit 决策树

Python Scikit Decision Tree with variable number of outputs

我正在寻找使用 Python SciKit 库设置 multi-output decision tree。然而,我面临的问题是它不是一个简单的 "n_outputs" 分类。一些示例将有 3 个输出,一些 4 个,一些 5 个。我不确定将其传达给图书馆的最佳方式是什么。

我正在考虑使用最大数量的输出并进行 "no output" 分类。因此,如果我训练一个集合,其中每个样本都被强制为 5 个输出,那么通过添加 "no output" 分类,任何最初只有 3 个分类的样本都将更改为 5 个。

你觉得这样行吗?还有其他方法可以制作具有可变输出数量的多输出决策树吗?

听起来您正在尝试进行多标签 class化,而不是多输出 class化。多标签可以通过提供一个指示向量来最容易地完成,该向量表示每个样本和每个 class 它们是否在 class 中,所以你得到一个二进制数组(0 表示不在 class, 1 for in class) of size (n_samples, n_classes).

查看 multi-label documentation 看看它是否适合您的用例。