机器学习中7种常用的线性降维技术总结

本文涉及的产品
实时计算 Flink 版,5000CU*H 3个月
检索分析服务 Elasticsearch 版,2核4GB开发者规格 1个月
智能开放搜索 OpenSearch行业算法版,1GB 20LCU 1个月
简介: 上篇文章中我们主要总结了非线性的降维技术,本文我们来总结一下常见的线性降维技术。

1、Principal Component Analysis (PCA)

Principal Component Analysis (PCA) 是一种常用的降维技术,用于将高维数据集转换为低维表示,同时保留数据集的主要特征。PCA 的目标是通过找到数据中最大方差的方向(主成分),将数据投影到这些方向上,从而实现降维。

PCA 的主要思想是通过线性变换将原始数据映射到一个新的坐标系下,使得在新的坐标系下数据的方差最大化。这些新的坐标轴称为主成分,它们是原始特征的线性组合。通过保留最大方差的主成分,可以保留数据中最重要的信息,而丢弃方差较小的主成分可以达到降维的效果。

PCA 的步骤如下:

  1. 标准化数据:对原始数据进行标准化处理,使得每个特征的均值为 0,方差为 1。
  2. 计算协方差矩阵:计算标准化后的数据的协方差矩阵。
  3. 计算特征值和特征向量:对协方差矩阵进行特征值分解,得到特征值和对应的特征向量。
  4. 选择主成分:按照特征值的大小选择前 k 个特征向量作为主成分,其中 k 是降维后的维度。
  5. 投影数据:将原始数据投影到选定的主成分上,得到降维后的数据集。

PCA 可以用于数据可视化、去除噪音、减少计算量等。然而,需要注意的是,PCA 假设数据是线性可分的,因此在应用 PCA 之前需要对数据进行一定的预处理和理解。

2、Factor Analysis (FA)

Factor Analysis (FA) 是一种统计方法,用于探索观察到的变量之间的潜在结构或因素。它试图找到能够解释观察到的变量之间共同变异的潜在因素,并将这些变量归纳为较少数量的无关变量。

FA 和 PCA 有些相似,但也有一些重要的区别:

  1. 目标:PCA 旨在找到最大方差的方向,而 FA 旨在找到潜在的变量(因素),这些变量能够解释观察到的变量之间的共同变异。
  2. 假设:PCA 假设观察到的变量是观察到的原始特征,而 FA 假设观察到的变量是潜在因素的线性组合和随机误差的总和。
  3. 解释性:PCA 往往更直接,因为它的主成分是原始特征的线性组合。而 FA 的因素可能不太容易解释,因为它们是观察到的变量的线性组合,而非原始特征。
  4. 旋转:在 FA 中,因素通常会进行旋转,以使它们更易于解释。

FA 在许多领域都有应用,包括心理学、社会科学、市场研究等。它可用于简化数据集、识别潜在结构、减少测量误差等。但是需要谨慎选择适当的因素数目和因素旋转方法,以确保结果的可解释性和有效性。

3、Linear Discriminant Analysis,LDA

线性判别分析(Linear Discriminant Analysis,LDA)是一种用于降维和特征提取的监督学习技术。它与主成分分析(PCA)不同,因为它不仅考虑了数据的方差结构,还考虑了数据的类别信息。LDA 旨在找到一个投影方向,最大化不同类别之间的距离(类间散布),同时最小化同一类别内部的距离(类内散布)。

LDA 的主要步骤如下:

  1. 计算类别的均值向量:对于每个类别,计算该类别下所有样本的均值向量。
  2. 计算类内散布矩阵(Within-class scatter matrix):对于每个类别,计算该类别下所有样本与其均值向量之间的散布矩阵,并将它们求和。
  3. 计算类间散布矩阵(Between-class scatter matrix):计算所有类别的均值向量与总体均值向量之间的散布矩阵。
  4. 计算特征值和特征向量:对于矩阵的逆矩阵乘以类间散布矩阵,得到的矩阵进行特征值分解,得到特征值和特征向量。
  5. 选择投影方向:选择特征值最大的前 k 个特征向量作为投影方向,其中 k 是降维后的维度。
  6. 投影数据:将原始数据投影到选定的投影方向上,得到降维后的数据。

