데이터 전처리(Data Cleaning)
데이터 분석 및 머신러닝 모델링을 위해 데이터를 정리하고 준비하는 과정
원시 데이터(raw data)는 불완전하거나, 노이즈가 많거나, 형식이 일관되지 않아 직접 모델링에 사용하기 어려움
→ 데이터 전처리과정을 통해 데이터의 품질을 높이고, 분석 결과의 신뢰성을 확보
결측값 처리 | 데이터셋에서 누락된 값을 처리하는 작업 |
이상값 처리 | 데이터셋에서 비정상적으로 큰 값이나 작은 값을 처리하는 작업 |
중복 데이터 제거 | 동일한 데이터가 여러 번 나타나는 경우 이를 제거 |
데이터 타입 변환 | 데이터의 타입을 적절하게 변환하는 작업 |
데이터 정규화 | 데이터의 범위를 일정하게 맞추는 작업 |
인코딩 | 범주형 데이터를 수치형 데이터로 변환 |
샘플링 | 데이터셋의 크기를 줄이거나 늘리는 작업 |
특징 선택 및 추춟 | 모델 성능을 높이기 위해 중요한 특징을 선택하거나 새로운 특징을 추출 |
- 데이터 품질 향상: 결측치, 이상치, 중복 데이터를 처리하여 데이터의 신뢰도를 높임
- 모델 성능 향상: 적절한 스케일링, 정규화를 통해 모델의 학습 속도와 성능 개선 가능
- 데이터 일관성 확보: 서로 다른 출처에서 수집된 데이터를 일관된 형식으로 변환
- 특성 공학(Feature Engineering): 유용한 특성(Feature)을 생성하거나 변환하여 모델의 예측 성능을 향상
데이터 전처리의 주요 기법
결측치 처리 (Handling Missing Data)
결측치
데이터셋에서 누락된 값
→ 이를 적절히 처리하지 않으면 모델의 성능이 저하될 수 있음
- 삭제 (Deletion): 결측치가 포함된 행 또는 열을 삭제
- 대체 (Imputation): 평균, 중앙값, 최빈값 등으로 결측치를 대체
- 예측 (Prediction-based Imputation): 다른 특성을 활용하여 결측치를 예측하고 채움
이상치 처리 (Handling Outliers)
이상치
데이터에서 비정상적으로 크거나 작은 값
→ 모델의 성능을 저하시킬 수 있음
- 제거 (Removal): 이상치를 데이터셋에서 제거
- 변환 (Transformation): 이상치를 다른 값으로 변환 (예: 상한선이나 하한선으로 대체)
- IQR 방법 (Interquartile Range Method): 사분위수를 활용하여 이상치를 탐지하고 처리
데이터 정규화 (Normalization)
정규화
데이터를 일정한 범위로 스케일링하는 과정
주로 [0, 1] 범위로 변환
- Min-Max 정규화
𝑿𝑛𝒐𝑟𝑚 = 𝑿𝑚𝑎𝑥 - 𝑿𝑚𝑖𝑛𝑿 - 𝑿𝑚𝑖𝑛
$$ X_{norm} = \frac{X - X_{min}}{X_{max} - X_{min}} $$
데이터 표준화 (Standardization)
데이터를 평균 0, 분산 1로 변환하는 과정
- Z-점수 표준화
$$ X_{std} = \frac{X - \mu}{\sigma} $$
여기서 𝜇는 평균, 𝜎는 표준편차
특성 공학 (Feature Engineering)
데이터로부터 새로운 유용한 특성을 생성하는 과정
- 특성 생성: 기존 데이터를 기반으로 새로운 특성을 생성 (예: 날짜 데이터를 사용하여 요일 특성 생성)
- 특성 선택: 모델 성능에 중요한 특성을 선택하고, 중요하지 않은 특성을 제거
데이터 인코딩 (Data Encoding)
비정형 데이터를 모델이 이해할 수 있는 형태로 변환
- 레이블 인코딩 (Label Encoding): 범주형 데이터를 숫자로 변환
- 원-핫 인코딩 (One-Hot Encoding): 범주형 데이터를 이진 벡터로 변환
데이터 분할 (Data Splitting)
데이터를 학습용(train), 검증용(validation), 테스트용(test)으로 분할하여 모델의 일반화 성능을 평가
- 학습 데이터 (Training Data): 모델 학습에 사용
- 검증 데이터 (Validation Data): 모델 튜닝 및 성능 검증에 사용
- 테스트 데이터 (Test Data): 최종 모델 평가에 사용
'⊢MachineLearning' 카테고리의 다른 글
지도학습 : 회귀모델 (0) | 2025.03.06 |
---|---|
데이터 전처리 실습 흐름/코드 정리 (0) | 2025.03.06 |
Kaggle과 Kaggle 데이터셋 다운로드 (0) | 2025.02.17 |
혼동행렬을 활용한 분류 성능 지표 (1) | 2025.02.02 |
titanic 데이터셋 분석 및 모델 학습 (0) | 2025.01.29 |