Yolo 비전 선전
선전
지금 참여하기
용어집

주성분 분석(PCA)

주성분 분석(PCA)으로 고차원 데이터를 간소화하세요. 지금 바로 AI, ML 모델 및 데이터 시각화 효율성을 향상시키세요!

주성분 분석(PCA)은 기초적인 선형 차원 축소 기법으로 통계, 데이터 과학 및 머신 러닝(ML). 주성분 분석의 주요 목표는 가장 중요한 정보를 유지하면서 복잡한 고차원 데이터 세트를 단순화하는 것입니다. 수학적으로 원래의 상관관계가 있는 변수 집합을 다음과 같이 상관관계가 없는 작은 변수 집합으로 변환하는 것입니다. "주성분 분석은 데이터 과학자가 노이즈를 줄이고 계산 효율성을 개선하며 데이터에 포함된 중요한 패턴을 희생하지 않고도 데이터에 포함된 중요한 패턴을 희생하지 않고도.

주성분 분석은 어떻게 작동하나요?

PCA의 메커니즘은 다음과 같은 개념에 의존합니다. 선형 대수학의 개념을 사용하여 데이터가 가장 많이 변화하는 방향(주요 구성 요소)를 식별하는 데 사용됩니다. 첫 번째 주성분은 데이터 세트의 최대 분산을 포착합니다. 데이터 세트의 최대 분산을 포착하여 가장 지배적인 추세를 효과적으로 나타냅니다. 각 후속 구성 요소는 나머지 분산을 캡처합니다. 를 감소하는 순서로 캡처하지만, 이전 구성 요소와 직교(상관관계가 없음)해야 한다는 제약이 있습니다. 이 변환은 종종 공분산 행렬과 그에 해당하는 고유 벡터와 고유값을 사용하여 계산합니다.

상위 몇 가지 구성 요소만 유지함으로써 실무자는 고차원 데이터를 고차원 데이터를 저차원 공간(보통 2D 또는 3D)으로 공간(보통 2D 또는 3D)에 투영할 수 있습니다. 이 프로세스는 데이터 전처리에서 중요한 단계입니다. 데이터 전처리에서 중요한 단계입니다. 차원성의 저주를 완화하는 중요한 단계입니다. 일반화하는 데 어려움을 겪는 차원의 저주를 완화하는 데 중요한 단계입니다. 이러한 감소는 다음을 방지하는 데 도움이 됩니다. 과적합을 방지하고 모델 학습을 가속화합니다.

AI 및 ML의 실제 애플리케이션

PCA는 다양한 분야에서 활용되고 있습니다. 인공 지능(AI) 영역에서 성능과 해석 가능성을 최적화합니다.

  1. 얼굴 인식 및 압축: 컴퓨터 비전(CV) 분야에서 컴퓨터 비전(CV) 분야에서 PCA는 역사적으로 얼굴 인식에서 핵심적인 역할을 해왔습니다. "고유 얼굴"이라는 방법을 통해 핵심적인 역할을 해왔습니다. 이미지는 고차원 벡터로 취급되며, PCA는 이미지를 구분하는 기본 특징(구성 요소)을 기본 특징(구성 요소)을 추출합니다. 이를 통해 시스템은 압축된 표현이 아닌 원시 픽셀 데이터가 아닌 압축된 표현을 사용하여 얼굴을 저장하고 비교할 수 있어 속도가 크게 향상됩니다.
  2. 유전체학 및 생물정보학: 생물정보학 연구자들은 각 샘플마다 수천 개의 유전자 발현 수준을 포함하는 수천 개의 유전자 발현 수준이 포함된 데이터 세트를 다룹니다. PCA를 사용하면 다음과 같은 작업을 수행할 수 있습니다. 탐색적 데이터 분석(EDA) 을 수행할 수 있습니다. 2D 분산형 차트로 축소하여 탐색적 데이터 분석(EDA)을 수행할 수 있습니다. 이 시각화는 유사한 유전자 프로필을 가진 샘플의 클러스터를 표시하여 유전자 프로필을 가진 샘플의 클러스터를 발견할 수 있습니다. 이상 징후 탐지.

최신 컴퓨터 비전과 통합

다음과 같은 최신 딥 러닝 아키텍처는 컨볼루션 신경망(CNN) 과 같은 최신 딥러닝 아키텍처는 내부 특징 추출을 수행하지만, PCA는 학습된 표현을 분석하는 데 매우 적합합니다. 예를 들어, 다음과 같이 작업하는 사용자는 YOLO11 을 사용하는 사용자는 모델의 백본에서 특징 임베딩을 추출하여 모델이 서로 다른 클래스를 얼마나 잘 구분하는지 얼마나 잘 분리되어 있는지 이해할 수 있습니다.

다음 예는 널리 사용되는 인기 있는 Scikit-learn 라이브러리를 사용하여 임베딩을 시각화하기 전의 일반적인 단계입니다.

import numpy as np
from sklearn.decomposition import PCA

# Simulate high-dimensional features (e.g., embeddings from a YOLO11 model)
# Shape: (100 samples, 512 features)
features = np.random.rand(100, 512)

# Initialize PCA to reduce data to 2 dimensions for visualization
pca = PCA(n_components=2)

# Fit the model and transform the features
reduced_features = pca.fit_transform(features)

# The data is now (100, 2), ready for plotting
print(f"Original shape: {features.shape}")
print(f"Reduced shape: {reduced_features.shape}")

PCA와 관련 기술

PCA를 다음에서 볼 수 있는 다른 차원 축소 및 특징 학습 방법과 구별하는 것이 도움이 됩니다. 비지도 학습:

  • t-SNE(t-분산 확률적 이웃 임베딩): 전역 분산 보존에 초점을 맞춘 선형 기법인 PCA와 달리, t-SNE는 비선형이며 다음과 같은 장점이 있습니다. 지역 이웃 구조를 보존하는 데 탁월합니다. 따라서 t-SNE는 클러스터를 시각화하는 데는 우수하지만 다음과 같은 작업에는 적합하지 않습니다. 데이터 압축이나 재구성에는 적합하지 않습니다.
  • 자동 인코더: 데이터를 압축하고 재구성하는 방법을 학습하는 신경망 기반 모델입니다. 자동 인코더는 복잡한 비선형 관계를 포착할 수 있지만 복잡한 비선형 관계를 포착할 수 있지만, 학습을 위해 훨씬 더 많은 데이터와 연산 훨씬 더 많은 데이터와 계산 리소스가 필요합니다.
  • 기능 선택: PCA는 원래 변수의 조합인 새로운 특징(구성 요소)을 생성하는 반면, 특징 선택은 원래 특징의 하위 집합을 선택하고 나머지는 버립니다. PCA는 종종 모든 원본 특징이 중요한 정보를 제공할 때 선호됩니다.

Ultralytics 커뮤니티 가입

AI의 미래에 동참하세요. 글로벌 혁신가들과 연결하고, 협력하고, 성장하세요.

지금 참여하기