1. 희소값이란?
범주형 피쳐에서 빈도가 낮은 값
- 데이터를 수집하다 보면 자연스럽게 비율이 높은 값과 낮은 값이 생겨난다.
2. 왜 희소값을 처리해주어야 할까?
- 희소값은 데이터 해석을 왜곡하고 머신러닝 성능을 떨굴 수 있기 때문이다.
- 희소값을 적절하게 처리를 해주어야 데이터의 전체적인 경향을 파악하는데 좋다.
- 또한, 희소값에 대해 one-hot-encoding을 하게 되면 오버피팅이 발생할 수도 있고 너무 희소한 행렬이 생성되기 때문에 계산에 많은 자원(시간, 용량 등)이 필요하다.
3. 희소값 처리 방법
1) 희소값을 결측치 처리하기
2) 희소값을 "기타" 등으로 묶어주기
=> 이후 인코딩 진행해도(pd.get_dummies, OneHotEncoder) 해당 값은 인코딩이 되지 않는다.
4. 희소값 탐색
train["변수"].value_counts().sort_values()
'머신러닝과 딥러닝 > ML 개념정리' 카테고리의 다른 글
[ML] 18. 데이터 전처리(7) - 정규분포와 트랜스포메이션(log transformation) (0) | 2022.11.14 |
---|---|
[ML] 17. 데이터 전처리 (6) - 스케일링(z-score, min-max, robust) (1) | 2022.11.14 |
[ML] 15. 데이터 전처리 (4) - 이상치 다루기(스케일링) (0) | 2022.11.09 |
[ML] 12. 데이터 전처리(1) - 기본방법 개요 (0) | 2022.11.09 |
[ML] 10. 하이퍼파라미터 튜닝(3) - Random Search 주요 파라미터 (0) | 2022.11.03 |
댓글