- 차원축소
- 많은 변수(feature)로 구성된 데이터 세트의 차원을 감소시켜서 새로운 데이터 시트 생성
- 수백개 이상의 피처로 구성된 데이터 세트는 적게 구성된 세트의 학습 모델보다 예측 신뢰도가 낮다. (과대적합)
- 3차원 이하의 차원 축소를 통해 처리 능력 향상 가능
- 많은 변수(feature)로 구성된 데이터 세트의 차원을 감소시켜서 새로운 데이터 시트 생성
- 과대적합 (overfitting)
- 머신러닝 모델 학습 시 학습 데이터셋에 지나치게 최적화할 때 발생
- 모델을 지나치게 복잡하게 학습하여 모델 성능은 높게 나타나지만, 새로운 데이터가 주어졌을 때 정확한 예측이나 분류를 수행하지 못한다.
- 과소적합 (underfitting)
- 모델이 충분히 복합하지 않아서 학습 데이터의 구조나 패턴을 정확히 반영하지 못할 때 발생
- 학습 데이터셋 모델 성능보다 새로운 데이터셋에서 모델 성능이 더 높게 나오는 상태
- 차원축소 방법
- 피처 선택(feature selection)
- 종속성이 강한 불필요한 피처를 제거하고, 데이터의 특성을 잘 나타내는 주요 피처만 선택
- 피처 추출(feature extraction)
- 데이터를 함축적으로 더 잘 설명 가능한 잠재적 피처로 다른 공간으로 사상하여 나타낸다.
- PCA, SVD, NMF 등 차원축소 알고리즘 존재
- 피처 선택(feature selection)
- 주성분 분석 (Principal Component Analysis)
- 변수들 간의 연관성을 이용하여 전체 데이터의 변동을 기존 변수들의 선형 결합으로 생성된 새로운 변수(주성분)로 설명
- 주성분 분석의 목적은 차원축소와 잠재변수의 해석
- 차원 축소
- 큰 분산을 가지는 데이터의 축으로 차원을 축소하고, 이 축소된 차원이 주성분이 된다.
- 분산이 큰 순서대로 주성분을 선택한다.
- 원래 데이터에 p개의 변수가 있을 때 p보다 작은 개수의 주성분으로 전체 변동의 많은 부분을 설명할 수 있다면 효과적인 분석이 된다.
- 잠재변수의 해석
- 주성분을 통하여 데이터를 해석하고 원래 데이터에 나타나지 않은 관계를 찾아내면서 새로운 사실을 찾아낼 수 있다.
- 차원 축소
- 최종 결정된 주성분은 이후의 추가분석(군집, 회귀분석 등)에 사용
- 주성분 개수 결정 방법
- r개 주성분의 누적 설명 비율이 전체 변이의 80~90% 이상을 설명하는 주성분을 선택
- 상관 행렬로부터 주성분이 유도된 경우 고유치가 1이상인 주성분을 선택
- 주성분 분석 과정
- 데이터의 변동성(분산)이 가장 큰 방향으로 축 생성
- 두번째 축은 두번째로 큰 변동성을 가지고 첫번째 축에 직교하는 축으로 생성
- 세번째 축은 세번쨰로 큰 변동성을 가지고 첫번째와 두번쨰 축이 생성하는 공간에 직교하는 축으로 생성
- 주성분 분석 방법
- 입력 데이터 세트의 공분산 행렬 생성
- 공분산 행렬의 고유값과 고유벡터 계산
- 고유값이 가장 큰 순서로 축소하고자 하는 차원만큼 고유값과 고유벡터 추출
- 입력 데이터와 추출된 고유벡터로 구성된 행렬을 곱하혀 새로운 데이터로 변환
'Data Analysis > ML & DL' 카테고리의 다른 글
[ML] 나이브 베이즈 (0) | 2024.06.08 |
---|---|
[ML] K-최근접 이웃 (0) | 2024.06.08 |
[ML] 군집분석 (0) | 2024.06.08 |
[ML] 인공지능과 기계학습 (0) | 2024.03.24 |
혼자 공부하는 머신러닝+딥러닝 / 혼공 학습단 회고 (0) | 2023.08.21 |