从Weka中的AdaBoostM1获取实例权重

时间:2013-09-09 21:16:50

标签: java weka adaboost

AdaBoostM1Weka中实施的提升算法。该算法的一个关键组成部分是在每次迭代后重新加权“难以分类”的实例。 我想获取AdaBoostM1为其构造的每个分类器使用的每个实例的权重

我在构建AdaBoostM1模型之前和之后使用“Instance.weight()”来获取实例权重。权重不会改变,因此不是我感兴趣的.AdaBoostM1的源代码是可用的,可以看到权重是在构建模型(here)期间设置的。在AdaBoostM1构建每个新模型之前,能否以某种方式获得实例权重?

1 个答案:

答案 0 :(得分:1)

不,Weka的AdaboostM1没有这样的功能。但是你可以继承AdaBoostM1类,从源代码复制AdaBoostM1#buildClassifierUsingResampling方法,并将其粘贴到子类中并操纵double []权重变量(如line 513中所示)。