问题标签 [isolation-forest]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
61 浏览

math - 二叉搜索树中不成功搜索的平均深度

对于一个研究项目,我正在使用隔离森林算法。该算法的开发者利用了二叉搜索树理论。他们指出,二叉搜索树 (c(n)) 中不成功搜索的平均深度定义为:

c(n)=2H(n-1)-(2(n-1)/n)

其中 H(n-1) 是谐波数,可以通过 ln(n-1)+0.5772156649(欧拉常数)估计,n 是树中的终端节点数。

有人可以(数学上)解释这些公式的来源吗?

0 投票
0 回答
22 浏览

object-detection - 隔离森林可以用来检测图像中的彩色异常吗?

我对隔离森林如何处理图像有点困惑。我的问题如下:

我有很多图像,其中一些图像的某处有彩色点状异常。我想检测到它并在它周围放置一个边界框。隔离林是一个好方法吗?

0 投票
1 回答
32 浏览

python - 为什么 Scikit-Learn 中 IsolationForest 算法的 score_samples-function 给出相同的分数?

我正在尝试在 scikit-learn 中使用 IsolationForest 算法,并且我对计算出的分数感兴趣。但是打电话时score_samples()我没有得到我期望的分数。

这是我的数据图: 情节系列

这是调用时 IsolationForest 算法的相应分数图score_samples()情节分数

如您所见,这两个系列对于右边最后 100 个值的几乎每个值都有相同的分数。为什么?我希望他们是不同的。

此外,还有几个分数低于最后 100 分,这表明它们更有可能是异常情况。但在系列图中,它们更接近拟合数据。这是为什么?

最后,在最后 100 分的两个分数系列中存在差异。就好像有一个他们不能超过的最低分值(尽管之前的一些分数做到了?)

我查看了分数公式和 Scikit-Learn 文档中引用的论文,但这并没有让我更接近答案。

得分这种行为的原因是什么?是否有任何变通方法来获得更“合理”的分数指标?理想情况下,我想要一个在 (0, 1) 范围内的分数。

这是用于生成两个数据系列的代码:

这是用于生成 IsolationForest 算法分数的代码:

0 投票
1 回答
61 浏览

python - TypeError: 不能从 [datetime64[ns, UTC]] 到 [int32] 键入 datetimelike

我正在尝试运行此代码并获取此错误 .m 数据如下所示 在此处输入图像描述

TypeError: 不能从 [datetime64[ns, UTC]] 到 [int32] 键入 datetimelike

桌子是空的

0 投票
1 回答
28 浏览

random-forest - 关于分类的隔离树算法题

在我们创建树(iTrees)的部分中,我不明白为什么我们使用以下分类代码行(与决策树分类非常相似):

我们正在选择最后一列和最大唯一元素的索引值?这可能对决策树有意义,但我不明白为什么我们在隔离林中使用它?

整个 iTree 代码如下所示:

编辑:这是数据和运行分类数据的示例:

0 投票
1 回答
31 浏览

python - 如何使用 python 中的新数据集/数据农场更新训练有素的 IsolationForest 模型?

假设我IsolationForest()在基于时间序列的 Dataset1 或 dataframe1 上拟合来自 scikit-learn 的算法,并使用此处此处df1提到的方法保存模型。现在我想为的dataset2 或.df2

我的发现:

...从小批量实例中增量学习(有时称为“在线学习”)是核心外学习的关键,因为它保证在任何给定时间,主实例中只有少量实例记忆。为平衡相关性和内存占用的小批量选择合适的大小可能涉及调整。

但遗憾的是 IF 算法不支持estimator.partial_fit(newdf)

如何使用新的 Dataset2 更新在 Dataset1 上训练和保存的 IF 模型?