LDA 的优点在于它考虑了数据的类别信息,因此生成的投影能更好地区分不同类别之间的差异。它在模式识别、人脸识别、语音识别等领域中有着广泛的应用。LDA 在处理多类别和类别不平衡的情况下可能会遇到一些问题,需要特别注意。

4、Eigendecomposition

Eigendecomposition(特征值分解)是一种用于对方阵进行分解的数学技术。它将一个方阵分解为一组特征向量和特征值的乘积形式。特征向量表示了在转换中不改变方向的方向,而特征值表示了在转换中沿着这些方向的缩放比例。

给定一个方阵 A,其特征值分解表示为:

其中,Q是由 A 的特征向量组成的矩阵,Λ是对角矩阵,其对角线上的元素是 A的特征值。

特征值分解有许多应用,包括主成分分析(PCA)、特征脸识别、谱聚类等。在PCA中,特征值分解用于找到数据协方差矩阵的特征向量,从而找到数据的主成分。在谱聚类中,特征值分解用于找到相似性图的特征向量,从而进行聚类。特征脸识别利用了特征值分解来识别人脸图像中的重要特征。

虽然特征值分解在许多应用中非常有用,但并非所有的方阵都能进行特征值分解。例如,奇异矩阵(singular matrix)或非方阵就不能进行特征值分解。特征值分解在大型矩阵计算上可能是非常耗时的。

5、Singular value decomposition (SVD)

奇异值分解(Singular Value Decomposition,SVD)是一种用于矩阵分解的重要技术。它将一个矩阵分解为三个矩阵的乘积形式,这三个矩阵分别是一个正交矩阵、一个对角矩阵和另一个正交矩阵的转置。

给定一个 m × n 的矩阵 AA,其奇异值分解表示为:

其中,U 是一个 m × m 的正交矩阵,称为左奇异向量矩阵;Σ 是一个 m × n 的对角矩阵,其对角线上的元素称为奇异值;VT 是一个 n × n 的正交矩阵的转置,称为右奇异向量矩阵。

奇异值分解具有广泛的应用,包括数据压缩、降维、矩阵逆求解、推荐系统等。在降维中,只保留奇异值较大的项,可以实现对数据的有效压缩和表示。在推荐系统中,通过奇异值分解可以对用户和项目之间的关系进行建模,从而提供个性化的推荐。

奇异值分解还可以用于矩阵逆求解,特别是对于奇异矩阵。通过保留奇异值较大的项,可以近似求解逆矩阵,从而避免了对奇异矩阵求逆的问题。

6、Truncated Singular Value Decomposition (TSVD)

截断奇异值分解(Truncated Singular Value Decomposition,TSVD)是奇异值分解(SVD)的一种变体,它在计算中只保留最重要的奇异值和对应的奇异向量,从而实现数据的降维和压缩。

给定一个 m × n 的矩阵 AA,其截断奇异值分解表示为:

其中,Uk 是一个 m × k 的正交矩阵,Σk 是一个 k × k 的对角矩阵,VkT 是一个 k × n 的正交矩阵的转置,这些矩阵对应于保留最重要的 k 个奇异值和对应的奇异向量。

TSVD 的主要优点在于它可以通过保留最重要的奇异值和奇异向量来实现数据的降维和压缩,从而减少了存储和计算成本。这在处理大规模数据集时尤其有用,因为可以显著减少所需的存储空间和计算时间。

TSVD 在许多领域都有应用,包括图像处理、信号处理、推荐系统等。在这些应用中,TSVD 可以用于降低数据的维度、去除噪声、提取关键特征等。

7、Non-Negative Matrix Factorization (NMF)

Non-Negative Matrix Factorization (NMF) 是一种用于数据分解和降维的技术,其特点是分解得到的矩阵和向量都是非负的。这使得 NMF 在许多应用中都很有用,特别是在文本挖掘、图像处理和推荐系统等领域。

