本文主要是介绍机器学习之异常检测--孤立森林(Isolation Forests),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
机器学习之异常检测–孤立森林(Isolation Forests, iForests)
异常检测在机器学习领域内的应用场景广泛。比如帮助银行参与检测是否洗钱,识别金融欺诈,帮助保险领域识别是否可能骗保以及监测网络入侵等等。
iForests是异常检测中的一种离群检测方法,可以明确地分离异常样本。与随机森林由大量决策树组成一样,iForests也由大量的树组成。iForest算法是一种基于相似度的模型,属于无监督的方法,该算法主要通过从训练数据集中随机选取一个特征,在该特征的最大值最小值之间随机选取一个分裂点,小于分裂点的进入左侧分支,大于或等于分裂点的进入右侧分支;不断重复上述过程直到只剩一个样本或相同样本或达到树的深度限制,然后通过路径长度来表示一个样本点被“孤立”的程度。
路径长度h(x)指样本点二从根节点到外部节点所经过的二叉树的边数,通常路径长度较小的样本被“孤立”的程度高。路径长度h(x)的计算公式为:
其中,h(x)表示数据二从子树(iTree)的根节点到叶节点过程中经过的边的数目,C(T.size)表示在一棵用T.size条样本数据构建的二叉树的平均路径长度。C(n)的计算公式为:
其中,n为样本个数,H(n-1)可用ln(i)+0.577 215 664 9(欧拉常数)估算,以同样的
这篇关于机器学习之异常检测--孤立森林(Isolation Forests)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!