降维和特征选择的对比介绍

简介: 在machine learning中,特征降维和特征选择是两个常见的概念,在应用machine learning来解决问题的论文中经常会出现。特征降维和特征选择的目的都是使数据的维数降低,使数据维度降小。但实际上两者的区别是很大,他们的本质是完全不同的。

降维?

降低数据集中特征的维数,同时保持尽可能多的信息的技术被称为降维。它是机器学习和数据挖掘中常用的技术,可以最大限度地降低数据复杂性并提高模型性能。

降维可以通过多种方式实现,包括:

主成分分析 (PCA):PCA 是一种统计方法,可识别一组不相关的变量,将原始变量进行线性组合,称为主成分。

第一个主成分解释了数据中最大的方差,然后每个后续成分解释主键变少。PCA 经常用作机器学习算法的数据预处理步骤,因为它有助于降低数据复杂性并提高模型性能。

LDA(线性判别分析):LDA是一种用于分类工作的统计工具。它的工作原理是确定数据属性的线性组合,最大限度地分离不同类别。为了提高模型性能,LDA经常与其他分类技术(如逻辑回归或支持向量机)结合使用。

t-SNE: t-分布随机邻居嵌入(t-SNE)是一种非线性降维方法,特别适用于显示高维数据集。它保留数据的局部结构来,也就是说在原始空间中靠近的点在低维空间中也会靠近。t-SNE经常用于数据可视化,因为它可以帮助识别数据中的模式和关系。

独立分量分析(Independent Component Analysis) ICA实际上也是对数据在原有特征空间中做的一个线性变换。相对于PCA这种降秩操作,ICA并不是通过在不同方向上方差的大小,即数据在该方向上的分散程度来判断那些是主要成分,那些是不需要到特征。而ICA并没有设定一个所谓主要成分和次要成分的概念,ICA认为所有的成分同等重要,而我们的目标并非将重要特征提取出来,而是找到一个线性变换,使得变换后的结果具有最强的独立性。PCA中的不相关太弱,我们希望数据的各阶统计量都能利用,即我们利用大于2的统计量来表征。而ICA并不要求特征是正交的。如下图所示:

还有许多其他技术可以用于降维,包括多维缩放、自编码器等。技术的选择将取决于数据的具体特征和分析的目标。

特征选择?

在数据集中选择一个特征子集(也称为预测因子或自变量)用于机器学习模型的过程被称为特征选择。特征选择的目的是发现对预测目标变量(也称为响应变量或因变量)最相关和最重要的特征。

使用特征选择有很多优点:

  • 改进的模型可解释性:通过降低模型中的特征量,可以更容易地掌握和解释变量和模型预测之间的关系。
  • 降低过拟合的危险:当一个模型包含太多特征时,它更有可能过拟合,这意味着它在训练数据上表现良好,但在新的未知数据上表现不佳。通过选择最相关特征的子集,可以帮助限制过拟合的风险。
  • 改进模型性能:通过从模型中删除不相关或多余的特征,可以提高模型的性能和准确性。

有许多可用的特征选择方法:

  • 过滤方法:这些方法基于相关或相互信息等统计测量来选择特征。
  • 包装器方法:这些方法利用机器学习算法来评估各种特征子集的性能,并选择最佳的一个。
  • 嵌入方法:这些方法将特征选择作为机器学习算法训练过程的一部分。

所使用的特征选择方法将由数据的质量和研究的目标决定。为了为模型选择最优的特征子集,通常是尝试各种方法并比较结果。

降维与特征选择的区别

特征选择从数据集中选择最重要特征的子集,特征选择不会改变原始特征的含义和数值,只是对原始特征进行筛选。而降维将数据转换为低维空间,会改变原始特征中特征的含义和数值,可以理解为低维的特征映射。这两种策略都可以用来提高机器学习模型的性能和可解释性,但它们的运作方式是截然不同的。

https://avoid.overfit.cn/post/080bfade8cd046d5ad0523311d3b86ce

作者:Ankit Sanjyal

目录
相关文章
|
机器学习/深度学习 算法 搜索推荐
推荐算法介绍
推荐算法介绍
1449 0
|
SQL 人工智能 算法
Android性能优化之应用瘦身(APK瘦身)
Android性能优化之应用瘦身(APK瘦身)
|
机器学习/深度学习
利用matlab提取出频域和时域信号的29个特征
利用matlab提取出频域和时域信号的29个特征
|
SQL XML Java
MyBatis——选择混合模式还是全注解模式?
在MyBatis开发中,Mapper接口的实现方式有两种:全注解模式和混合模式。全注解模式直接将SQL嵌入代码,适合小规模、简单逻辑项目,优点是直观简洁,但复杂查询时代码臃肿、扩展性差。混合模式采用接口+XML配置分离的方式,适合大规模、复杂查询场景,具备更高灵活性与可维护性,但学习成本较高且调试不便。根据项目需求与团队协作情况选择合适模式至关重要。
296 4
|
机器学习/深度学习 运维 数据挖掘
时间序列特征提取:18 种高效工具库及其应用分析
时间序列特征提取是数据科学的重要环节,可将原始数据转化为分析价值高的特征表示。本文介绍18个Python库,涵盖通用与专业领域(如医疗、金融)的特征提取工具。这些库包括tsfeatures、tsfresh、librosa等,各自针对特定任务(如预测、分类、异常检测)提供独特功能。通过结合不同库的特点,数据科学家能更高效地进行特征工程,提升模型性能与分析深度。文章总结了各库的优势及适用场景,为实际应用提供了全面指导。
913 0
|
机器学习/深度学习 人工智能 运维
智能化运维在现代数据中心的应用与挑战####
本文深入探讨了智能化运维(AIOps)技术在现代数据中心管理中的实际应用,分析了其带来的效率提升、成本节约及潜在风险。通过具体案例,阐述了智能监控、自动化故障排查、容量规划等关键功能如何助力企业实现高效稳定的IT环境。同时,文章也指出了实施过程中面临的数据隐私、技术整合及人才短缺等挑战,并提出了相应的解决策略。 --- ####
443 22
|
机器学习/深度学习 算法 数据可视化
【机器学习】ID3、C4.5、CART 算法
【机器学习】ID3、C4.5、CART 算法
|
数据采集 运维 监控
游戏日志分析2:全方位数据采集
在上一篇文章中,我们介绍了日志数据对游戏的重要性,这一篇我们来讨论下如何高效地实施全方位无死角的日志采集。
7078 0
|
机器学习/深度学习 运维 算法
无监督学习的12个最重要的算法介绍及其用例总结
无监督学习的12个最重要的算法介绍及其用例总结
1943 5
|
NoSQL 关系型数据库 分布式数据库
【赵渝强老师】HBase的表结构
本文介绍了Google的BigTable思想及其对HBase的影响。BigTable将所有数据存入一张表中以提高查询性能,而HBase作为其具体实现,采用列式存储,适合数据分析和处理。文章通过示例说明了HBase的表结构和数据插入方法,并提供了相关代码和图示。
661 0