我有非常小的数据属于正类,而大量数据属于负类。教授说。 Andrew Ng(anomaly detection vs supervised learning),由于高度偏斜的数据,我应该使用异常检测而不是监督学习。
如果我错了,请纠正我,但两种技术对我来说都是一样的,即在(监督的)异常检测和标准监督学习中,我们用正常和异常样本训练数据并测试未知数据。有什么不同吗?
我是否应该对负类进行欠采样或对正类进行过采样以获得相同大小的两种类型数据?它会影响整体准确度吗?
答案 0 :(得分:4)
实际上,在监督学习中,您有标记的数据集(例如,好的,坏的),并且您在训练模型时传递标记的值,以便它学习将分离好的'来自“坏”'结果
在异常检测中,由于不传递任何标记值,因此无人监管。您所做的只是使用“非异常”训练。数据。然后选择epsilon值并使用数值(例如F1得分)进行评估,这样您的模型就可以获得真实积极的平衡。
关于尝试上/下采样以使您的数据不会偏斜,有两件事。
答案 1 :(得分:3)
在异常检测中,您将从数据中得到良好支持的部分确定模型参数(正如Andrew解释的那样)。由于您的否定类有很多实例,因此您可以使用这些数据来学习'。核密度估计或GMM是通常使用的方法的示例。正常模式'因此可以学习并且阈值处理可以用于检测被认为对于您的导出模型是异常的实例。这种方法与传统的监督学习之间的区别在于,您只使用一部分数据(在您的情况下是负面的类)进行培训。您可能希望在训练后将您的积极情况确定为异常。
至于你的第二个问题,对负面课程进行抽样不足会导致信息丢失,而对正面课程进行过度抽样则不会增加信息。我不认为遵循这条路线是可取的。