좋은 데이터란?
1. 좋은 성능의 모델을 학습할 수 있는 데이터
좋은 데이터란 단순히 많은 양의 데이터가 아니라, 모델이 일반화 가능한 패턴을 학습할 수 있도록 다양한 상황을 반영하고, 노이즈가 적은 데이터입니다.
- 다양한 인풋을 포함하여 모델이 여러 상황에서 학습 가능
- 불필요한 노이즈가 최소화되어 모델 학습을 방해하지 않음
데이터셋의 다양성
- 예: 소득수준과 정신건강지수 관계
- 전체 소득 범위를 골고루 포함하면, 데이터가 경향성을 잘 반영
- 특정 소득층만 포함되면 데이터 편향(Bias) 발생 → 전체 경향 파악 어려움
- 데이터 편향의 유형
- 표본 편향(Sampling Bias): 데이터 수집 과정에서 특정 그룹이 과소/과대표집됨
- 생존자 편향(Survivorship Bias): 분석 대상 중 관찰되지 않은 그룹이 존재
생존자 편향 사례: 2차 세계대전 당시, 비행기 총탄 흔적 분석 문제
- 날개와 꼬리에 흔적 많음 → 강화를 계획
- 그러나 실제 강화 필요 부위는 몸체 → 총을 맞고 돌아오지 못한 비행기 때문
1. 데이터 노이즈 종류
머신러닝 모델은 데이터를 통해 함수(모델)를 정의합니다.
데이터 노이즈가 많으면 함수 정의 자체가 불명확해지거나 불연속적이 되어 모델 성능 저하 발생.
2. 결측치 (Missing Values)
- NaN, NA, null 등 다양한 표현
- 원인
- 측정 불가
- 저장/변환 과정 오류
- 데이터 파싱 문제
3. 이상치 (Outliers)
- 정상 범위를 벗어난 값
- 처리 기준
- 명확히 잘못된 값 → 제거
- 극단적 값이나 희귀값 → 분석 후 판단
4. 틀린 라벨
- 실수로 잘못된 라벨
- 문제 자체가 모호하여 사람도 판단하기 어려운 경우 존재
- 예: 번역 데이터에서 직역 vs 의역
5. 중복 샘플
- 동일 입력값 존재 → 서로 다른 라벨 부착 시 모델 혼란
- 해결: 중복 제거 또는 일관된 라벨링
6. Out-of-Domain 데이터
- 모델 학습 목적과 다른 데이터 포함
- 예: 얼굴 인식 데이터에 손그림 포함
- 언어 번역 데이터에 다른 언어 문장 포함
7 Silent Failure
- 학습 과정에서 오류 없이 진행되지만, 최종 모델 성능이 전혀 사용 불가 수준
- 원인 대부분: 데이터 품질 문제, 전처리 오류
좋은 데이터 만들기 전략
1. EDA(Exploratory Data Analysis)
- 데이터 특성 이해 → 문제 정의, 모델링 방향 설정
- 주요 활동
- 데이터 기본 정보 확인
- 샘플 랜덤 추출 및 패턴 확인
- 변수별 통계량/분포 확인
- 변수 간 상관 관계 분석
- 노이즈/편향 확인
2. 노이즈 처리
- 결측치, 이상치, 중복 샘플, 잘못된 라벨 제거 혹은 수정
- 데이터셋 전체에 일관된 처리 기준 적용
- 예: 이미지 글자 인식 → 획 폭 0.2배 미만 무시
3. 라벨링 기준 설정
- 애매한 샘플의 처리 기준 명확화
- 전체 데이터셋에 일관성 적용
- 모호한 샘플 폐기 또는 명확한 기준에 따른 라벨링
데이터 전처리
1. 이상치 및 결측치 처리
- 샘플 제거, 변수 제거, 대체값 활용
- 대체값 예시: 주변 샘플 평균, 중앙값, 의미 있는 값(0 등)
- 이상치 처리
- 박스플롯 활용: Q1-1.5IQR, Q3+1.5IQR 기준
- 도메인 지식 기반 처리
2. 피처 스케일 조정
- 모델 학습 시 변수 단위 차이 때문에 특정 변수 영향력이 과도하게 커지거나 작아지는 문제 방지
- 방법
- 표준화(Standardization): 평균 0, 표준편차 1xstd=σx−μ xstd=x−μσx_{std} = \frac{x - \mu}{\sigma}
- 정규화(Normalization/Min-Max Scaling): 0~1 범위로 조정xnorm=xmax−xminx−xmin xnorm=x−xminxmax−xminx{norm} = \frac{x - x{min}}{x{max} - x{min}}
- 차이점
- 표준화: 분포 모양 유지, 평균/분산 기준 조정
- 정규화: 분포를 특정 범위로 압축, 극단치 영향 가능
통계적 이해와 시각화
1. 변수별 통계량
- 평균, 중앙값, 최빈값, 분산, 표준편차, 왜도(skewness), 첨도(kurtosis)
- 데이터 분포 이해 → 비대칭, 꼬리 분포 확인
2. 상관계수와 상관행렬
- 변수 간 선형 관계 확인
- 색상, 히트맵 등 시각화 활용
3. 박스플롯
- 이상치 및 분포 요약
- 최솟값, Q1, 중앙값, Q3, 최댓값 포함
EDA 기반 데이터 품질 점검
- 데이터 편향: 특정 그룹 과소/과대표집 여부 확인
- 노이즈 샘플 확인 및 제거
- 생존자 편향, 샘플 누락 등 분석
- 데이터셋 개선 → 수집, 라벨링 기준 재설정, 전처리