评估无监督学习的性能指标

机器算法验证 机器学习 聚类 数据挖掘 无监督学习
2022-01-17 01:50:23

关于无监督学习(如聚类),是否有任何指标来评估性能?

2个回答

从某种意义上说,我认为这个问题是无法回答的。我这样说是因为一个特定的无监督方法的表现在很大程度上取决于一个人为什么首先进行无监督学习,即,该方法在你的最终目标的背景下表现良好吗?显然这并不完全正确,人们致力于解决这些问题并发布包含某种评估的结果。我将在下面概述一些我熟悉的方法。

sklearn 的文档页面Clustering Performance Evaluation是一个很好的集群资源(带有参考资料) 。这涵盖了几种方法,但除一种方法外,轮廓系数都假定地面实况标签可用。问题评估度量聚类中也提到了此方法,链接在此问题的评论中。

如果您的无监督学习方法是概率性的,另一种选择是评估保留数据的一些概率度量(对数似然、困惑度等)。这里的动机是,如果您的无监督学习方法将高概率分配给未用于拟合参数的相似数据,那么它可能在捕获感兴趣的分布方面做得很好。通常使用这种类型的评估的一个领域是语言建模。

我要提到的最后一个选项是在相关的辅助任务上使用监督学习器。如果您的无监督方法产生潜在变量,您可以将这些潜在变量视为输入的表示。因此,使用这些潜在变量作为监督分类器的输入是明智的,该分类器执行与数据来自的域相关的一些任务。然后,监督方法的性能可以作为无监督学习器性能的替代指标。这本质上是您在表示学习的大多数工作中看到的设置。

这个描述可能有点模糊,所以我举一个具体的例子。几乎所有关于词表示学习的工作都使用以下方法进行评估:

  1. 使用无监督学习器学习单词的表示。
  2. 使用学习到的表示作为监督学习器的输入,执行一些 NLP 任务,如词性标注或命名实体识别。
  3. 通过与使用标准表示(如二进制词存在特征)作为输入的基线相比,无监督学习器提高监督学习器性能的能力来评估无监督学习器的性能。

有关这种方法的实际示例,请参见 Dahl 等人的论文Training Restricted Boltzmann Machines on Word Observations

投票最多的答案很有帮助,我只是想在这里添加一些东西。Palacio-Niño & Berzal (2019)的无监督学习算法评估指标概述了评估无监督学习任务的一些常见指标。论文中列出了内部和外部验证方法(无基本事实标签)。

希望这可以帮助!