我遇到了一个SVM示例,但我不明白。如果有人可以解释预测是如何工作的,我将不胜感激。请参阅以下说明:
数据集 10,000次观察, 5个属性(Sepal Width
,Sepal Length
,Petal Width
,Petal Length
, Label
)。如果标签属于positive
类,则标签为I.setosa
;如果属于其他类,则为negative
。
6000观察,其结果已知(即它们属于I.setosa
类,因此它们对于label属性为正)。其余 4000 的标签未知,因此标签被认为是否定的。 6000观察和 2500 从剩余 4000 随机选择的观察结果形成 10倍交叉验证的集合。然后将SVM(10倍交叉验证)用于 8500观察的机器学习,并绘制 ROC 。
我们在这里预测哪里?该集合具有 6000观察,其值已知。剩下的 2500 如何获得负面标签?当使用SVM时,一些正面观察得到负面预测。这里的预测对我没有任何意义。为什么 1500次观察被排除在外。
我希望我的解释清楚。如果我没有清楚地解释清楚,请告诉我。
答案 0 :(得分:1)
我认为问题是语义问题:你将4000个样本的集合称为“未知”和“否定” - 其中哪些适用是关键区别。
如果4000个样本的标签确实是未知的,那么我将使用该样本进行1级SVM 6000个标记样本[c.f.验证如下]。然后通过测试N = 4000集来生成预测,以评估它们是否属于setosa类。
如果相反,我们有6000个setosa和4000个(已知的)非setosa,我们可以构造一个二进制文件 基于这些数据的分类器[c.f.下面的验证],然后用它来预测setosa与非on 任何其他可用的非标签数据。
验证:通常作为模型构建过程的一部分,您只需要标记的一部分 训练数据并使用它来配置模型。对于未使用的子集,您将模型应用于数据(忽略标签),并将模型预测的内容与真实标签的内容进行比较,以便评估错误率。这适用于1级和 上面的2级情况。
总结:如果您的所有数据都已标记,那么通常会有人对其中的一部分数据进行预测(忽略已知标签),作为模型验证过程的一部分。
答案 1 :(得分:0)
您的SVM分类器经过培训,可以判断新的(未知)实例是否是I. Setosa的实例。换句话说,您正在预测新的未标记实例是否为I.Setosa。
您可能找到了错误分类的结果,因为您的训练数据的实例多于肯定的情况。此外,通常会有一些误差。
总结:您的SVM分类器学习了如何识别I.Setosa实例,但是,它提供的非I.Setosa实例的示例太少,这可能会让您产生偏见模型。