术语表

降维

利用降维技术简化高维数据。提高 ML 模型的性能、可视化和效率!

降维是机器学习(ML)中一项重要的数据预处理技术,用于减少数据集中的特征(也称为变量或维度)数量。其主要目标是将高维数据转换为低维表示,同时尽可能保留有意义的信息。这一过程对于简化模型、降低计算复杂度和缓解 "维度诅咒 "这一常见问题至关重要。有效应用这些技术是人工智能开发生命周期的关键部分。

降维为何重要?

处理高维数据会带来一些挑战。在具有过多特征的数据集上训练的模型可能会变得过于复杂,从而导致过拟合,即模型学习的是噪声而不是基本模式。此外,更多的特征需要更多的计算能力和存储空间,从而增加了训练时间和成本。降维可以通过以下方式解决这些问题

  • 简化模型:特征越少,模型越简单,更容易解释,也不容易过度拟合。
  • 提高性能:通过去除无关或冗余的特征(噪音),模型可以将注意力集中在数据中最重要的信号上,从而提高准确性和概括性。
  • 减少计算负荷:低维数据大大加快了模型训练速度,减少了内存需求,这对实时推理至关重要。
  • 增强可视化:可视化数据的维度不可能超过三个。t-SNE等技术可将数据缩小到二维或三维,从而实现富有洞察力的数据可视化

常用技术

降维主要有两种方法:特征选择和特征提取。

  • 特征选择这种方法包括从原始特征中选择一个子集,然后舍弃其他特征。它不会创建新的特征,因此生成的模型具有很高的可解释性。这种方法通常分为过滤、包装或嵌入式技术。
  • 特征提取 这种方法通过从旧特征的组合中创建新特征,将数据从高维空间转换到较少维度的空间。常用的技术包括
    • 主成分分析(PCA):一种线性技术,用于识别数据中的主成分(方差最大的方向)。它速度快、可解释,但可能无法捕捉复杂的非线性关系。
    • 自动编码器:一种用于无监督学习的 神经网络,可以学习高效、压缩的数据表示。它们在学习非线性结构方面非常强大,但比 PCA 更加复杂。
    • t-SNE(t-分布式随机邻域嵌入):一种非线性技术,通过揭示潜在的聚类和局部结构,实现高维数据的可视化。由于其计算成本较高,通常用于探索,而不是作为另一个 ML 模型的预处理步骤。

降维与相关概念

必须将降维与特征工程等相关概念区分开来。特征工程是一个创建、选择和转换变量以提高模型性能的广泛过程,而降维则专门侧重于减少特征的数量。它可以被视为特征工程的一个子领域。

同样,虽然降维的结果是压缩数据,但其主要目标是提高模型性能,而不仅仅是减少存储空间,这也是 ZIP 等一般数据压缩算法的主要目标。

人工智能和 ML 的应用

降维在许多人工智能(AI)和 ML 应用中都至关重要:

  • 计算机视觉(CV):图像包含大量像素数据。Ultralytics YOLO 等模型中使用的卷积神经网络(CNN)固有的特征提取功能可以降低维度。这样,模型就能专注于物体检测图像分类等任务的相关模式,从而加快处理速度并提高模型性能。
  • 生物信息学分析基因组数据时,经常会涉及到包含数千个基因表达(特征)的数据集。降维可以帮助研究人员识别与疾病或生物功能相关的重要模式,使复杂的生物数据更易于管理。在《自然-方法》等期刊上发表的研究报告经常使用这些技术。
  • 自然语言处理(NLP):文本数据可以使用 TF-IDF 或单词嵌入等技术在高维空间中表示。降维有助于简化文档分类情感分析等任务的表征。
  • 数据可视化:t-SNE 等技术对于绘制二维或三维高维数据集非常有用。这样,人类就可以直观地检查和理解数据中的潜在结构或关系,这对于在Ultralytics HUB 等平台上管理复杂的数据集和模型非常有用。

加入 Ultralytics 社区

加入人工智能的未来。与全球创新者联系、合作和成长

立即加入
链接复制到剪贴板