Ultralytics YOLO27:
获取 YOLO 许可
返回 Ultralytics 术语表

Principal Component Analysis (PCA)

主成分分析 (PCA) 会将数据投影到能够捕获最大方差的正交方向上。了解其工作原理、如何选择 k、应用和代码。

主成分分析 (PCA) 是一种线性降维技术,它将数据重新表示为新的、不相关的变量,称为主成分,并按每个主成分所捕获的数据方差大小排序。只保留前几个主成分,就可以将许多相关特征压缩为少数几个,同时保留大部分信息。Karl Pearson 于 1901 年提出了这一方法,Harold Hotelling 随后进一步发展该方法,并于 1933 年为其命名。PCA 是一种无监督技术,不使用标签;它是常见的数据预处理步骤,也是将高维数据压缩到二维或三维进行快速可视化的方法,并且可作为机器学习中的压缩和降噪基线。

PCA 的工作原理#

PCA 首先通过减去均值对每个特征进行中心化。第一主成分是中心化数据变化最大的方向;此后的每个主成分都是与之前所有主成分正交、且剩余方差最大的方向。主成分是数据协方差矩阵的特征向量,对应的特征值则是沿这些方向的方差;各个库会通过对中心化数据进行奇异值分解 (SVD) 来计算两者,这比直接构造协方差矩阵具有更好的数值稳定性。将数据投影到前 k 个主成分上,即可获得降维表示;再将其映射回原空间,就能重建原始数据的近似值。在所有投影到 k 维空间的线性投影中,PCA 的平方重建误差最小。

方差取决于单位,因此对于收入(以美元计)和年龄(以年计)等使用不同尺度测量的特征,应先进行标准化;否则,数值范围最大的特征会主导第一主成分。通常根据解释方差比来选择主成分数量 k:保留主成分,直到累计方差占比达到 95% 等目标;也可以根据碎石图中每个主成分方差的拐点进行选择。

Scikit-learn 的 PCA可以直接接受方差目标。此示例会压缩手写数字的 8×8 图像:

from sklearn.datasets import load_digits
from sklearn.decomposition import PCA

# 1,797 handwritten digits, each an 8x8 image flattened to 64 pixel values
X, _ = load_digits(return_X_y=True)

# Keep the fewest components that explain 95% of the variance
pca = PCA(n_components=0.95)
X_reduced = pca.fit_transform(X)

print(f"{X.shape[1]} features -> {pca.n_components_} components")
print(f"First two components: {pca.explained_variance_ratio_[:2].sum():.1%} of the variance")

29 个主成分保留了 64 个像素中 95% 的方差,将输入规模缩小了一半以上;仅前两个主成分就包含 28.5% 的方差。之所以方差集中在少数主成分上,是因为相邻像素之间高度相关,而且图像左右边缘的像素几乎没有变化。

局限性#

PCA 只能发现线性结构,因此,位于曲面上的数据需要比其真实维度更多的主成分。每个主成分都会混合所有原始特征,因此难以解释;平方距离还会让少数离群点左右结果。高方差也不等于高价值:低方差方向可能包含区分两个类别的信号,因此丢弃它可能损害分类器,即使损失的方差很少。将大量特征缩减为少数特征,仍有助于应对维度灾难:随着特征数量增加,模型要实现泛化就需要多得多的样本;当特征很多、样本很少时,这也能限制过拟合。

计算机视觉中的嵌入向量 PCA#

视觉模型用嵌入向量描述每张图像或每个对象,每个向量包含数百个数字;PCA 常用于绘图、聚类或压缩这些向量。YOLO26模型通过 model.embed() 为每张图像返回一个嵌入向量,将这些向量投影到前两个主成分上,就能快速线性展示经过自定义训练的模型如何区分类别。将存储的嵌入向量降至更低维度,还能缩小向量数据库的索引,并加快向量搜索。

