在**机器学习**(**ML**)中,我们尝试自动发现用于将输入数据映射到所需输出的规则。 在此过程中,创建适当的数据表示形式非常重要。 例如,如果我们要创建一种将电子邮件分类为垃圾邮件/火腿的算法,则需要用数字表示电子邮件数据。 一个简单的表示形式可以是二进制向量,其中每个组件从预定义的单词表中描述单词的存在与否。 同样,这些表示是与任务相关的,也就是说,表示可能会根据我们希望 ML 算法执行的最终任务而有所不同。
在前面的电子邮件示例中,如果我们要检测电子邮件中的情绪,则不必标识垃圾邮件/火腿,而更有用的数据表示形式可以是二进制向量,其中预定义词汇表由具有正极性或负极性的单词组成。 大多数 ML 算法(例如随机森林和逻辑回归)的成功应用取决于数据表示的质量。 我们如何获得这些表示? 通常,这些表示是人为制作的功能,通过做出一些明智的猜测来进行迭代设计。 此步骤称为**特征工程**,是大多数 ML 算法中的关键步骤之一。 **支持向量机**(**SVM**)或一般的内核方法,试图通过将数据的手工表示转换为更高维度的空间来创建更相关的数据表示,使得使用分类或回归来解决 ML 任务变得容易。 但是,SVM 很难扩展到非常大的数据集,并且在诸如图像分类和语音识别等问题上并不成功。 诸如随机森林和**梯度提升机**(**GBMs**)之类的集合模型创建了一组弱模型,这些模型专门用于很好地完成小任务,然后将这些弱模型以一些方式组合来产生最终输出。 当我们有非常大的输入尺寸时,它们工作得很好,而创建手工制作的功能是非常耗时的步骤。 总而言之,所有前面提到的 ML 方法都以浅浅的数据表示形式工作,其中涉及通过一组手工制作的特征进行数据表示,然后进行一些非线性转换。
在前面的电子邮件示例中,如果我们要检测电子邮件中的情感,则不必标识垃圾邮件/火腿,而更有用的数据表示形式可以是二进制向量,其中预定义词汇表由具有正极性或负极性的单词组成。 大多数 ML 算法(例如随机森林和逻辑回归)的成功应用取决于数据表示的质量。 我们如何获得这些表示? 通常,这些表示是人为制作的功能,通过做出一些明智的猜测来进行迭代设计。 此步骤称为**特征工程**,是大多数 ML 算法中的关键步骤之一。 **支持向量机**(**SVM**)或一般的内核方法,试图通过将数据的手工表示转换为更高维度的空间来创建更相关的数据表示,使得使用分类或回归来解决 ML 任务变得容易。 但是,SVM 很难扩展到非常大的数据集,并且在诸如图像分类和语音识别等问题上并不成功。 诸如随机森林和**梯度提升机**(**GBMs**)之类的集合模型创建了一组弱模型,这些模型专门用于很好地完成小任务,然后将这些弱模型以一些方式组合来产生最终输出。 当我们有非常大的输入尺寸时,它们工作得很好,而创建手工制作的功能是非常耗时的步骤。 总而言之,所有前面提到的 ML 方法都以浅浅的数据表示形式工作,其中涉及通过一组手工制作的特征进行数据表示,然后进行一些非线性转换。
深度学习是 ML 的一个子字段,在其中创建数据的分层表示。 层次结构的较高级别由较低级别的表示形式组成。 更重要的是,通过完全自动化 ML 中最关键的步骤(称为**特征工程**),可以从数据中自动学习这种表示层次。 在多个抽象级别上自动学习功能允许系统直接从数据中学习输入到输出的复杂表示形式,而无需完全依赖于人工制作的功能。