异常检测与监督学习

问题描述 投票:2回答:2

我有非常小的数据属于正类和大量数据来自负类。教授说。 Andrew Ng(anomaly detection vs supervised learning),由于高度偏斜的数据,我应该使用异常检测而不是监督学习。

如果我错了请纠正我,但两种技术对我来说都是相同的,即在(监督的)异常检测和标准监督学习中,我们用正常和异常样本训练数据并测试未知数据。有什么区别吗?

我应该只对负类进行欠采样或对正类进行过采样以获得相同大小的两种类型数据吗?它会影响整体准确度吗?

machine-learning supervised-learning
2个回答
4
投票

实际上在监督学习中,你有标记的数据集(例如好的,坏的),你在训练模型时传递标记的值,以便它学习将'好'与'坏'结果分开的参数。

在异常检测中,由于您没有传递任何标记值,因此无人监督。您所做的是仅使用“非异常”数据进行训练。然后,您可以选择epsilon值并使用数值(例如F1得分)进行评估,以便您的模型能够获得真正积极的良好平衡。

关于尝试上/下采样以使您的数据不会偏斜,有两件事。

  1. Ng教授提到了类似的问题,如果你的积极类只有10k或10k中的10,那么你需要使用异常检测,因为你的数据是高度倾斜的。
  2. 如果您通常知道什么是“坏”值,那么有监督的学习是有意义的。如果你只知道什么是'正常'/'好',但你的'坏'值每次真的会非常不同,那么这是异常检测的一个很好的例子。

3
投票

在异常检测中,您将从数据中得到良好支持的部分确定模型参数(正如Andrew解释的那样)。由于您的否定类有许多实例,您可以将这些数据用于“学习”。核密度估计或GMM是通常使用的方法的示例。因此可以学习“常态”模型,并且可以使用阈值来检测关于您的导出模型被认为是异常的实例。这种方法与传统的监督学习之间的区别在于,您只使用一部分数据(在您的情况下是负面的类)进行培训。您可能希望在训练后将您的积极情况确定为异常。

至于你的第二个问题,对负面课程进行抽样不足会导致信息丢失,而对正面课程进行过度抽样则不会增加信息。我不认为遵循这条路线是可取的。

© www.soinside.com 2019 - 2024. All rights reserved.