问题标签 [ensemble-learning]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
146 浏览

python - 如何在 ensemble python 中使用我自己的分类器

主要目的是在 python 的集成中添加像CNN这样的深度学习分类方法作为个体。
以下代码工作正常:

但是,错误:

一旦运行就会出现eclf1=eclf1.predict(XTest)

以防万一,CNN_fit_训练功能和以下功能组成:

0 投票
2 回答
1143 浏览

python - 使二进制堆叠示例适应多类

我一直在研究这个 stacking 的例子。在这种情况下,每组 K 折叠生成一列数据,并且对每个分类器重复此操作。即:混合矩阵是:

我需要堆叠来自多类问题的预测(每个样本可能有 15 个不同的类)。这将为每个 clf 生成一个 n*15 矩阵。

这些矩阵是否应该水平连接?还是应该在应用逻辑回归之前以其他方式组合它们?谢谢。

0 投票
2 回答
1602 浏览

machine-learning - 如何处理这种不平衡的类倾斜数据集?

我必须处理Class Imbalance Problem并执行一个binary-classification输入测试数据集,其中大部分类标签在训练数据集中为 1(另一个类标签为 0)。

例如,以下是训练数据的一部分:

最后一列是class-label-01。实际数据集的类别比例非常倾斜10:1,即大约 700 个样本的 0 为 0 class label,而其余 6800 个样本的 1 为class label

上面提到的只是给定数据集中所有样本中的一小部分,但实际数据集中包含大约90%的样本为class-labelas 1,其余的为class-labelbe 0,尽管或多或少所有样本都非常很相似。

哪个分类器最适合处理这种数据集?

我已经尝试logistic-regression过以及参数集 as svm,但在准确性上没有显着提高。class-weight"balanced"

0 投票
1 回答
2776 浏览

python - 为什么我的 VotingClassifier 准确度低于我的个人分类器?

我正在尝试使用 scikit-learn 中的 VotingClassifier() 创建三个分类器(随机森林、支持向量机和 XGBoost)的集合。但是,我发现集成的准确性实际上是降低而不是提高。我不知道为什么。

这是代码:

XGBoost 具有最高的准确度,所以我什至尝试给它更多的权重,但无济于事。

我可能做错了什么?

0 投票
1 回答
220 浏览

machine-learning - scikit-learn RandomForestClassifier 中的特征重要性和森林结构如何相关?

这是我的问题的一个简单示例,使用 Iris 数据集。当我试图理解如何计算特征重要性以及使用export_graphviz. 这是我的代码:

分类器表现不佳(得分为 0.68),因为森林包含 2 棵深度为 1 的树。无论如何,这在这里无关紧要。

特征重要性检索如下:

输出是:

现在显示使用以下代码构建的树的结构时:

我得到这两个数字

  • 树#0的导出:

在此处输入图像描述

  • 树#1的导出:

在此处输入图像描述

如图所示,我无法理解如何sepallength重要性 = 1 但不能用于两棵树中的节点拆分(仅petallength使用)。

0 投票
1 回答
582 浏览

tensorflow - 集成递归神经网络的方法是什么?

将多个深度网络集成在一起以改善预测期间的统计数据通常相当容易。这通常就像获取输出预测并将它们平均在一起一样简单。在循环神经网络中,这并不那么简单,因为我们正在对一系列输出进行预测。

我们如何集成递归神经网络?您是否使用多个模型预测每个时间步的输出,平均输出,然后使用平均值的预测反馈到每个单独的模型(冲洗,重复)?这似乎在常见的 ML 库中实现相当麻烦(我使用的是 Tensorflow)。

0 投票
0 回答
204 浏览

scikit-learn - sklearn 中 Baggingclassifier 的子集大小

如果我理解正确,装袋应该根据在训练数据集的随机子集上创建的多个模型的平均(或最可能)结果进行预测。但是,在 scikit-learn 的 BaggingClassifier ( http://scikit-learn.org/stable/modules/generated/sklearn.ensemble.BaggingClassifier.html ) 中,似乎没有办法设置随机子集的大小。

包如何确定每个随机子集的大小?

0 投票
1 回答
610 浏览

machine-learning - Stacking,堆叠泛化算法

我试图了解堆叠是如何工作的,但到目前为止我不确定我是否理解正确。所以这是我到目前为止所理解的:

  1. 我们用完整的数据集训练每个k个基学习器(level-0)。

  2. 我们让k个基学习器中的每一个预测整个数据集。

  3. 我们从k个基学习器的所有预测中创建一个新数据集。新数据集看起来像我们的原始数据集 + 每个基础学习器的预测。

  4. 该数据集用于训练元学习器(1 级)。

我的问题:

  1. 到目前为止这是正确的吗?
  2. 我经常读到交叉验证以某种方式用于堆叠,但我不知道它是如何使用的?或者它甚至是我缺少的重要部分?

非常感谢

0 投票
1 回答
533 浏览

svm - caretEnsmble 使用 SVM 训练不同的数据集(问题)

以下是一个可重现的示例,基本上我想做的是创建五个估算数据集,然后使用插入符号中的训练函数将 SVM 应用于每个估算数据集,然后使用 caretEnsemble 集成生成的训练模型。最后,我使用集成模型预测每个测试集。

但是,我收到此错误

check_bestpreds_obs(modelLibrary) 中的错误:
每个组件模型的观察值不同。请重新训练具有相同 Y 变量的模型

有什么方法可以帮助我整合不同的训练模型吗?

任何帮助都非常感谢。

0 投票
1 回答
125 浏览

r - 如何在 R 中的分类器模型中执行集成

我有一个数据框,其中要预测的变量有 28 个可能的因子结果。

现在我在训练数据集上运行三种分类器算法,它们是支持向量机(SVM)、随机森林(RF)和 k 最近邻(kNN)。

现在我有了对应于上述三种算法的三个预测向量。所有这些都具有大约 80-90% 的良好准确度。

我想整合它们并根据三种算法的投票系统预测最终结果变量。注意:SVM 的准确度最高,其次是 RF,然后是 kNN。例如:

如您所见,我想要的非常简单。如何在 R 编程中执行此操作?在这种情况下还有其他方法可以执行集成建模吗?