카테고리 없음

기계학습(ML)의 주요 모델-2

풍요 평화 만땅 연구원 2022. 10. 3. 18:53

- 목차

A. 차원축소 개념

B. PCA

C. LDA


A. 차원축소

1. 차원 축소란

- 매우 많은 피처로 구성된 다차원 데이터 세트의 차원을 축소하여 새로운 차원의 데이터 세트를 만듦

- 필요성 : 차원이 증가할 수록 데이터간의 거리가 증가하게 되어 희소한 구조를 가지게 되고 모델의 예측 신뢰도가 낮아지게됨

- 차원축소를 하게되면 학습 데이터 크기가 줄어들게 되어 학습에 필요한 처리능력도 줄어들게 됨

-  차원 축소를 통해 좀 더 데이터를 잘 설명할 수 있는 잠재적인 요소를 추출하는 데에 있음

- 차원축소 종류 : 피처 선택과 피처 추출

- 피처 선택 : 특정 피처에 종속성이 강한 불필요한 피처는 아예 제거

  • 장점 : 선택한 피처의 해석 용이
  • 단점 : 피처간 상관관계 고려 어려움

- 피처 추출 : 기존 피처를 저차원화하여 중요 피처로 압축해서 추출, 중요 피처는 기존의 피처가 압축된 것이므로 기존의 피처와는 완전히 다른 값이 됨

  • 장점 : 피처간 상관관계 고려 가능,피처 개수 많이 줄일 수 있음
  • 단점 : 추출된 변수 해석이 어려움

B. PCA

 - 여러변수간 상관관계 고려하여 대표하는 주성분을 추출하여 차원 축소 기법

 - PCA 기법의 핵심 : 데이터를 축에 사영했을때 가장 높은 분산을 가지는 데이터 축을 찾아 그 축으로 차원 축소를 하는 것

 - 높은 분산을 가지는 축을 찾는 이유는 정보의 손실을 최소화하기 위함

- 사영했을때 분산이 크다? : 원래 데이터의 분포를 잘 설명할 수 있다는 것을 뜻하고 정보의 손실을 최소화 할 수 있다는 것을 뜻함

- PCA가 진행되는 순서

① 입력 데이터 세트의 공분산 행렬을 구합니다.

② 공분산 행렬을 고유값 분해해서 고유벡터와 고유값을 구합니다.

③ 고유값이 가장 큰 순으로 K개 (변환 차수) 만큼 고유벡터를 추출합니다.

④ 고유벡터에 입력 데이터를 선형 변환합니다.

 

C. LDA

- LDA는 PCA와 유사하게 입력 데이터 세트를 저차원 공간에 투영해 차원을 축소하는 기법

- 중요한 차이는 LDA는 지도학습의 분류에서 사용하기 쉽도록 개별 클래스를 분별할 수 있는 기준을 최대한 유지하면서 차원을 축소함

- PCA는 입력 데이터의 변동성(분산)이 가장 큰 축을 찾았지만, LDA는 입력 데이터의 결정 값 클래스를 최대한으로 분리할 수 있는 축을 찾음

- 즉, LDA는 클래스 분리를 최대화하는 축을 찾기 위해 클래스 간 분산을 최대화하고, 클래스 내부 분산은 최대한 작게 가져가는 방식

- LDA가 진행되는 순서

① 클래스 내부와 클래스 간 분산 행렬을 구합니다.

② 클래스 내부 분산 행렬의 역치 행렬과 클래스 간 분산 행렬의 곱을 분해하여 고유벡터와 고유값을 구합니다.

③ 고유값이 가장 큰 순으로 K개 추출합니다.

④ 추출된 고유벡터를 이용해 입력 데이터를 선형 변환합니다.