数据挖掘中的特征提取
数据挖掘是指从大量数据中提取或挖掘知识。换句话说,数据挖掘是发现大量复杂数据以发现有用模式的科学、艺术和技术。理论家和实践者一直在寻求改进的技术,以使该过程更高效、更具成本效益和更准确。
“Data is the new oil for IT industry.” – by Clive Humby
“The world is one big data problem.” – by Andrew McAfee, co-director of the MIT Initiative
“Data is the new science. Big Data holds the answers.” – By Pat Gelsinger
这确实是真的,因为有大量数据可供我们使用,一旦处理完毕,我们绝对可以在一个或其他领域使用这些数据。但是,行业只需要全部数据的子集。所以实际上,我们需要一些机制来访问我们实际需要的部分数据。但是,这项工作不能手动完成,因为它很耗时,有时会超出我们的范围。
假设我们想为某个公司或我们自己的项目需求构建一个机器学习项目,我们需要图像来制作一个对象检测项目。制作此类项目需要一个可能包含许多属性的图像数据集。所以为了和他们一起工作,我们必须首先提取我们需要的特征。因此,在这种情况下,特征提取在使我们的生活变得轻松方面发挥着重要作用。
特征提取
特征提取基本上是一个降维过程,其中获得的原始数据被分成相关的可管理组。这些大型数据集的一个显着特征是它们包含大量变量,此外这些变量需要大量计算资源才能处理它们。因此,在这种情况下,特征提取在选择特定变量以及组合一些相关变量时可能很有用,这在某种程度上会减少数据量。获得的结果将在精度和召回措施的帮助下进行评估。 PCA 是最常用的线性降维技术之一。它是一种无监督学习算法。
特征生成
特征生成是从已经存在的特征中发明新特征的过程。由于数据集的大小变化很大,因此无法管理较大的数据集。因此,这个特征生成过程可以起到至关重要的作用,以简化任务。为了避免生成无意义的特征,我们利用一些数学公式和统计模型来提高清晰度和准确性。此过程通常会向模型添加更多信息以使其更准确。所以提高模型的准确性是可以通过这个过程来实现的。这个过程在某种程度上通过检测有意义的交互来忽略无意义的交互。
特征评估
最重要的是首先确定功能的优先级,以便以组织良好的方式完成我们的工作,因此功能评估可以成为实现此目的的工具。在这里,每一个功能都被评估,以便客观地对它们进行评分,然后根据当前的需要使用它们。不重要的可以忽略。因此,为了通过减少数据中的偏差和不一致性来获得模型的正确最终输出,特征评估是一项重要的任务。
线性和非线性特征提取
特征提取可以分为两大类,即线性和非线性。线性特征提取的示例之一是 PCA(主成分分析)。主成分是数据集中原始特征的归一化线性组合。 PCA 基本上是一种从数据集中可用的大量变量中获取所需变量(重要变量)的方法。 PCA倾向于使用正交变换将数据变换到低维空间,从而最大化数据的方差。
PCA 可用于异常和异常值检测,因为它们在整个数据集中被视为噪声或不相关数据。
从头开始构建 PCA 的步骤如下:
- 首先,标准化数据
- 此后,计算协方差矩阵
- 然后,计算协方差矩阵的特征向量和特征值。
- 按降序排列所有特征值。
- 归一化排序的特征值。
- 水平堆叠 Normalized_Eigenvalues
当数据是非线性的时,PCA 会失败,这可以被认为是 PCA 的最大缺点之一。这就是 Kernel-PCA 发挥作用的地方。 Kernel-PCA 类似于 SVM,因为它们都实现了 Kernel-Trick 以将非线性数据转换为更高维数据,直到数据可分离。在人脸识别的情况下,可以使用非线性方法在大型数据集上提取特征。
特征提取的应用
- Bag of Words:这是自然语言处理领域使用最广泛的技术。在这里,首先对句子进行标记、词形还原,并删除停用词。之后,将单词单独分类为使用频率。由于特征通常是从文档或网站中存在的句子中提取的,因此特征提取在这种情况下起着至关重要的作用。
- 图像处理:图像处理是特征提取被广泛使用的最具探索性的领域之一。由于在数字图像的情况下图像代表不同的特征或属性,例如形状、色调、运动,因此对它们进行处理至关重要,以便仅提取指定的特征。除了特征提取之外,图像处理还使用了许多算法。
- 自动编码器:这主要用于我们想要学习原始数据的压缩表示时。所执行的程序本质上是无监督的。因此,特征提取在从数据中识别关键特征方面发挥着重要作用,这将帮助我们通过学习原始数据集的编码来进行编码,从而获得新的特征。
- 有效的特征提取在解决机器学习相关项目中的欠拟合和过拟合问题方面也发挥着重要作用。
- 特征提取还为我们提供了数据集中存在的数据的清晰且即兴的可视化,因为仅提取了重要和必需的数据。
- 特征提取有助于以更有效的方式训练模型,从而基本上加快了整个过程。
它与特征选择有何不同?
特征选择旨在对数据集中先前存在的特征的重要性进行排序,进而删除不太重要的特征。然而,特征提取关注的是减少数据集的维度以使数据集更加清晰。
当数据是非线性的时,PCA 会失败,这可以被认为是 PCA 的最大缺点之一。这就是 Kernel-PCA 发挥作用的地方。 Kernel-PCA 与 SVM 相似,因为它们都实现了 Kernel-Trick 以将非线性数据转换为更高维度的数据,直到数据可分离。在人脸识别的情况下,可以使用非线性方法来提取大型数据集上的特征。
因此,特征提取在大多数领域都有其不同的用途。这出现在任何使用大型数据集的项目的开始阶段。因此,必须仔细执行和评估特征提取的整个过程,以获得更准确的优化结果,这反过来将有助于我们更好地了解数据集中存在的变量之间的关系,从而为下一阶段的计划做准备。执行。