데이터 전처리: 이상치 처리
ㅁ 이상치 처리
ㅇ 정의:
데이터셋 내에서 정상 범위에서 벗어난 값(이상치, Outlier)을 탐지하고 제거하거나 수정하는 과정. 모델 성능 저하, 통계 왜곡, 잘못된 분석 결론을 방지하기 위해 수행됨.
ㅇ 특징:
– 통계 기반(평균, 표준편차, 사분위수 등) 또는 머신러닝 기반 기법 활용
– 극단값을 제거하거나 대체함
– 데이터 분포와 도메인 지식을 고려해야 함
ㅇ 적합한 경우:
– 센서 오류, 입력 실수, 비정상 패턴이 포함된 데이터
– 모델 학습 전에 데이터 품질 향상이 필요한 경우
ㅇ 시험 함정:
– 모든 극단값이 이상치는 아님(도메인 상 의미 있는 값일 수 있음)
– 이상치 제거가 아닌, 변환(Box-Cox, 로그 변환)으로 해결하는 경우도 있음
– 표본 수가 적은 경우, 이상치 제거가 통계적 신뢰도를 낮출 수 있음
ㅇ 시험 대비 “패턴 보기” 예시:
O: “IQR 방법은 사분위 범위를 이용하여 이상치를 판단한다.”
X: “Z-Score는 중앙값과 사분위수를 이용한다.”
================================
1. IQR
ㅇ 정의:
Interquartile Range(사분위 범위)를 이용하여 이상치를 탐지하는 방법. Q3(3사분위) – Q1(1사분위)의 범위를 벗어난 값을 이상치로 판단.
ㅇ 특징:
– 데이터 분포에 대한 가정이 필요 없음(비모수적)
– 극단값에 덜 민감함(중앙값 기반)
– 일반적으로 Q1 – 1.5×IQR 미만, Q3 + 1.5×IQR 초과 값을 이상치로 간주
ㅇ 적합한 경우:
– 비정규분포 데이터
– 범위 기반 이상치 탐지가 필요한 경우
ㅇ 시험 함정:
– 1.5×IQR 배수는 절대 기준이 아닌 경험적 기준
– 정규분포 가정 하에서는 Z-Score가 더 적합할 수 있음
ㅇ 시험 대비 “패턴 보기” 예시:
O: “IQR 방식은 중앙값을 이용하여 극단값 영향을 줄인다.”
X: “IQR 방식은 평균과 표준편차를 사용한다.”
================================
2. Z-Score
ㅇ 정의:
각 데이터 값이 평균에서 몇 표준편차 떨어져 있는지를 나타내는 표준 점수(Z 값)를 이용하여 이상치를 탐지하는 방법.
ㅇ 특징:
– 정규분포 가정 하에서 효과적
– Z 값이 일정 기준(예: |Z| > 3) 이상이면 이상치로 판단
– 평균과 표준편차에 민감
ㅇ 적합한 경우:
– 데이터가 대체로 정규분포를 따르는 경우
– 연속형 수치 데이터
ㅇ 시험 함정:
– 분포가 왜곡된 경우 평균과 표준편차가 이상치에 의해 크게 영향을 받을 수 있음
– Z 점수 기준값(3 또는 2.5 등)은 상황에 따라 다름
ㅇ 시험 대비 “패턴 보기” 예시:
O: “Z-Score는 평균과 표준편차를 기반으로 이상치를 판별한다.”
X: “Z-Score는 중앙값과 IQR을 이용한다.”
================================
3. Isolation Forest
ㅇ 정의:
트리를 이용하여 데이터를 분할하면서 이상치를 탐지하는 비지도 학습 알고리즘. 이상치는 적은 분할로도 고립되기 때문에 빠르게 식별됨.
ㅇ 특징:
– 랜덤 포레스트 유사 구조
– 고차원 데이터에서도 성능 우수
– 훈련 데이터의 분포를 직접 모델링하지 않음
ㅇ 적합한 경우:
– 대규모, 고차원 데이터셋
– 비정규분포, 복잡한 패턴의 이상치 탐지
ㅇ 시험 함정:
– 이상치 비율이 너무 낮거나 높으면 성능 저하 가능
– 파라미터(n_estimators, max_samples) 튜닝 필요
ㅇ 시험 대비 “패턴 보기” 예시:
O: “Isolation Forest는 적은 분할로 고립되는 포인트를 이상치로 본다.”
X: “Isolation Forest는 평균과 표준편차를 계산하여 이상치를 판단한다.”
================================
4. LOF
ㅇ 정의:
Local Outlier Factor. 각 데이터 포인트의 밀도를 주변 이웃과 비교하여 밀도가 현저히 낮으면 이상치로 판단하는 방법.
ㅇ 특징:
– 밀도 기반 이상치 탐지
– 데이터의 지역적 특성을 반영
– k-최근접이웃(k-NN) 알고리즘 확장 형태
ㅇ 적합한 경우:
– 데이터 밀도가 지역마다 다른 경우
– 군집 구조가 존재하는 데이터
ㅇ 시험 함정:
– k 값 선택에 따라 결과가 민감
– 고차원 데이터에서는 거리 계산이 왜곡될 수 있음
ㅇ 시험 대비 “패턴 보기” 예시:
O: “LOF는 주변 이웃 밀도와 비교하여 이상치를 판단한다.”
X: “LOF는 사분위 범위를 기반으로 이상치를 탐지한다.”
================================
제가 원하시면, 각 방법별 **Python 예제 코드**까지 포함한 버전으로도 만들어 드릴 수 있습니다.
원하시나요?