📜  机器学习-降维技术简介

📅  最后修改于: 2020-09-29 03:30:04             🧑  作者: Mango

降维技术简介

什么是降维?

给定数据集中存在的输入要素,变量或列的数量称为维数,而减少这些特征的过程称为维数减少。

数据集在各种情况下都包含大量输入特征,这使得预测建模任务更加复杂。由于很难对具有大量特征的训练数据集进行可视化或做出预测,因此在这种情况下,需要使用降维技术。

降维技术可以定义为:“这是一种将较高维度的数据集转换为较小维度的数据集,以确保提供相似信息的方法。”这些技术广泛用于机器学习中,以在解决分类和回归问题的同时获得更好的拟合预测模型。

它通常用于处理高维数据的领域,例如语音识别,信号处理,生物信息学等。还可以用于数据可视化,降噪,聚类分析等。

维数的诅咒

在实践中,处理高维数据非常困难,通常称为维诅咒。如果输入数据集的维数增加,则任何机器学习算法和模型都将变得更加复杂。随着特征数量的增加,样本数量也会成比例地增加,并且过拟合的机会也会增加。如果机器学习模型是在高维数据上训练的,则它变得过拟合并导致较差的性能。

因此,通常需要减少特征的数量,这可以通过降低尺寸来实现。

应用降维的好处

下面给出了将降维技术应用于给定数据集的一些好处:

  • 通过减少要素的尺寸,存储数据集所需的空间也减少了。
  • 为了减少特征尺寸,需要更少的计算训练时间。
  • 数据集特征尺寸的减小有助于快速可视化数据。
  • 吨通过取多重共护理去除冗余特征(如果存在)。

降维的缺点

应用降维还有一些缺点,如下所示:

  • 由于降维,某些数据可能会丢失。
  • 在PCA降维技术中,有时需要考虑的主要成分是未知的。

降维方法

有两种方法可以应用降维技术,如下所示:

功能选择

特征选择是选择相关特征的子集并忽略数据集中存在的不相关特征以建立高精度模型的过程。换句话说,这是从输入数据集中选择最佳特征的一种方式。

三种方法用于特征选择:

1.筛选方法

在此方法中,将过滤数据集,并获取仅包含相关特征的子集。过滤器方法的一些常见技术是:

  • 相关性
  • 卡方检验
  • 方差分析
  • 信息增益等

2.包装方法

包装器方法与过滤器方法具有相同的目标,但是它采用机器学习模型进行评估。在这种方法中,一些特征被馈送到ML模型,并评估性能。性能决定是添加这些功能还是删除这些功能以提高模型的准确性。该方法比过滤方法更准确,但工作复杂。包装器方法的一些常见技术是:

  • 正向选择
  • 向后选择
  • 双向消除

3.嵌入式方法:嵌入式方法检查机器学习模型的不同训练迭代,并评估每个功能的重要性。嵌入式方法的一些常见技术是:

  • 套索
  • 弹性网
  • 岭回归等

特征提取:

特征提取是将包含多个维的空间转换为具有较少维的空间的过程。当我们要保留整个信息但在处理信息时使用较少的资源时,此方法很有用。

一些常见的特征提取技术是:

  • 主成分分析
  • 线性判别分析
  • 内核PCA
  • 二次判别分析

降维常用技术

  • 主成分分析
  • 向后淘汰
  • 正向选择
  • 分数比较
  • 价值缺失率
  • 低方差滤波器
  • 高相关滤波器
  • 随机森林
  • 因子分析
  • 自动编码器

主成分分析(PCA)

主成分分析是一种统计过程,可以借助正交变换将相关特征的观察结果转换为一组线性不相关特征。这些新的转换后的功能称为主成分。它是用于探索性数据分析和预测建模的流行工具之一。

PCA通过考虑每个属性的方差来工作,因为高属性显示类别之间的良好划分,因此降低了维数。 PCA的一些实际应用是图像处理,电影推荐系统,可以优化各种通信渠道中的功率分配。

后退特征消除

向后特征消除技术主要在开发线性回归或逻辑回归模型时使用。使用此技术执行以下步骤以减少尺寸或选择特征:

  • 在这种技术中,首先,将给定数据集的所有n个变量用于训练模型。
  • 检查模型的性能。
  • 现在,我们将每次删除一个特征,并在n-1个特征上训练模型n次,并计算模型的性能。
  • 我们将检查对模型的性能影响最小或没有变化的变量,然后删除该变量或特征。之后,我们将剩下n-1个特征。
  • 重复整个过程,直到无法删除任何功能。

在这项技术中,通过选择模型的最佳性能和最大可容忍的错误率,我们可以定义机器学习算法所需的最佳特征数量。

前进特征选择

前向特征选择遵循后向消除过程的逆过程。这意味着,在这项技术中,我们不会消除此功能;相反,我们将找到可以最大程度提高模型性能的最佳功能。使用此技术执行以下步骤:

  • 我们仅从单个功能开始,然后逐步将每个功能添加一次。
  • 在这里,我们将分别针对每个功能训练模型。
  • 选择性能最佳的功能。
  • 该过程将重复进行,直到我们显着提高模型的性能为止。

价值缺失率

如果数据集缺少太多值,那么我们将删除这些变量,因为它们没有太多有用的信息。要执行此操作,我们可以设置阈值级别,如果变量的缺失值大于该阈值,我们将删除该变量。阈值越高,减少越有效。

低方差滤波器

与缺失值比率技术一样,数据中具有某些更改的数据列具有较少的信息。因此,我们需要计算每个变量的方差,并且所有方差低于给定阈值的数据列都将被删除,因为低方差特征不会影响目标变量。

高相关滤波器

高相关性是指两个变量携带近似相似的信息的情况。由于这个因素,模型的性能可能会降低。独立数值变量之间的这种相关性给出了相关系数的计算值。如果该值高于阈值,则可以从数据集中删除变量之一。我们可以考虑那些与目标变量具有高度相关性的变量或特征。

随机森林

随机森林是机器学习中一种流行且非常有用的特征选择算法。该算法包含一个内置的功能重要性包,因此我们不需要对其进行单独编程。在这种技术中,我们需要针对目标变量生成大量树,并借助每个属性的使用情况统计信息,我们需要找到要素的子集。

随机森林算法仅采用数值变量,因此我们需要使用热编码将输入数据转换为数值数据。

因子分析

因子分析是一种将每个变量根据与其他变量的相关性保留在组中的技术,这意味着组中的变量之间可以具有较高的相关性,而与其他组的变量却具有较低的相关性。

我们可以通过一个例子来理解它,例如,如果我们有两个变量收入和支出。这两个变量具有高度相关性,这意味着高收入人群的支出更多,反之亦然。因此,将此类变量放在一个组中,该组称为因素。与数据集的原始维度相比,这些因素的数量将减少。

自动编码器

自动编码器是降维的一种流行方法,它是一种ANN或人工神经网络,其主要目的是将输入复制到其输出。在这种情况下,将输入压缩为潜在空间表示,并使用该表示进行输出。它主要包括两个部分:

  • 编码器:编码器的函数是压缩输入以形成潜在空间表示。
  • 解码器:解码器的函数是从潜在空间表示中重新创建输出。