机器学习“降临日历”第 9 天:Excel 中的 LOF

在本文中,我们通过三个简单的步骤来探索 LOF:距离和邻居、可达距离以及最终的 LOF 分数。使用微小的数据集,我们可以看到两个异常如何对我们来说看起来很明显,但对于不同的算法却完全不同。这揭示了无监督学习的关键思想:不存在单一的“真实”异常值,只有定义。理解这些定义才是真正的技能。机器学习“降临日历”第 9 天:Excel 中的 LOF 这篇文章首先出现在走向数据科学上。

来源:走向数据科学

昨天,我们使用了隔离森林,这是一种异常检测方法。

今天,我们看看另一个具有相同目标的算法。但与隔离森林不同的是,它不建造树木。

它被称为 LOF,或局部异常值因子。

人们经常用一句话来总结LOF:这个点是否生活在一个比它的邻居密度更低的区域?

这句话其实很难理解。我为此挣扎了很长时间。

然而,有一个部分很容易理解,

,我们会看到它成为关键点:

有一个邻居的概念。

一旦我们谈论邻居,

我们自然会回到基于距离的模型。

我们将分三步解释这个算法。

为了让事情变得非常简单,我们将再次使用这个数据集:

1, 2, 3, 9

你还记得我拥有这个数据集的版权吗?我们用它做了隔离森林,我们将用它再次做LOF。我们还可以比较两个结果。

所有 Excel 文件都可以通过此 Kofi 链接获得。您的支持对我来说意义重大。价格会在本月上涨,因此早期支持者可以获得最佳价值。

步骤 1 – k 个邻居和 k 距离

LOF 以极其简单的方式开始:

查看点之间的距离。然后找到每个点的 k 个最近邻点。

让我们取 k = 2,只是为了保持最小化。

每个点的最近邻居

  • 点 1→ 邻居:2 和 3
  • 点 2→ 邻居:1 和 3
  • 点 3→ 邻居:2 和 1
  • 点 9→ 邻居:3 和 2
  • 我们已经看到一个清晰的结构正在出现:

  • 1、2 和 3 形成一个紧密的簇
  • 9 独自生活,远离其他人
  • k-距离:局部半径

    k 距离只是 k 个最近邻之间的最大距离。

    这其实是关键点。

    因为这个数字告诉您一些非常具体的信息:

    点周围的局部半径。

    如果 k 距离较小,则该点位于密集区域。

    如果 k 距离较大,则该点位于稀疏区域。

    仅通过这一措施,您就已经有了第一个“隔离”信号。