【问题标题】:why SVM obtain different result using different feature?为什么 SVM 使用不同的特征会得到不同的结果?
【发布时间】:2015-01-11 19:42:39
【问题描述】:

我使用 SVM 进行分类。我还应用了 TF、TFIDF 和 present-absent 作为一个特征。但我得到了不同的结果。现在我想知道这是怎么发生的? 我怎样才能检查这个结果的原因? 我应该提到,这种差异并不太大。大约是 2% 或 3%。

【问题讨论】:

    标签: svm tf-idf


    【解决方案1】:

    简而言之 - 因为每个机器学习方法依赖表示。特别是,对于任何合理(能够学习线性可分数据)的分类器,确实存在导致该分类器具有 50% 准确度的数据表示(随机分类器,假设类是平衡的)并且存在导致结果的数据表示在具有 100% 准确率的分类器中(假设贝叶斯风险为零)。考虑一个“特征集”{f(x)},其中 f(x)=0。换句话说,我们将每个数据点表示为单个数字 0,忽略其真实位置和标签。结果,任何分类器都会失败并将它们全部分类为一个类的成员,因此获得 50% 的准确率(再次假设每个类中的样本数量相同)。现在考虑 {g(x)},其中 g(x)=label(x)。换句话说,我们使用了一些假设的预言机,它将一个点编码为它的标签。一般来说,我们不能构造这样的 g(这就是 ML 的全部内容),但我们正在谈论存在性,而且这肯定存在(假设贝叶斯风险为零)。所以现在我们的分类器必须区分点 {-1} 和点 {1}(所有正样本都映射到 +1,所有负样本都映射到 -1),这是微不足道的,它会以 100% 的准确率做到这一点。

    这些都是“边界”案例,但这只是为了画一个直觉。 一切都取决于表示。一个可以比其他更好(在某些方面!)。没有严格的规定。有时向一个好的表示添加新特征可能会破坏它的价值(例如由于维度灾难),有时甚至随机特征也表现得很好。有一个完整的(这些年来非常活跃的)研究领域,称为表征学习,我建议你看看。

    【讨论】:

      猜你喜欢
      • 2015-04-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-02-10
      • 2020-02-11
      • 1970-01-01
      • 2018-09-06
      • 1970-01-01
      相关资源
      最近更新 更多