매일 다양한 데이터들이 수집되고 저장되어가고 있습니다. 하지만 너무 많은 데이터들이 수집되면 이를 담고 있는 저장 공간이 부족할 겁니다. 나중에 군집이나 분류에 영향을 끼치지 않으면서 어떻게 하면 데이터 용량을 줄일 수 있을까요?
지금까지 데이터가 가진 속성을 특성이라고 했습니다.
10,000개의 픽셀을 가진 이미지의 경우 10,000개의 특성이 있는 셈이죠. 머신러닝에서는 이런 특성을 차원이라고 부릅니다. 그렇다면 10,000차원을 가지고 있는데 이를 줄일 수 있다면 저장 공간을 크게 절약할 수 있을 것입니다.
이를 위해 비지도 학습 작업 중 하나인 차원 축소 알고리즘을 다루어 볼려고 합니다.
그중 대표적인 알고리즘인 주성분 분석을 정리해보도록 하겠습니다.
주성분 분석(PCA)
: PCA라고도 불리며, 데이터에서 가장 분산이 큰 방향을 찾는 방법입니다. 이런 방향을 주성분이라고 하는데 원본 데이터를 주성분에 투영하여 새로운 특성을 만들 수 있습니다.
주성분 벡터의 원소 개수는 원본 데이터셋에 있는 특성 개수와 같습니다.
하지만 원본 데이터는 주성분을 사용해 차원을 줄일 수 있습니다. 주성분이 가장 분산이 큰 방향이기 때문에 주성분에 투영하여 바꾼 데이터는 원본이 가지고 있는 특성을 가장 잘 나타낼 겁니다.
주성분이 원본 데이터의 분산을 얼마나 잘 나타내는지 기록한 값을 설명된 분산이라고 합니다.
PCA 클래스는 자동으로 설명된 분산을 계산하여 제공해줍니다. 또한 주성분의 개수를 명시적으로 지정하는 대신 설명된 분산의 비율을 설정하여 원하는 비율만큼 주성분을 찾을 수 있습니다.
PCA 클래스의 explained_variance_ratio_에 각 주성분이 설명된 분산 비율이 기록되어 있습니다.
직접 실습 예제를 통해 더 자세히 알아보도록 하겠습니다.
'스터디 정리' 카테고리의 다른 글
Statistics for Data Science and Business Analysis 1주차 (0) | 2023.10.14 |
---|---|
혼자 공부하는 머신러닝+딥러닝 6주차 (0) | 2023.02.15 |
혼자 공부하는 머신러닝+딥러닝 5주차 (0) | 2023.02.10 |
혼자 공부하는 머신러닝+딥러닝 4주차 (0) | 2023.02.03 |
확률적 경사 하강법(Stochastic Gradient Descent) (0) | 2023.01.31 |
댓글