首页 文章

在决策树中称量样本

提问于
浏览
-7

我已经构建了一个决策树,可以对每个样本进行相等加权 . 现在构建一个决策树,它给不同的样本赋予不同的权重 . 我需要做的唯一改变是在计算信息增益之前找到预期的熵 . 我有点困惑如何继续,PLZ解释....

例如:考虑一个包含p个正节点和n个负节点的节点 . 所以节点熵将是 -p/(p+n)log(p/(p+n)) -n/(p+n)log(n/(p+n)) . 现在,如果发现拆分以某种方式将父节点划分为两个子节点 . 假设子节点1包含p ' positives and n'负数(因此子节点2包含pp ' and n-n') . 现在,对于子节点1,我们将计算为父节点计算的熵,并取概率到达它,即 (p'+n')/(p+n) . 现在预计熵的减少将是 entropy(parent)-(prob of reaching child1*entropy(child1)+prob of reaching child2*entropy(child2)) . 并且将选择具有最大信息增益的分割 .

现在,当我们为每个样本提供权重时,执行相同的过程 . 需要进行哪些更改?需要对adaboost进行哪些更改(仅使用树桩)?

1 回答

  • 1

    (我想这与一些评论中的想法相同,例如@Alleo)

    假设你有 p 正例和 n 负面例子 . 让我们将示例的权重表示为:

    a1, a2, ..., ap  ----------  weights of the p positive examples
    b1, b2, ..., bn  ----------  weights of the n negative examples
    

    假设

    a1 + a2 + ... + ap = A 
    b1 + b2 + ... + bn = B
    

    正如您所指出的,如果示例具有单位权重,则熵将为:

    p          p          n         n
    - _____ log (____ )  - ______log(______ )
      p + n      p + n      p + n     p + n
    

    现在,您只需要将 p 替换为 A 并将 n 替换为 B ,然后您就可以获得新的实例加权熵 .

    A          A          B         B
    - _____ log (_____)  - ______log(______ )
      A + B      A + B      A + B     A + B
    

    注意:这里没什么特别的 . 我们所做的只是弄清楚这组正面和负面例子的加权重要性 . 当例子被加权时,正例的重要性与所有例子的正数w.r.t的比例成正比 . 当示例的权重不均等时,我们只需执行加权平均即可得出正例的重要性 .

    然后按照相同的逻辑,通过比较分割前和分割属性后的熵,选择信息增益最大的属性 .

相关问题