1

为了提高 adaboost 分类器(用于图像分类)的准确性,我正在使用遗传编程来推导新的统计度量。每次生成新特征时,我都会通过训练 adaboost 分类器并测试其性能来评估其适应度。但我想知道该程序是否正确;我的意思是使用单个特征来训练学习模型。

4

1 回答 1

2

您可以在一个特征上构建模型。我假设,“一个功能”的意思只是一个数字R(否则,这将是完全“传统”的用法)。然而,这意味着,您正在构建一维空间中的分类器,因此 - 许多分类器将是多余的(因为这确实是一个简单的问题)。更重要的是 - 检查您是否可以使用一个特定维度正确分类对象并不意味着一旦您使用它们的组合,它就是一个好/坏的功能。特别是可能出现以下情况:

  • 许多特征可能在数据中“发现”相同的现象,因此——它们中的每一个都可以单独产生良好的结果,但一旦组合起来——它们不会比它们中的每一个更好(因为它们只是捕获相同的信息
  • 在组合使用之前,功能可能是无用的。有些现象只能在多维空间中描述,如果你只分析一维数据 - 你永远不会发现它们的真正价值,作为一个简单的例子,考虑四个点(0,0),(0,1),(1,0),(1,1)(0,0),(1,1)它们是一个类的元素,其余的另一个。如果您分别查看每个维度 - 那么可能的最佳精度是0.5(因为您总是在完全相同的点上有两个不同类别的点 - 0 和 1)。一旦合并 - 您可以轻松地将它们分开,因为这是一个xor问题。

综上所述——在一维空间中构建分类器是可以的,但是:

  • 这样的问题可以在没有“重型机械”的情况下解决。
  • 结果不应该被用作特征选择的基础(或者更严格 - 这可能非常具有欺骗性)。
于 2013-09-02T18:14:39.653 回答