ALL NIGHT STUDY

데이터 전처리(Pre-Processing)

with_AI 2021. 9. 16. 01:55

 

데이터 전처리란?

머신러닝 프로젝트에 사용하기 위해, 데이터를 모델이 이해할 수 있는 형태로 변환하거나 품질을 올리는 일련의 과정

 

 

DS 전문가가 가장 많이 시간을 쓰는 일은 데이터 전처리 과정이다.

 

 

모든 데이터 분석 프로젝트에서 데이터 전처리는 반드시 거쳐야 하는 과정이다. 대부분의 데이터 분석가가 좋아하지 않는 과정이지만, 분석 결과/인사이트와 모델 성능에 직접적인 영향을 미치는 과정이기 때문에 중요하게 다루어지는 과정이다.

 

 

데이터 전처리를 해야 하는 이유?

Garbage In Garbage Out

쓰레기를 넣으면 쓰레기 결과가 나오기 떄문이다.

  • 정제되지 않은 데이터를 dirty data라 하고, dirty data를 정제하는 것을 cleaning 또는 scrubbing한다고 한다.
  • 데이터 중 dirty data 비율이 일정 수준 이상이면, 통계 및 분석 결과가 무의미해집니다. 따라서 데이터 분석을 준비하는 단계에서 dirty data를 정제해 주어야 한다.
  • 데이터를 분석하기 전에 오류를 깨끗이 다듬지 않으면 잘못된 데이터를 통해 잘못된 인사이트, 결론을 얻을 수 있다.

 

제거하거나 보정해야 할 데이터 종류

  1. 결측치(Missing Value)
  • Ignore the tuple (결측치가 있는 데이터 삭제) → 결측치 데이터 삭제
  • Manual Fill (수동으로 입력) → 수동으로 하나하나 결측치 채워나가기
  • Global Constant ("Unknown") → global constant를 사용해 결측값 채워 넣기 (그냥 값을 정해서 넣는 것)
  • Imputation (All mean, Class mean, Inference mean, Regression 등) → 결측값 대체 방법
  1. Noisy Data
  • 큰 방향성에서 벗어난 random error 혹은 variance를 포함하는 데이터
  • 이상치(outliear): 속성의 값이 일반적인 값보다 편차가 큰 값 (대부분의 경우 Variance가 97.5% 이상, 2.5이하에 포함되는 데이터를 말함)

→ descriptive statistics 혹은 visualization등 (eda)을 통해 제거가 가능

 

 


데이터 전처리 방법

 

1. Integration

여러개로 나누어져 있는 데이터들을 분석하기 편하게 하나로 합치는 과정을 의미한

예시로 merge 가 있습니다

– 다양한 로그 파일 및 데이터베이스의 통합

– 일관성 있는 데이터 형태로 변환

2. Transformation

데이터의 형태를 변환하는 작업으로, scaling이라고 부르기도 한다

예시로 normalize 가 있습니다

– 정규화(normalization)

– 집합화(Aggregation)

– 요약(summarization)

– 계층 생성

3. Reduction

데이터를 의미있게 줄이는 것을 의미하며, dimension reduction과 유사한 목적을 갖는다

pca등의 예시가 있습니다.

– 축소된 데이터도 원래 데이터와 같은 분석 결과를 얻을 수 있어야 함.

– 컴퓨팅 시간 등 고려 위해 데이터 축소가 필요

– 방대한 로그 데이터의 경우 일정 시간 단위로 데이터 축소 필요

– 가장 중요한 차원의 저주 문제를 해결 할 수 있음

4. 데이터 이산화(Discretization)

숫자 데이터들은 단위명이나 개념적인 이름으로 대체한다.

– 데이터 축소의 일종이나 중요시 됨

– 수치 값을 속성 값으로 변환

예) [0~0.5) : Low, [0.5~1.0] : High

– 많은 알고리즘은 데이터 이산화 과정이 요구됨

5. Cleaning

Cleaning은 noise 를 제거하거나, inconsistency 를 보정하는 과정을 의미합니다.

데이터의 정확도, 완성도, 일관성, 신뢰성과 같은 데이터를 제거하거나 보정한다.

– 결측치 대체

– 잡음 데이터의 평활ㅉ

– 이상치의 확인 및 제거

– 불일치 해결

6. 데이터 표현 특징 추출(Descriptive Characteristics Mining)

데이터 갖고 있는 이해를 기반으로 데이터에서 유용한 정보들을 추출

– 데이터를 더 잘 이해하기 위해 대표 특징을 이해하는 과정

– 데이터 축소의 일종이기도 함

– 실제 도메인을 고려한 방법이 많이 사용됨

예) 가속도 센서: 가속도 특성에 따른 연산 필요

예) GPS 센서: GPS 데이터 특성에 따른 연산 필요

'ALL NIGHT STUDY' 카테고리의 다른 글

Tidy 데이터  (0) 2021.09.16
Concat/Merge  (0) 2021.09.16
Pandas(Python Data Analysis Library)  (0) 2021.09.16
Feature Engineering  (0) 2021.09.16
EDA(Exploratory Data Analysis)  (0) 2021.09.16