应用场景#

  • 人脸识别:Turk 和 Pentland(1991)提出的特征脸方法,用一组人脸图像的主成分坐标表示每张人脸,并通过比较这些坐标来识别人。
  • 异常检测:工业过程监控会用正常运行时的传感器数据拟合 PCA;当新读数的重建效果很差,或在保留的主成分方向上偏离很远时,就会触发警报。
  • 群体遗传学:基因型数据的 PCA 可概括祖源;一项 2008 年针对 1,387 名欧洲人的研究发现,前两个主成分重现出一幅清晰可辨的欧洲地图。
  • 利率风险:债券收益率曲线的变化主要由三个主成分支配,分析师称其为水平、斜率和曲率,因此风险模型跟踪这三个数值,而非每个期限的数值。
  • t-SNE 和 UMAP:这类非线性方法专为可视化设计,能够保留局部邻域,使簇之间更清晰地分开,但相距较远的簇之间的距离则失去意义。Scikit-learn 的 t-SNE 无法转换新数据点,而拟合后的 PCA 只需一次矩阵乘法即可投影新数据。
  • 自编码器:这类神经网络压缩并重建数据,还能学习非线性结构。使用平方误差训练的线性自编码器学到的子空间与 PCA 相同。
  • 特征选择与特征提取:特征选择保留原始列的一个子集,因此结果仍易于解释;而 PCA 作为经典的特征提取方法,会构造融合所有原始特征的新特征。
  • 线性判别分析(LDA):这是一种有监督的相关方法,它选择能最大化类别间分离度而非总方差的方向,且生成的主成分数量最多比类别数量少一个。

Explore solutions

体育领域的计算机视觉

体育领域的计算机视觉

了解 Ultralytics YOLO 如何通过球员和球追踪、表现分析、教练洞察及运动员康复,推动体育视觉技术的发展。
了解详情
航空影像计算机视觉

航空影像计算机视觉

借助 Ultralytics YOLO,将无人机和航空影像转化为实时洞察,应用于农业、水产养殖、环境监测、自然保护和地理空间分析。
了解详情
航空航天中的计算机视觉

航空航天中的计算机视觉

使用 Ultralytics YOLO 模型将视觉 AI 应用于航空监测。借助计算机视觉解决方案,赋能无人机、航空航天工作流、环境保护和地理空间行业。
了解详情
安防领域的计算机视觉

安防领域的计算机视觉

使用 Ultralytics YOLO 模型守护每个场所。视觉 AI 可用于周界监控、威胁检测、车牌识别和工作场所安全。
了解详情
机器人领域的计算机视觉

机器人领域的计算机视觉

使用 Ultralytics YOLO 模型提升智能机器的能力。机器人领域的视觉 AI 可用于自主导航、感知、目标跟踪和实时控制。
了解详情
物流中的计算机视觉

物流中的计算机视觉

借助 Ultralytics YOLO 模型优化物流流程。视觉 AI 可用于包裹检查、分拣、车辆跟踪和仓库安全实时监控。
了解详情
零售中的计算机视觉

零售中的计算机视觉

借助 Ultralytics YOLO 模型重新构想零售。视觉 AI 可用于库存跟踪、货架监控、排队管理和更深入的客户洞察。
了解详情
医疗领域的计算机视觉

医疗领域的计算机视觉

借助 Ultralytics YOLO 模型构建医疗解决方案。医疗领域的视觉 AI 可加快医学影像处理、优化诊断并监测患者。
了解详情
制造业中的计算机视觉

制造业中的计算机视觉

利用 Ultralytics YOLO 模型优化制造流程。视觉 AI 可用于质量控制、缺陷检测、个人防护装备合规检查和装配线自动化。
了解详情
汽车领域的计算机视觉

汽车领域的计算机视觉

利用 Ultralytics YOLO 模型在汽车领域应用计算机视觉。视觉 AI 可提升道路安全、驾驶辅助和车辆自动化水平,让道路更智能。
了解详情
农业中的计算机视觉

农业中的计算机视觉

借助 Ultralytics YOLO 模型,将视觉 AI 引入智慧农业。为作物监测、牲畜追踪和精准农业提供支持,从而提高产量并实现更智能的生产。
了解详情
体育领域的计算机视觉

体育领域的计算机视觉

了解 Ultralytics YOLO 如何通过球员和球追踪、表现分析、教练洞察及运动员康复,推动体育视觉技术的发展。
了解详情
航空影像计算机视觉

航空影像计算机视觉

借助 Ultralytics YOLO,将无人机和航空影像转化为实时洞察,应用于农业、水产养殖、环境监测、自然保护和地理空间分析。
了解详情
航空航天中的计算机视觉

航空航天中的计算机视觉

使用 Ultralytics YOLO 模型将视觉 AI 应用于航空监测。借助计算机视觉解决方案,赋能无人机、航空航天工作流、环境保护和地理空间行业。
了解详情
安防领域的计算机视觉

安防领域的计算机视觉

