차원 감소는 기계 학습 및 데이터 분석에서 중요한 기술입니다. 고차원 데이터를 저 차원 표현으로 변환하여 필수 정보를 보존합니다. 수많은 기능을 갖춘 고차원 데이터 세트는 기계 학습 모델에 어려움을 겪습니다. 이 튜토리얼은 차원 감소, 다양한 기술 및 이미지 데이터에 대한 응용 프로그램을 사용하는 이유를 탐구합니다. 결과를 시각화하고 저 차원 공간에서 이미지를 비교할 것입니다.
.
머신 러닝에 대한 포괄적 인 이해를 위해 "Python의 기계 학습 과학자가 되십시오"커리어 트랙을 고려하십시오.
치수를 줄이는 이유는 무엇입니까?
고차원 데이터는 정보가 풍부하지만 종종 중복 또는 관련이없는 기능을 포함합니다. 이것은 다음과 같은 문제로 이어집니다
차원의 저주 : 높은 차원은 데이터 포인트를 드물게하여 기계 학습 모델에 의한 패턴 인식을 방해합니다.
과적으로 : 모델은 기본 패턴 대신 노이즈를 배울 수 있습니다
계산 복잡성 :
치수 증가는 계산 비용을 크게 증가시킵니다
시각화 어려움 :
3 차원 이외의 데이터 시각화는 어렵습니다
치수 감소는 주요 기능을 유지하는 동안 데이터를 단순화하고 모델 성능 및 해석 가능성을 향상시킵니다.
선형 대 비선형 메소드
치수 감소 기술은 선형 또는 비선형으로 분류됩니다
선형 방법 : 이 데이터는 선형 부분 공간 내에 있다고 가정합니다. 그것들은 계산적으로 효율적이고 선형 구조화 된 데이터에 적합합니다. 예제는 다음과 같습니다.
PCA (Principal Component Analysis) : 방향을 식별합니다 (주요 구성 요소) 데이터 차이 최대화.
선형 판별 분석 (LDA) : 분류에 유용하여 치수 감소 동안 클래스 분리 성을 보존합니다. "Python의 PCA (Principal Component Analysis)"튜토리얼에서 자세히 알아보십시오.
비선형 방법 :
데이터가 비선형 매니 폴드에 존재할 때 사용됩니다. 복잡한 데이터 구조를 더 잘 캡처합니다. 예제는 다음과 같습니다.
t-sne (t- 분산 확률 론적 인 이웃 임베딩) : 지역 관계를 유지하면서 고차원 데이터 (2D 또는 3D)에서 고차원 데이터를 시각화합니다. 자세한 내용은 T-Sne 안내서를 참조하십시오
UMAP (균일 한 매니 폴드 근사 및 투영) :
T-SNE와 유사하지만 글로벌 구조를 보존하는 데 더 빠르고 우수합니다.
Autoencoders :
감독되지 않은 데이터 압축에 사용되는 신경망.
치수 감소 유형
치수 감소는 다음과 같이 광범위하게 분류됩니다 기능 선택 :
데이터를 변환하지 않고 가장 관련성이 높은 기능을 선택합니다. 방법에는 필터, 래퍼 및 임베디드 메소드가 포함됩니다
기능 추출 : 원래의 조합에서 새로운 기능을 생성하여 데이터를 저차원 공간으로 변환합니다. 이것은 원래 기능이 상관 관계가 있거나 중복 될 때 유용합니다. PCA, LDA 및 비선형 방법은이 범주에 속합니다
이미지 데이터의 차원 감소
Python을 사용하여 이미지 데이터 세트에 차원 축소를 적용하자 :
1. 데이터 세트로드 :
이것은 숫자 데이터 세트를로드합니다 (필기 숫자 0-9, 각 8x8 픽셀, 64 개의 특징으로 평평하게).
2. 이미지 시각화 : 이 함수는 샘플 이미지를 표시합니다
3. t-sne 적용 :
이것은 데이터를 축적하고 효율을위한 서브 세트를 선택하고 t-sne을 2 차원으로 줄입니다.
4. t-sne 출력 시각화 :
이것은 Digit 레이블로 색상으로 코딩 된 2d t-sne 표현을 시각화합니다.
5. 이미지 비교 :
import numpy as np
import matplotlib.pyplot as plt
from sklearn.datasets import load_digits
from sklearn.manifold import TSNE
from sklearn.preprocessing import StandardScaler
digits = load_digits()
X = digits.data # (1797, 64)
y = digits.target # (1797,)
print("Data shape:", X.shape)
print("Labels shape:", y.shape)
로그인 후 복사
결론
차원 감소는 기계 학습 모델 효율성, 정확도 및 해석 성을 향상시켜 데이터 시각화 및 분석을 향상시킵니다. 이 튜토리얼은 차원 감소 개념, 메소드 및 응용 프로그램으로, 이미지 데이터에 대한 t-sne의 사용을 보여줍니다. "파이썬의 차원 감소"과정은 심층 학습을 추가로 제공합니다.
faqs
일반적인 차원 감소 기술 : PCA 및 T-SNE
PCA 감독 : 감독되지 않은.
치수 감소를 사용하는 시점 :
복잡성 감소, 개선 된 모델 성능 또는 시각화를 위해 고차원 데이터를 처리 할 때.
치수 감소의 주요 목표 :