네이버 부스트 캠프 AI Tech
[day79] 피처 중요도가 높으면 유용한 피처일까?
notmandarin
2024. 10. 23. 20:51
모델링 과정에서 피처 중요도가 높다고 해서 항상 유용한 피처라는 보장은 없다. 오히려, 중요도가 높더라도 해당 피처가 실제로는 노이즈일 수 있는 경우도 많다.
1. 과적합(Overfitting)의 문제
- 과적합은 모델이 학습 데이터에만 치중돼 너무 지나치게 맞추는 현상을 말한다. 이 경우, 모델은 학습 데이터에 포함된 노이즈까지 학습하게 된다.
- 피처가 학습 데이터에서는 중요하게 나타나더라도, 이는 단순히 우연적인 패턴이나 **특이값(outlier)**일 수 있다.
- 학습 데이터에서는 해당 피처가 예측에 유용해 보이지만, 테스트 데이터나 새로운 데이터에서는 성능을 떨어뜨리는 노이즈일 가능성이 있다.
2. 피처 중요도 계산 방식의 한계
- 대부분의 피처 중요도 계산 방식(예: 랜덤 포레스트, 결정 트리 기반 중요도)은 해당 피처가 얼마나 자주 분할 기준으로 사용되는지를 기준으로 평가한다.
- 이런 방식은 학습 데이터의 특정 상황에서만 유의미한 영향을 미치는 특이한 패턴에 반응할 수 있어, 실제로는 노이즈일 수 있는 피처의 중요도를 높게 평가할 수 있다.
3. 피처 상관관계와 중복 정보
- 피처가 다른 피처들과 높은 상관관계를 가질 경우, 실제로는 해당 피처가 중복된 정보를 제공할 수 있다.
- 모델은 중복된 정보 속에서 특정 피처를 중요하다고 인식할 수 있지만, 이 정보 자체가 예측에 큰 도움이 되지 않으면 노이즈로 작용할 수 있다.
- 예를 들어, 피처 A와 피처 B가 매우 유사한 정보를 제공하는데, 모델이 피처 A의 중요도를 높게 평가했다면, 이는 모델의 일반화 성능에 크게 기여하지 못하는 노이즈일 가능성이 있다.따라서, 모델의 일반화 성능을 높이기 위해서는 유사한 피처를 제거하거나 조합하여 중복성을 줄이는 것이 중요하다. 이렇게 하면 모델이 더 간결해지고, 새로운 데이터에 대해 더 안정적으로 예측할 수 있다.
- → 피처 A와 피처 B가 유사한 정보를 제공하는 상황에서, 모델이 피처 A의 중요도를 높게 평가했다면, 이는 해당 피처가 중복된 정보를 포함하고 있을 가능성이 크다. 피처 A와 B가 비슷한 패턴이나 값을 가진다면, 둘 중 하나만 있어도 충분한데, 모델이 둘 다 사용하게 되면 불필요한 복잡성이 증가한다. 이런 중복된 정보는 모델이 학습 데이터에 과도하게 맞추는 과적합의 원인이 될 수 있으며, 새로운 데이터에서의 성능을 저하시키는 노이즈로 작용할 수 있다.
4. 데이터의 불균형
- 학습 데이터가 특정 값이나 범위에 치우쳐져 있을 때, 피처가 해당 클래스나 값에 맞춰 편향된 정보를 제공할 수 있다.
- 학습 데이터의 대부분이 특정 범주에 속하고 그 범주에서 특정 피처가 일정한 패턴을 보인다면, 모델은 이 피처를 매우 중요하게 여길 수 있지만, 이는 다른 범주나 새로운 데이터에서는 예측에 도움이 되지 않는 노이즈일 수 있다.
5. 모델 특성에 따른 왜곡
- 랜덤 포레스트나 결정 트리 기반 모델은 고차원 데이터에서 특정 피처를 자주 사용하면서 해당 피처의 중요도를 높게 평가할 수 있다.
- 특히, 변동성이 큰 피처나 고유값이 많은 피처는 모델이 해당 피처를 자주 활용하게 만들 수 있지만, 이 경우에도 실제로는 노이즈일 수 있다.결정 트리 모델은 이러한 분할 규칙을 선택할 때 가장 효과적으로 데이터를 분할할 수 있는 피처와 임계값을 찾는다. 효과적으로 분할한다는 것은, 해당 피처와 임계값을 사용해 나눴을 때, 각 그룹이 가장 순수해지는 것을 의미한다. 예를 들어, 분류 문제에서 같은 클래스에 속하는 데이터가 최대한 많이 포함되도록 하는 것이다. 이를 위해 지니 불순도(Gini Impurity), 엔트로피(Entropy), 분산(Variance) 등의 평가 지표를 사용하며, 이런 지표를 통해 데이터를 가장 잘 나눌 수 있는 피처와 임계값을 선택하게 된다. 이 과정을 반복하면서 트리는 점점 깊어지게 된다.요약하자면, 변동성이 크거나 고유값이 많은 피처가 중요도가 높게 평가되는 경우는 단순히 학습 데이터에 맞춘 결과일 수 있다. 이러한 피처가 노이즈로 작용하지 않도록 하기 위해서는 교차 검증을 통해 성능에 실제로 기여하는지 확인하거나, 변수 선택 기법을 사용하여 피처를 조정하는 것이 필요하다.
- 하지만 이 과정에서 고차원 데이터에서는 특정 피처가 반복적으로 분할에 사용될 가능성이 높다. 특히, 변동성이 큰 피처나 고유값이 많은 피처(범주가 많거나 독특한 값이 많은 피처)는 모델이 데이터를 나누는 데 자주 선택될 수 있다. 이런 피처는 학습 데이터에 특화된 패턴을 반영할 수 있어서, 학습 데이터에서는 높은 중요도를 가질 수 있지만, 실제로는 새로운 데이터에 적용될 때 노이즈가 될 수 있다. 즉, 학습 데이터의 특정 구간이나 특이점에서만 유용한 정보를 제공하는 피처일 경우, 모델이 이를 자주 사용하더라도 모델의 일반화 성능을 저해할 수 있는 것이다.
- → 랜덤 포레스트나 결정 트리 기반 모델은 분할 규칙을 사용해 데이터를 나누어 예측을 수행한다. (분할 규칙이란, 각 노드에서 어떤 피처를 사용해 데이터를 어떻게 분할할지를 결정하는 기준을 말한다. 모델은 데이터를 트리 구조로 나누며, 각 피처와 피처의 특정 값(임계값)을 기준으로 데이터를 두 그룹으로 나눈다. 예를 들어, 피처가 나이이고, 임계값이 30일 때, 트리는 데이터를 나이 <= 30인 그룹과 나이 > 30인 그룹으로 나눌 수 있다.)
결론
피처 중요도가 높다고 해서 항상 유용한 피처는 아니다. 피처 중요도는 모델이 학습 데이터에서 얼마나 많이 해당 피처를 활용했는지를 보여줄 뿐, 이것이 일반화 성능과 반드시 일치하는 것은 아니다. 따라서, 피처의 중요도를 평가할 때는 모델의 과적합 여부를 확인하고, 검증 세트나 새로운 데이터에서의 일관된 성능을 평가하는 과정이 필요하다. 이를 통해 진정으로 중요한 피처를 파악하고, 노이즈를 걸러내야 더 나은 예측 모델을 만들 수 있다.
틀린 내용이 있을 수 있다.