본문 바로가기
public void static main/AI

[DataModeling] 데이터 준비 부터 이상치 탐지 및 처리까지

by 햄리뮤 2025. 1. 29.
반응형

 

https://businessanalystmentor.com/data-modelling-for-business-analysts-training/

데이터 준비의 중요성

모델을 학습시키기 전에 데이터를 적절히 처리하지 않으면, 알고리즘이 잘못된 패턴을 학습하거나 성능이 저하될 수 있다.

  • 신용 점수(credit score): 데이터가 300 ~ 850 범위에서 존재한다면, 특정 값들이 너무 큰 영향을 미칠 수 있다.
  • 일일 기온(daily temperature): 같은 섭씨 온도라도 지역마다 다른 영향을 미칠 수 있다.
  • 주식 가치(stock price): 주가가 천 단위인 경우와 십 단위인 경우 데이터 범위 차이가 크면 왜곡이 발생할 수 있다.

이런 문제들을 해결하기 위해서 데이터를 정규화(normalization)하거나 표준화(standardization) 하는 것이 중요 하다.

주요 데이터 준비 문제점

데이터를 그대로 사용하면 모델의 성능이 저하될 수 있는 주요 원인들을 살펴보자.

  • 데이터 스케일 차이
    • 데이터의 크기가 다르면 특정 특성이 모델에 더 큰 영향을 미칠 수 있다.
    • 예: 주식 가격은 10,000원 단위이고 신용 점수는 850점 단위라면, 주식 가격이 모델을 압도할 가능성이 크다.
    • 해결 방법
      • 정규화(Normalization): 데이터를 0~1 범위로 변환 (Min-Max Scaling)
      • 표준화(Standardization): 평균률 0, 표준 편차를 1로 변환 (Z-score Scaling)

차원 축소 기법

  • 이상치(Outliers)의 영향
    • 평균과 표준편차에 큰 영향을 미쳐 결과가 왜곡될 수 있다.
    • 예: 연봉 데이터에서 대부분이 5천 ~ 1억인데 한 사람이 100억을 받는다면, 평균 값이 비정상적으로 커짐.
    • 해결 방법
      • 상관관계를 분석하여 유의미한 변수만 선택(Feature Selection)
      • 차원 축소 기법(PCA, 주성분 분석) 사용

데이터 준비의 주요 과정

  1. 데이터 정제(Data Cleaning)
    • 결측치 처리(NaN 값 채우기, 삭제)
    • 이상치 탐지 및 제거
  2. 데이터 변환(Data Transformation)
    • 정규화 및 표준화적용
    • 로그 변환, Box-Cox 변환 등
  3. 변수 선택(Feature Selection)
    • 중요한 변수만 유지하여 모델 성능 향상

이상치 탐지(Outlier Detection)

이상치(Outlier)?

이상치는 데이터의 특성과 상황에 따라 세 가지 유형으로 분류할 수 있다.

  • 점 이상치(Point Outlier)
    • 단일 데이터 포인트가 전체 데이터 분포에서 크게 벗어나는 경우.
    • 예: 평균 연봉이 5천~1억인데, 한 사람이 100억을 받는 경우.
    • 해결 방법: 박스 플롯, IQR(사분위수 범위), Z-score 기반 탐지.
  • 맥락적 이상치(Contextual outlier)
    • 특정 상황(시간, 지역 등)에 따라 이상치로 간주되는 값.
    • 예: 여름철 기온이 30~35도 인데 하루만 10도라면 이상치
    • 해결 방법: 시계열 분석, 이동 평균(moving average)비교.
  • 집합적 이상치(Collective Outlier)
    • 개별적으로는 정상값이지만, 특정 패턴에서 벗어나면 이상치가 되는 경우.
    • 예: 한 그룹의 주식 가격이 동일한 패턴을 유지하다가 갑자기 급등하거나 급락하는 경우.
    • 해결 방법: 군집 분석(K-means), DBSCAN 같은 이상치 탐지 알고리즘 활용.

이상치 탐지 방법

  1. 시각적 탐지 방법
    • 박스 플롯(Box Plot): 데이터의 분포를 직관적으로 불 수 있음.
    • 산점도(Scatter Plot): 특정 변수가 극단적으로 치우쳐 있는지 확인 가능.
  2. 수학점 탐지 방법
    • IQR(Interquartile Range, 사분위수 범위) 방법
      • Q1(1사분위)과 Q3(3사분위)를 기준으로 이상치 탐지
      • 이상치 기준: 이상치 = Q1 - 1.5 * IQR 또는 Q3 + 1.5 * IQR
    • Z-score (표준 점수) 방법
      • 평균과 표준편차를 기준으로 이상치를 판단.
      • 이상치 기준: Z = x- μ​ /

잔차분석

이상치 처리 방법

  1. 이상치 제거(Remove Outliers)
    • 극단적인 이상치는 데이터에서 제거.
    • 단, 데이터 손실이 발생할 수 있음.
  2. 값 변환(Transform Values)
    • 로그 변환, 제곱근 변환 등을 통해 이상치를 줄임.
    • 예: 주가 데이터에 로그 변환 적용.
  3. 대체 값 사용(Impute Values)
    • 이상치를 평균, 중앙값으로 대체.
    • 예: 연봉 데이터에서 이상치를 중앙값으로 변경.

 

** 그냥 하루하루 개인 공부한 것을 끄적 거리는 공간입니다.

이곳 저곳에서 구글링한 것과 강의 들은 내용이 정리가 되었습니다.

그림들은 그림밑에 출처표시를 해놓았습니다.

문제가 될시 말씀해주시면 해당 부분은 삭제 하도록하겠습니다. **

반응형

댓글