Home 차원 축소 (Dimensionality Reduction) 기법
Post
Cancel

차원 축소 (Dimensionality Reduction) 기법

PCA (Principal Component Analysis)

  • PCA는 선형 차원 축소 방법이다.
  • 데이터의 분산을 최대화하는 주성분 방향으로 데이터를 투영한다.
  • 주성분은 데이터의 공분산 행렬의 고유벡터로부터 얻어진다.
  • PCA는 노이즈 제거, 시각화, 특징 추출 등 다양한 응용 분야에서 사용된다.
1
2
3
from sklearn.decomposition import PCA  
pca = PCA(n_components=2) 
reduced_data = pca.fit_transform(data)

t-SNE (t-Distributed Stochastic Neighbor Embedding)

  • t-SNE는 비선형 차원 축소 방법이다.
  • 고차원에서의 데이터 포인트 간 거리와 저차원에서의 거리 사이의 차이를 최소화한다.
  • 주로 고차원 데이터의 시각화에 사용된다.
  • t-SNE는 국소적인 구조와 글로벌 구조 모두를 잘 보존한다.
1
2
3
from sklearn.manifold import TSNE  
tsne = TSNE(n_components=2) 
reduced_data = tsne.fit_transform(data)

UMAP (Uniform Manifold Approximation and Projection)

  • UMAP은 최근에 개발된 비선형 차원 축소 방법이다.
  • t-SNE와 비슷하게 국소적인 구조를 잘 보존하지만, 계산 효율성이 더 높다.
  • UMAP은 데이터의 위상 구조를 보존하려고 노력한다.
  • 시각화 뿐만 아니라, 일반 차원 축소 작업에도 사용될 수 있다.
1
2
3
import umap  
reducer = umap.UMAP() 
reduced_data = reducer.fit_transform(data)
This post is licensed under CC BY 4.0 by the author.

[SeSAC]혼공 머신러닝+딥러닝 Ch9. 텍스트를 위한 인공 신경망

빅분기