Isolate randomforest检测异常点的非监督方法
由于异常数据的两个特征(少且不同: few and different)
- 异常数据只占很少量;
- 异常数据特征值和正常数据差别很大。
iTree的构成过程如下:
l 随机选择一个属性Attr;
l 随机选择该属性的一个值Value;
l 根据Attr对每条记录进行分类,把Attr小于Value的记录放在左女儿,把大于等于Value的记录放在右孩子;
l 然后递归的构造左女儿和右女儿,直到满足以下条件:
l 传入的数据集只有一条记录或者多条一样的记录;
l 树的高度达到了限定高度;
iTree构建好了后,就可以对数据进行预测啦,预测的过程就是把测试记录在iTree上走一下,看测试记录落在哪个叶子节点。iTree能有效检测异常的假设是:异常点一般都是非常稀有的,在iTree中会很快被划分到叶子节点,因此可以用叶子节点到根节点的路径h(x)长度来判断一条记录x是否是异常点;
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步