데이터 차원 축소(Data Dimensionality Reduction)

2023. 12. 27. 21:56정보관리기술사/131회

한줄요약

차원 축소(DR, Dimensionality Reduction)는 학습 기능의 정확성을 높이고 훈련 시간을 줄이기 위해 중복된 기능, 잡음이 많고 관련없는 데이터를 제거하는 전처리 단계이다. 차원 축소는 크게 있는 Feature에서 고르는 "Feature 선택", Feature를 가공해서 새로운 Feature를 생성하는 "Feature 추출"로 이루어져 있다.


배경

딥러닝 기술은 고성능 GPU를 사용하여 방대한 양의 데이터를 처리하고 분류를 예측한다. Feature(개별적으로 측정 가능한 속성) 추출 및 선택은 기계학습과는 별개의 부분이지만, 딥러닝을 위해 대량의 데이터를 처리하는데 아래와 같은 장점이 있을 수 있다.

  1. 차원 수가 줄어들수록 데이터 저장 공간이 줄어들 수 있다.
  2. 계산 시간이 덜 걸린다.
  3. 중복되고 관련성이 없으며 불필요한 데이터를 제거할 수 있다.
  4. 데이터 품질을 향상시킬 수 있다.
  5. 일부 알고리즘은 많은 차원을 취하면 잘 동작하지 않을 수 있기에, 알고리즘을 효율적으로 작동하고 정확도가 향상될 수 있다.
  6. 더 높은 차원에서 데이터를 시각화하는 것은 복잡하기에, 패턴을 더 명확하게 설계하고 조사할 수 있다.
  7. 분류 과정을 단순화하고 효율성을 향상시킬 수 있다.

차원의 저주(Curse of Dimensionality)

딥러닝에서 차원은 데이터 셋에 있는 Feature의 양을 나타낸다. 데이터 수가 Feature의 수보다 적어 성능이 저하되고, 차원이 증가할수록 개별 차원 내 학습할 데이터 수가 줄어드는 현상을 차원의 저주라 한다. 이를 해결하기 위해서는 차원의 수를 줄여야 하며 다양한 차원 축소 접근 방식은 아래와 같다.

  1. High Correlation Filter(높은 상관 필터)
  2. Low Variance Filter(낮은 분산 필터)
  3. Missing Value Ratio(결측값 비율)
  4. Random Forest(랜덤 포레스트)
  5. Backward Feature Elimination(역방향 Feature 제거)
  6. Factor Analysis(요소 분석)
  7. Projection Method
  8. Forward Feature Selection(전진선택)
  9. Linear Discriminant Analysis(선형 판별 분석)
  10. Independent Component Analysis(독립 성분 분석)
  11. Principal Component Analysis(주성분 분석)
  12. General Discriminant Analysis(일반 판별 분석)

차원 축소

위 다양한 접근 방식에도 포함되지만, 차원 축소에는 두 가지 필수 방법이 있다. ▲Feature 선택, ▲Feature 추출이다.

Feature 선택 방법은 원래 데이터 셋에서 Feature를 선택하기 위한 지식이 필요하지 않다. 일부 Feature를 제외해야 Feature의 부분 집합을 선택하는 과정이 줄어들 수 있으므로 정보가 손실될 수 있다. 그러나 Feature 추출 방법은 초기 데이터 셋을 잃지 않고 차원을 줄일 수 있다.

Feature Selection(FS), Feature 선택

고차원의 데이터셋은 오해의 소지가 있거나, 부적절하거나 중복되거나, 검색 공간 차원을 늘리고 학습 프로세스를 위한 데이터셋을 준비하려 하는 엄청난 양의 Feature가 포함되어 있을 수 있다. 따라서, 원본 데이터 셋의 Feature를 세분화해야 한다. FS 방법은 컴퓨팅 원리를 이용하여 원본 Feature로부터 적합한 Feature를 선택한다.

FS 알고리즘은 (1) 부분 집합 생성, (2) 부분 집합 평가와 같은 두 단계로 나눠진다. 부분집합 생성 단계에서 입력 데이터 셋으로부터 부분집합을 생성해야 하며 부분집합 평가 단계에서 생성된 부분집합이 최적인지 여부를 확인해야 한다.

최적인지 여부를 확인하는 방법은 세 가지 방법이 있는데, Filtering, Wrapper, Embedded 방법이다. Filter는 원본 데이터셋에서 더 많은 상관 관계가 있는 Feature만 선택한다. Wrapper는 분류 기술을 사용하여 부분집합을 생성한다. Wrapper는 SSA, HAS 검색 알고리즘을 통해 부분집합의 평가를 최대화한다. SSA(Sequential Selection Algorithms, 순차 선택 알고리즘)는 채워지지 않은 데이터셋(Unfilled set)으로 시작하여 목표가 달성될 때 까지 Feature를 포함시키는 방식이고, HAS(Heuristic Search Algorithms, 경험적 검색 알고리즘)은 경험 법칙을 사용하여 최상의 Feature를 선택하는 알고리즘이다.

Feature Extraction(FE), Feature 추출

FE 방법은 원본 데이터셋에서 새로운 특징을 추출하는 방법으로 관련 특징 데이터셋을 놓치지 않고 처리에 필요한 리소스 수를 줄이고 싶을 때 유용하다. FE는 더 중요한 Feature를 생성하기 위해 첫 번째 Feature를 눈에 띄게 변환한다. Feature를 설명하는 복잡성을 줄여 데이터의 직관적인 표현을 보여준다. PCA, LSA, LDA, ICA, PLS 등 다양한 FE 방법이 있으며, PCA(주성분 분석)가 가장 널리 사용되는 특징 추출 방법이라는 주장이 있다.

 

 

참고자료

  1. Velliangiri, S., Alagumuthukrishnan, S., & Thankumar joseph, S. I. (2019). A Review of Dimensionality Reduction Techniques for Efficient Computation. Procedia Computer Science, 165, 104–111. https://www.sciencedirect.com/science/article/pii/S1877050920300879