使用 Ultralytics YOLO 模型守护每个场所。视觉 AI 可用于周界监控、威胁检测、车牌识别和工作场所安全。
了解详情
机器人领域的计算机视觉

机器人领域的计算机视觉

使用 Ultralytics YOLO 模型提升智能机器的能力。机器人领域的视觉 AI 可用于自主导航、感知、目标跟踪和实时控制。
了解详情
物流中的计算机视觉

物流中的计算机视觉

借助 Ultralytics YOLO 模型优化物流流程。视觉 AI 可用于包裹检查、分拣、车辆跟踪和仓库安全实时监控。
了解详情
零售中的计算机视觉

零售中的计算机视觉

借助 Ultralytics YOLO 模型重新构想零售。视觉 AI 可用于库存跟踪、货架监控、排队管理和更深入的客户洞察。
了解详情
医疗领域的计算机视觉

医疗领域的计算机视觉

借助 Ultralytics YOLO 模型构建医疗解决方案。医疗领域的视觉 AI 可加快医学影像处理、优化诊断并监测患者。
了解详情
制造业中的计算机视觉

制造业中的计算机视觉

利用 Ultralytics YOLO 模型优化制造流程。视觉 AI 可用于质量控制、缺陷检测、个人防护装备合规检查和装配线自动化。
了解详情
汽车领域的计算机视觉

汽车领域的计算机视觉

利用 Ultralytics YOLO 模型在汽车领域应用计算机视觉。视觉 AI 可提升道路安全、驾驶辅助和车辆自动化水平,让道路更智能。
了解详情
农业中的计算机视觉

农业中的计算机视觉

借助 Ultralytics YOLO 模型,将视觉 AI 引入智慧农业。为作物监测、牲畜追踪和精准农业提供支持,从而提高产量并实现更智能的生产。
了解详情
体育领域的计算机视觉

体育领域的计算机视觉

了解 Ultralytics YOLO 如何通过球员和球追踪、表现分析、教练洞察及运动员康复,推动体育视觉技术的发展。
了解详情
航空影像计算机视觉

航空影像计算机视觉

借助 Ultralytics YOLO,将无人机和航空影像转化为实时洞察,应用于农业、水产养殖、环境监测、自然保护和地理空间分析。
了解详情
航空航天中的计算机视觉

航空航天中的计算机视觉

使用 Ultralytics YOLO 模型将视觉 AI 应用于航空监测。借助计算机视觉解决方案,赋能无人机、航空航天工作流、环境保护和地理空间行业。
了解详情
安防领域的计算机视觉

安防领域的计算机视觉

使用 Ultralytics YOLO 模型守护每个场所。视觉 AI 可用于周界监控、威胁检测、车牌识别和工作场所安全。
了解详情
机器人领域的计算机视觉

机器人领域的计算机视觉

使用 Ultralytics YOLO 模型提升智能机器的能力。机器人领域的视觉 AI 可用于自主导航、感知、目标跟踪和实时控制。
了解详情
物流中的计算机视觉

物流中的计算机视觉

借助 Ultralytics YOLO 模型优化物流流程。视觉 AI 可用于包裹检查、分拣、车辆跟踪和仓库安全实时监控。
了解详情
零售中的计算机视觉

零售中的计算机视觉

借助 Ultralytics YOLO 模型重新构想零售。视觉 AI 可用于库存跟踪、货架监控、排队管理和更深入的客户洞察。
了解详情
医疗领域的计算机视觉

医疗领域的计算机视觉

借助 Ultralytics YOLO 模型构建医疗解决方案。医疗领域的视觉 AI 可加快医学影像处理、优化诊断并监测患者。
了解详情
制造业中的计算机视觉

制造业中的计算机视觉

利用 Ultralytics YOLO 模型优化制造流程。视觉 AI 可用于质量控制、缺陷检测、个人防护装备合规检查和装配线自动化。
了解详情
汽车领域的计算机视觉

汽车领域的计算机视觉

利用 Ultralytics YOLO 模型在汽车领域应用计算机视觉。视觉 AI 可提升道路安全、驾驶辅助和车辆自动化水平,让道路更智能。
了解详情
农业中的计算机视觉

农业中的计算机视觉

借助 Ultralytics YOLO 模型,将视觉 AI 引入智慧农业。为作物监测、牲畜追踪和精准农业提供支持,从而提高产量并实现更智能的生产。
了解详情

让我们携手构建 AI 的未来!

开启你的旅程,迎接机器学习的未来