给定一个非负矩阵 VV,NMF 将其分解为两个非负矩阵 WW 和 HH 的乘积形式:

其中,W 是一个 m × k 的非负矩阵,称为基矩阵(basis matrix)或者特征矩阵(feature matrix),H 是一个 k × n 的非负矩阵,称为系数矩阵(coefficient matrix)。这里的 k 是降维后的维度。

NMF 的优点在于它能够得到具有物理含义的分解结果,因为所有的元素都是非负的。这使得 NMF 在文本挖掘中能够发现潜在的主题,而在图像处理中能够提取出图像的特征。此外,NMF 还具有数据降维的功能,可以减少数据的维度和存储空间。

NMF 的应用包括文本主题建模、图像分割与压缩、音频信号处理、推荐系统等。在这些领域中,NMF 被广泛应用于数据分析和特征提取,以及信息检索和分类等任务中。

总结

线性降维技术是一类用于将高维数据集映射到低维空间的技术,其核心思想是通过线性变换来保留数据集的主要特征。这些线性降维技术在不同的应用场景中有其独特的优势和适用性,可以根据数据的性质和任务的要求选择合适的方法。例如,PCA适用于无监督的数据降维,而LDA适用于监督学习任务。

结合前一篇文章,我们介绍了10种非线性降维技术核7种线性降维技术,下面我们来做个总结

线性降维技术:基于线性变换将数据映射到低维空间,适用于线性可分的数据集;例如数据点分布在一个线性子空间上的情况;因为其算法简单,所以计算效率高,易于理解和实现;通常不能捕捉数据中的非线性结构,可能会导致信息丢失。

非线性降维技术:通过非线性变换将数据映射到低维空间;适用于非线性结构的数据集,例如数据点分布在流形上的情况;能够更好地保留数据中的非线性结构和局部关系,提供更好的可视化效果;计算复杂度较高,通常需要更多的计算资源和时间。

如果数据是线性可分的或者计算资源有限,可以选择线性降维技术。而如果数据包含复杂的非线性结构或者需要更好的可视化效果,可以考虑使用非线性降维技术。在实践中,也可以尝试不同的方法,并根据实际效果来选择最合适的降维技术。

https://avoid.overfit.cn/post/8e5b22f48f3e4b68afc9e30e6d7c329e

