차원 축소 (Dimensionality reduction)

강승구·2023년 1월 26일
0

Curse of dimensionality (차원의 저주)

차원의 저주란 차원이 증가하면서 학습데이터 수가 차원 수보다 적어져서 성능이 저하되는 현상을 말한다. 차원이 증가할수록 변수가 증가하고, 개별 차원 내에서 학습할 데이터 수가 적어진다.

하지만 변수가 증가한다고 반드시 차원의 저주가 발생하는 것은 아니다. 관측치보다 변수 수가 많아지는 경우에 차원의 저주 문제가 발생하는 것이다.

위 그림에서 보는 것과 같이 차원이 증가할수록 빈 공간이 많아진다.

같은 데이터지만 1차원에서는 데이터 밀도가 촘촘했던 것이 2차원, 3차원으로 차원이 커질수록 점점 데이터 간 거리가 멀어진다. 이렇게 차원이 증가하면 빈 공간이 생기는데 빈 공간은 컴퓨터에서 0으로 채워진 공간이다. 즉, 정보가 없는 공간이기 때문에 빈 공간이 많을수록 학습 시켰을 때 모델 성능이 저하될 수밖에 없다.

실제로 2차원 공간에서 랜덤하게 두 점을 찍었을 때 점 사이의 거리는 평균적으로 0.52이다. 이는 3차원에서는 0.66이 되고 100000차원에서는 408.25로 급격하게 늘어나게 된다.

따라서 데이터의 feature의 개수(차원)가 너무 많게되면 overfitting문제를 야기할 수 있다. 이론적으로 이를 해결하기 위해서는 training dataset의 개수를 늘려주어야 하는데 너무 많은 양의 data가 필요하기 때문에 현실적으로 이는 불가능한 문제이다.

따라서 dataset의 크기가 손실되는 것은 최대한 방지하면서 feature의 개수를 줄여주는 것이 중요하다.

Projection

Manifold Learning

profile
강승구

0개의 댓글