返回信息流做分类完全半路出家,就会调个包。
现在小论文很捉急,自己找了俩月都没啥思路。
所以求问各位大神,libsvm结合adaboosting的时候,样本权重体现在哪啊。
现在能找到libsvm在训练过程中加权重的包,但是测试的时候就不能用了啊。
但是adaboosting收集的都是测试结果的权重吧。这样就没法进行下一轮迭代了,是不。。
这是一条镜像帖。来源:北邮人论坛 / ml-dm / #20487同步于 2016/7/1
该镜像源已超过 30 天没有更新,可能在源站已被删除。
ML_DM机器人发帖
libsvm结合adaboosting 没思路,嘤嘤嘤。。
flybutterfly
2016/7/1镜像同步18 回复
订阅后,新回复会通过你的通知中心匿名送达。
9 条回复
就是想弄个组合分类器的。就是想提高一下分类正确率。。。
【 在 sdlslx 的大作中提到: 】
: 真要结合,弄个组合分类器算吗?投票那种。。。否则的话,真要能组合起来,赶紧发ICML吧
:
发自「贵邮」
本来adaboost就是把一大堆分类器组合起来投票啊,只不过跟普通的投票不一样的是,每个分类器投票的权重不同。另外SVM如果不加非线性核的话,就是个加强了的线性感知器,本身还是比较弱的,正好可以拿来做adaboost的基础分类器。所以我认为这俩肯定可以结合,只不过这个结合的意义我感觉可能会比较有限吧。
adaboost训练过程中收集的是在哪些样本点错了,然后把这些分类错误的点的权重加大,不需要收集测试结果的权重吧,权重由你自己在SVM外部维护就行了。你自己写个程序,每个样本点一个权重值,先把所有样本点的权重都初始化成相等的值,然后每轮迭代把权重和样本送进SVM,训练,然后看在哪些样本点上分类错误,把这些错误点的权重加大,其他点的权重减小,再开始下一轮迭代
首先感谢你这么赞的回复!真棒!
我的问题具体描述是:
我现在只能在测试结果里面知道样本是分对还是分错,进而计算这些测试样本的权重。但是,训练样本的权重如何确定啊。
而且你说“每轮迭代把权重和样本送进SVM”,请问这个权重体现在哪。。。。
【 在 hmx2047 的大作中提到: 】
: 本来adaboost就是把一大堆分类器组合起来投票啊,只不过跟普通的投票不一样的是,每个分类器投票的权重不同。另外SVM如果不加非线性核的话,就是个加强了的线性感知器,本身还是比较弱的,正好可以拿来做adaboost的基础分类器。所以我认为这俩肯定可以结合,只不过这个结合的意义我感觉可能会比较有限吧。
: adaboost训练过程中收集的是在哪些样本点错了,然后把这些分类错误的点的权重加大,不需要收集测试结果的权重吧,权重由你自己在SVM外部维护就行了。你自己写个程序,每个样本点一个权重值,先把所有样本点的权重都初始化成相等的值,然后每轮迭代把权重和样本送进SVM,训练,然后看在哪些样本点上分类错误,把这些错误点的权重加大,其他点的权重减小,再开始下一轮迭代
不是根据训练样本的错误率计算么?和测试集没有什么关系吧。sklearn里面的SVM基础也是libsvm,可以直接调sklearn的adaboost和svm
测试结果,就是你的分类器效果,为什么要再更改权重呢?针对测试集更改分类器,是不对的啊
: 我现在只能在测试结果里面知道样本是分对还是分错,进而计算这些测试样本的权重。但是,训练样本的权重如何确定啊。
这个事 adaboost 的训练过程啊。
: 而且你说“每轮迭代把权重和样本送进SVM”,请问这个权重体现在哪。。。。
【 在 flybutterfly 的大作中提到: 】
: 首先感谢你这么赞的回复!真棒!
: 我的问题具体描述是:
: 我现在只能在测试结果里面知道样本是分对还是分错,进而计算这些测试样本的权重。但是,训练样本的权重如何确定啊。
: ...................