Fast Incremental Model Trees With Drift Detection算法分裂是怎么判定的
时间: 2024-06-02 21:10:39 浏览: 149
Fast Incremental Model Trees With Drift Detection (FIMT-DD) 算法是一种用于数据流分类的增量决策树算法,其中的分裂判定是基于两个阈值:切分阈值和错误阈值。
切分阈值用于控制何时应该在树节点上进行分裂操作。当一个节点收到足够数量的数据点后,会计算一个分裂评分。如果分裂评分大于切分阈值,则会进行分裂操作。
错误阈值用于控制何时应该检测到概念漂移。当一个节点收到数据点时,如果错误率(即分类错误的数据点比例)大于错误阈值,则会触发漂移检测,进而导致对树的重新构建。
具体来说,FIMT-DD 算法中的分裂判定过程如下:
1. 对于每个待分裂的节点,计算其分裂评分,评分公式为:
SplitScore = (Gain - SplitPenalty) / (NodeSize - 1)
其中,Gain 是分裂前后的信息增益,SplitPenalty 是分裂惩罚项,NodeSize 是节点的数据点数。
2. 如果 SplitScore 大于切分阈值,那么该节点将被分裂,分裂时会选择最优的切分点和切分特征。
需要注意的是,FIMT-DD 算法是一种增量式决策树算法,因此节点的数据点数会随着时间不断增加,导致分裂评分和错误率的变化。为了解决这个问题,FIMT-DD 算法还引入了概念漂移检测机制,以便在数据流发生漂移时及时更新决策树。
具体来说,FIMT-DD 算法中的漂移检测过程如下:
1. 对于每个节点,计算其错误率,即分类错误的数据点比例。
2. 如果错误率大于错误阈值,则认为该节点所对应的数据子流发生了概念漂移。
3. 当发生概念漂移时,FIMT-DD 算法会删除该节点及其所有子节点,并从头开始构建决策树,以适应新的数据分布。
阅读全文