Machine Learning/Advanced (hands on machine learning)

24. 차원 축소 - 차원의 저주

jwjwvison 2021. 5. 26. 19:39

 많은 경우 머신러닝 문제는 훈련 샘플 각각이 수천 심지어 수백만 개의 특성을 가지고 있다. 이런 많은 특성은 훈련을 느리게 할 뿐만 아니라, 좋은 솔루션을 찾기 어렵게 만든다. 이런 문제를 차원의 저주 라고 한다. 다행히도 실전 문제에서는 특성 수를 줄여서 불가능한 문제를 가능한 범위로 번경할 수 있는 경우가 많다.

 훈련 세트의 차원이 클수록 과대적합 위험이 커진다. 

 

 차원을 감소시키는 두 가지 주요한 접근법에는 투영과 매니폴드 학습이 있다.

 

<투영>

 

<매니폴드 학습>

 d차원 매니폴드는 국부적으로 d차원 초평면으로 보일 수 있는 n차원 공간의 일부이다(d<n). 많은 차원 축소 알고리즘이 훈련 샘플이 놓여 있는 매니폴드를 모델링하는 식으로 작동한다. 이를 매니폴드 학습 이라고 한다. 이는 대부분 실제 고차워 ㄴ데이터셋이 더 낮은 저차원 매니폴드에 가깝게 놓여 있다는 매니폴드 가정 또는 매니폴드 가설에 근거한다.

 

 요약하자면 모델을 훈련시키기 전에 훈련 세트의 차원을 감소시키면 훈련 속도는 빨라지지만 항상 더 낫거나 간단한 솔루션이 되는 것은 아니다. 이는 전적으로 데이터셋에 달렸다.