目录
相关文章
|
26天前
|
机器学习/深度学习 人工智能 自然语言处理
人工智能与机器学习:探索未来的技术边界
【10月更文挑战第18天】 在这篇文章中,我们将深入探讨人工智能(AI)和机器学习(ML)的基础知识、应用领域以及未来趋势。通过对比分析,我们将揭示这些技术如何改变我们的生活和工作方式,并预测它们在未来可能带来的影响。文章旨在为读者提供一个全面而深入的理解,帮助他们更好地把握这一领域的发展趋势。
|
6天前
|
机器学习/深度学习 自然语言处理 语音技术
探索机器学习中的自然语言处理技术
【10月更文挑战第38天】在本文中,我们将深入探讨自然语言处理(NLP)技术及其在机器学习领域的应用。通过浅显易懂的语言和生动的比喻,我们将揭示NLP技术的奥秘,包括其工作原理、主要任务以及面临的挑战。此外,我们还将分享一些实用的代码示例,帮助您更好地理解和掌握这一技术。无论您是初学者还是有经验的开发者,相信您都能从本文中获得宝贵的知识和启示。
17 3
|
15天前
|
机器学习/深度学习 人工智能 自然语言处理
思通数科AI平台在尽职调查中的技术解析与应用
思通数科AI多模态能力平台结合OCR、NLP和深度学习技术,为IPO尽职调查、融资等重要交易环节提供智能化解决方案。平台自动识别、提取并分类海量文档,实现高效数据核验与合规性检查,显著提升审查速度和精准度,同时保障敏感信息管理和数据安全。
67 11
|
3月前
|
机器学习/深度学习 存储 人工智能
提升深度学习性能的利器—全面解析PAI-TorchAcc的优化技术与应用场景
在当今深度学习的快速发展中,模型训练和推理的效率变得尤为重要。为了应对计算需求不断增长的挑战,AI加速引擎应运而生。其中,PAI-TorchAcc作为一个新兴的加速引擎,旨在提升PyTorch框架下的计算性能。本文将详细介绍PAI-TorchAcc的基本概念、主要特性,并通过代码实例展示其性能优势。
18158 166
|
2月前
|
机器学习/深度学习 数据可视化 JavaScript
探索机器学习模型的可视化技术
【9月更文挑战第23天】在数据科学中,理解和解释机器学习模型的决策过程是至关重要的。本文将介绍几种流行的可视化工具和库,如TensorBoard、D3.js等,帮助读者更好地理解模型内部工作原理及其预测结果。通过实例演示如何使用这些工具进行模型可视化,增强模型的可解释性。
|
3月前
|
人工智能 Anolis
展示全栈式AI平台,探讨软硬件技术!英特尔分论坛议程来啦 | 2024 龙蜥大会
英特尔分论坛将依托英特尔云到端的全面产品组合,围绕至强可扩展处理器、AI 加速器、以及 oneAPI、OpenVINO 等软硬件技术展开探讨。
展示全栈式AI平台,探讨软硬件技术!英特尔分论坛议程来啦 | 2024 龙蜥大会
|
3月前
|
图形学 机器学习/深度学习 人工智能
颠覆传统游戏开发,解锁未来娱乐新纪元:深度解析如何运用Unity引擎结合机器学习技术,打造具备自我进化能力的智能游戏角色,彻底改变你的游戏体验——从基础设置到高级应用全面指南
【8月更文挑战第31天】本文探讨了如何在Unity中利用机器学习增强游戏智能。作为领先的游戏开发引擎,Unity通过ML-Agents Toolkit等工具支持AI代理的强化学习训练,使游戏角色能自主学习完成任务。文章提供了一个迷宫游戏示例及其C#脚本,展示了环境观察、动作响应及奖励机制的设计,并介绍了如何设置训练流程。此外,还提到了Unity与其他机器学习框架(如TensorFlow和PyTorch)的集成,以实现更复杂的游戏玩法。通过这些技术,游戏的智能化程度得以显著提升,为玩家带来更丰富的体验。
64 1
|
3月前
|
机器学习/深度学习 人工智能 自然语言处理
【机器学习】python之人工智能应用篇--代码生成技术
代码生成技术是人工智能与软件工程交叉领域的一项重要技术,它利用机器学习、自然语言处理和其他AI算法自动编写或辅助编写计算机程序代码。这一技术旨在提高编程效率、降低错误率,并帮助非专业开发者快速实现功能。以下是代码生成技术的概述及其典型应用场景。
50 6
|
3月前
|
机器学习/深度学习 数据采集 人工智能
揭秘大型机器学习模型背后的秘密:如何在技术深度与广度之间找到完美平衡点,探索那些鲜为人知的设计、训练与部署技巧,让你的作品脱颖而出!
【8月更文挑战第21天】大型机器学习模型是人工智能的关键方向,借助不断增强的计算力和海量数据,已实现在学术与产业上的重大突破。本文深入探讨大型模型从设计到部署的全过程,涉及数据预处理、模型架构(如Transformer)、训练技巧及模型压缩技术,旨在面对挑战时提供解决方案,促进AI技术的实用化进程。
71 1
|
3月前
|
机器学习/深度学习 数据挖掘
机器学习模型的选择与评估:技术深度解析
【8月更文挑战第21天】机器学习模型的选择与评估是一个复杂而重要的过程。通过深入理解问题、选择合适的评估指标和交叉验证方法,我们可以更准确地评估模型的性能,并选择出最适合当前问题的模型。然而,机器学习领域的发展日新月异,新的模型和评估方法不断涌现。因此,我们需要保持对新技术的学习和关注,不断优化和改进我们的模型选择与评估策略。