问题标签 [adaboost]

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 投票
0 回答
642 浏览

opencv - 显示来自训练有素的 AdaBoost 分类器的 Haar 特征

有没有办法直观地显示在分类器的每个阶段使用了哪些 Haar 特征?

我最近使用 opencv_traincascade.exe 训练了一个分类器来检测车辆。为了进一步分析,我希望看到在每个阶段都在评估的功能。

谢谢你的帮助。

编辑

如果任何人都可以提供有关 cascade.xml 的信息,那就太好了,节点的含义是什么。谢谢

0 投票
4 回答
6189 浏览

adaboost - 如果错误率为零,如何计算 alpha (Adaboost)

我一直想知道当它具有错误率(完美分类)时,alpha(弱分类器的权重)的值应该是多少,因为 alpha 的算法是 (0.5) * Math.log(((1 - errorRate) / errorRate))

谢谢你。

0 投票
1 回答
1833 浏览

opencv - haar 分类器中 cascade.xml 的解释

如果有人可以完全解释 cascade.xml 中的数字/值,那将是最好的。示例:

这些值的含义是什么

另一个问题是,程序如何知道在特定阶段使用哪个功能?据我所知,功能的形式如下

其中它是两个矩形的坐标,形成如下所示:

什么是值-1。3.是什么意思?我知道它的权重,但它是如何用于计算特征的?

概括

  1. 里面的值是什么意思<internalNodes>
  2. 特征是如何计算的?砝码如何<rects>使用?
  3. 最重要的是,哪个字段表示在特定阶段/节点中使用了哪些功能。

谢谢!

0 投票
1 回答
2548 浏览

r - R gbm 包:训练误差和 Adaboost 指数损失函数

我在 R 中使用 gbm 包进行二进制分类。我正在为算法使用 adaboost 指数损失函数。我有两个问题:

  1. 如果我想查看训练错误,我应该只看这个吗?(假设我的模型对象叫做 fit,我使用了 3-fold CV。)

    best.iter <- gbm.perf(fit,method="cv")

    fit$train.error[best.iter]

  2. 如果我想对我的训练数据集进行预测,请说“训练”,并通过以下代码行删除响应变量pred <- predict(object=fit,newdata=train,n.trees=best.iter):它只给了我 adaboost 的指数损失值。我怎样才能将其转换回二进制类的概率?我试过plogislog。结果只是没有意义。例如,plogis所有内容都给我 0.99***,log给我区间 [0.52,0.56]。我应该做什么样的转变?

仅供参考,我种了 100 棵树,拟合过程似乎还可以。例如,

谢谢!

0 投票
1 回答
1934 浏览

c# - 用于 C# 的机器学习分类器 AdaBoost

C# 中是否有用于 AdaBoost 算法的流行且稳定的库?除了经典的 AdaBoost(如 GentleBoost、LogitBoost 等)之外,这样的库是否包含不同风格的 boosting?

0 投票
0 回答
272 浏览

r - Adaboost 实现(在 R 中获得弱分类器函数形式)

我正在尝试在 CRAN-R 中使用 Adaboost 来解决分类问题。我找不到任何实际输出弱分类器函数形式的 R 包(例如 hi(x) * I (Y > z),然后我可以将其编程为评分算法。谁能帮我指出一个可以提供这些的包函数/系数?谢谢!

0 投票
1 回答
4674 浏览

r - R中的Adabag包

我正在尝试使用 R 的 adabag 包进行分类。

以下调用与 R 的 ada 包的 ada() 函数完美配合。

但是当下面的 adabag 的函数调用中使用相同的训练数据集时,它会返回错误:

这个错误究竟暗示了什么?

0 投票
1 回答
3128 浏览

r - 基于 R 树的方法,如 randomForest、adaboost:用不同格式解释相同数据的结果

假设我的数据集是一个100 x 3充满分类变量的矩阵。我想对响应变量进行二进制分类。让我们用以下代码组成一个数据集:

数据如下所示:

我尝试用两种不同的方法对这些数据进行随机森林和 adaboost。第一种方法是按原样使用数据:

第二种方法是将数据集转换为宽格式,并将每个类别视为一个变量。我这样做的原因是因为我的实际数据集在 var1 和 var2 中有 500 多个因子,因此,树分区总是将 500 个类别分成 2 个部分。这样做会丢失很多信息。要转换数据:

新数据如下所示:

我将随机森林和 adaboost 应用于这个新数据集:

两种方法的结果是不同的。当我们在每个变量中引入更多级别时,差异更加明显,即var1var2。我的问题是,既然我们使用完全相同的数据,为什么结果不同?我们应该如何解释这两种方法的结果?哪个更可靠?

0 投票
1 回答
6546 浏览

c++ - openCV c++:使用 CvBoost(Adaboost 分类器)的问题

我正在创建一个应用程序,用于对城市环境图像中的人类进行分类。

我以以下方式训练分类器:

train_rand.csv 是一个文件,其中第一列是类别。其余列将成为问题的特征。例如,我可以使用三个功能。它们中的每一个代表图像中每个像素的红色、蓝色和绿色的平均值。所以我的 csv 文件应该是这样的。请注意,在第一列中我使用了一个字符,因此 OpenCV 将其识别为一个类别。

对于我的实际问题,我使用了 100 个特征和 8000 个样本。我用一半的数据训练分类器,用剩下的数据测试。

训练后,我得到了大约 5% 的测试错误(这对于仅 100 个特征来说已经相当不错了)。

现在我想在新数据中使用分类器:

我在数千个样本上运行这段代码,它总是输出相同的值,即 2。我真的不明白我在这里做错了什么,但即使我以错误的方式训练分类器,它也不会t 以相同的方式分类 100% 的时间,而且,我之前计算的测试误差表明分类器应该可以正常工作。

困扰我的一件事是 SampleData 必须具有与我用来训练的样本相同数量的列。问题是,用于训练的数据有 100 列 + 1 个响应,如果我尝试运行只有 100 个特征的分类器,它会抛出一个异常,说大小不匹配。如果我用 101 个特征(这绝对是任意的)运行分类器,它可以工作,但结果没有任何意义。

谁能帮我这个?提前致谢!

问候

0 投票
0 回答
110 浏览

r - 如何在 ada 中使用自定义分类器?

我正在使用包ada中的 adaboost 来拟合模型。在我对 adaboost 的理解中,它结合了多个分类器以获得更好的结果。但是在函数ada中,我找不到用于此目的的参数。那么使用什么分类ada器呢?我怎样才能将我的分类器传递给ada? 谢谢你。