隔离林中的节点数

数据挖掘 scikit-学习 决策树 离群值
2022-02-16 16:54:55

我目前正在阅读这篇关于隔离森林的论文。

在第3页,有一个隔离树的定义,有几句话我不明白:

给定来自 d 变量分布的 n 个实例的数据样本 X = {x1, ..., xn},为了构建隔离树 (iTree),我们通过随机选择属性 q 和拆分值 p 递归地划分 X , 直到:(i) 树达到高度限制,(ii) |X| = 1 或 (iii) X 中的所有数据具有相同的值。

在这里,我想了解第(ii)和(iii)点的含义。在第 (iii) 点中,当作者说“X 中的所有数据具有相同的值”时,是否意味着相同的异常分数?

还有一段文字我无法完全理解。有人可以帮我理解这段文字吗..

假设所有实例都是不同的,当 iTree 完全增长时,每个实例都与外部节点隔离,此时外部节点数为 n,内部节点数为 n-1;iTrees 的节点总数为 2n - 1

谢谢

1个回答

(ii) 意味着在拆分数据后,您最终会在节点中得到一个实例,因此无事可做

(iii) 意味着在拆分数据后,节点中的所有样本都是相同的(“重复”),同样没有什么可做的

假设所有实例都是不同的,当 iTree 完全增长时,每个实例都与外部节点隔离,此时外部节点数为 n,内部节点数为 n-1;iTrees 的节点总数为 2n - 1

隔离一个实例意味着拆分数据,直到该实例本身最终成为一个叶子。如果你有n实例,您将需要n外部(“结束”)节点。每个实例一个。内部节点是结束节点之前的所有节点,包括包含所有实例的根。可以证明他们的号码是n1. 例如,如果您有n=4您可以将其拆分为 (4)-(2,2)-((1,1)(1,1))。所以你有了1+1+1+1=4=n端节点,和1+2=3=n1内部节点。

当然,分割不必相等。也可以是 (4)-(3,1),然后将 (3) 拆分为 (2,1),将 (2) 拆分为 (1,1) 但计数是相同的。您将拥有 3 个内部节点 (4)、(3) 和 (2) 以及 4 个外部节点。(最好画出来)

因此,总数是端节点的数量加上内部节点的数量n+(n1)=2n1.