看不懂特征提取

数据挖掘 机器学习 神经网络 深度学习 特征工程 特征提取
2022-02-26 13:27:33

我正在学习 AI 课程,我们刚刚进入深度学习章节。谈到经典机器学习模型和深度学习之间的区别,事实证明,支持神经网络的最相关的一点是它不需要特征提取阶段。那是因为它可以直接在我们作为输入的数据上隐式学习最重要的特征是什么。相反,机器学习系统在开始训练之前严重依赖特征提取。

我在这个网站上发现了一些关于这个主题的有用问题,但我仍然对理解特征提取的真正含义感到有些困惑。所以我请老师给我举个例子。

他给了我这个例子:假设我们有一个巨大的图像数据集,我们想根据图片中至少一棵树的存在与否对它们进行分类因此,如果图像包含树,则将其分类为1 ,否则将分类为-1

  • 神经网络的情况下,我们只需将图像及其标签输入网络。就这样。网络将学习什么是树,并将优化其权重以检测它们
  • 相反,如果我们想使用机器学习算法,除了标记图像之外,我们还必须告诉模型一棵树实际上是什么。这部分是特征提取阶段

我不明白如何告诉模型图像中的树是什么。我认为发现它是机器学习算法任务的一部分。

1个回答

初步说明

据我所知,人们使用术语特征提取的方式可能略有不同:

  • 指用于降维的自动方法,其中涉及转换特征(而不仅仅是选择特征的子集)。
  • 指在这些特征上训练/测试模型之前设计和工程化特征的一般过程。

请注意,我不能 100% 确定我自己使用的术语是标准的。(但我认为您提出的问题并不重要)。

回答

在您提到的上下文中使用,该术语当然是指特征工程的一般过程(以上第 2 点)。

在传统的 ML 模型中,模型直接使用提供给训练算法的特征。例如,决策树分类模型试图在特征中找到最佳条件来区分数据。这意味着算法选择单个特征并直接使用其值范围来构建条件,如下所示:

 if color == 'green' then go to subtree 1 else go to subtree 2

因此,模型可以使用的信息类型受到算法和提供给它的特征的严格限制:没有办法将任何不能直接用作特征的信息考虑在内。因此,特征工程阶段至关重要。例如在文本分类中有很多选择:提供词频或 TFIDF 作为特征?提供所有单词或删除停用词?Lemmatize 与否?添加 POS 标签?而这些只是一些非常标准的问题,具体的任务可能需要非常详细的分析。重要的是,不可能只提供人们能想到的所有特征,因为这几乎肯定会导致模型由于大量特征而过拟合。

这是 DL 不需要的阶段:由于更复杂的架构和算法过程,DL 模型本身可以选择和组合它需要的功能以使其表现良好。

我认为发现它是机器学习算法任务的一部分。

当然,但在传统 ML 中,为了让模型发现特定任务的最重要模式,必须以最大化模型找到这些模式的机会的方式准备特征。比喻:如果老师告诉他们的学生为了考试而修改教科书的第63页,学生的表现可能会比他们不知道该主题而需要修改整本教科书的情况下表现得更好。