[데과&데엔/인터뷰 문답집] 1-1 피처 엔지니어링 : 피처 정규화
0. 들어가기에 앞서
0-1
' 아무리 재주가 좋은 부인이라도 쌀이없으면, 밥을 지을 수 없다.'
ML 에서 Data 와 Featrue는 쌀에 해당하고, Model 과 algorithm은 '부인'에 해당한다.
충분한 Data 와 Featrue가 없다면 아무리 좋은 Model 구조를 가졌다고 해도, 만족할만한 결과를 얻을 수 없다.
= [Garbage in, garbage out]
0-2
피처 엔지니어링 이란, 이름에서 알수 있듯이 최초 데이터에 대해 일련의 공정 처리를 가해 피처로 만들어 알고리즘과 모델에서 INPUT(입력) 값으로 사용하는 것
본질적으로 피처 엔지니어링은 데이터를 표현하는 과정, 더 실용적인 관점에서 본다면, 피처 엔지니어링의 목적은 데이터의 Noise와 잉여 성분을 제거하고 더 효율적인 피처를 얻음으로써, 해결하려는 문제와 에측모델 간의 관계를 설명하는 것.
다음 두가지 유형의 데이터를 중심으로 이번 장이 진행
1.정형 데이터: 정형 데이터는 관계형 데이터베이스의 테이블이라고도 볼 수 있는데 , 각 열
마다 매우 명확하게 정의가 되어 있으며. 수치형 , 카테고리형 데이터를 포함합니다. 각 행은
하나의 샘플에 대한 정보를 담고 있습니다.
2. 비정형 데이타 바정형 데아터는 텍스트. 이미지. 음성, 비디오 데이터 등을 포함하고 있으
며. 간단한 하나의 수치로는 표현하기 힘들다는 특징이 있습니다. 클래스에 대한 정의도 불명
확하며 . 각 데이터의 크기 또한 천차만별입니다.
1. 피처 정규화
Q. 피처 정규화를 해야하는 이유
A. 데이터 피처 사이의 차원 영향을 제거하기 위해서, 피처에 대한 정규화 처리 하여 서로 다른 지표들을 비교할 수 있도록 만드는것
예를 들어, 키와 몸무게가 건강에 미치는 영향 => 미터(m), 킬로그램(Kg) 같은 서로 다른 단위를 동시에 사용한다면,
키는 일반적으로 1.6m ~ 1.8m 수치 범위에 있고, 체중은 50 ~ 100kg 범위에 있기 떄문에, 분석 결과는 수치 범위가 넓은 체중이라는 피처에 편향
질문
Q. 수치형 데이터에 대한 피처 정규화가 중요한 이유는 무엇인가?
피처 정규화
피처 정규화는 수치형 데이터를 일정한 범위나 분포로 조절하는 과정으로, 주로 두 가지 방법을 사용합니다: 최소-최대 스케일링과 Z-점수 정규화(Z-score normalization).
최소-최대 스케일링 (Min-Max Scaling)
- 데이터를 선형 변환하여 [0, 1] 범위로 투영시킵니다.
- 공식: \( X_{\text{norm}} = \frac{X - X_{\text{min}}}{X_{\text{max}} - X_{\text{min}}} \)
- 여기서 \(X\)는 데이터, \(X_{\text{max}}\)와 \(X_{\text{min}}\)은 각각 데이터의 최댓값과 최솟값을 나타냅니다.
Z-점수 정규화 (Z-score Normalization)
- 데이터를 평균이 0이고 표준편차가 1인 분포로 투영시킵니다.
- 공식: \( Z = \frac{X - \mu}{\sigma} \)
- 여기서 \(X\)는 데이터, \(\mu\)는 평균, \(\sigma\)는 표준편차입니다.
[정규화의 필요성]
경사하강법과 같은 최적화 알고리즘을 사용할 때, 피처의 크기가 다르면 수렴 속도가 느려질 수 있습니다.
예를 들어, 두 피처의 값 범위가 다르면 최적화 목표의 등치선이 불균형하게 그려져 더 많은 반복이 필요합니다.
예시

그림 1.1(a)에서는 정규화되지 않은 데이터를 사용한 경사하강법의 등치선이 불균형하게 그려져 수렴이 느립니다. 그림 1.1(b)에서는 정규화된 데이터를 사용한 경우, 등치선이 원형으로 변하여 두 피처의 갱신 속도가 동일해져 수렴이 빨라집니다.
[주의할 점]
데이터 정규화는 모든 모델에 적용되는 만병통치약은 아닙니다.
선형회귀, 로지스틱 회귀, 서포트 벡터 머신, 신경망과 같은 모델들은 보통 정규화가 필요합니다.
의사 결정 트리 계열의 모델은 정규화가 필요 없는 경우가 많습니다.
참고 자료
책 『데이터 과학자와 데이터 엔지니어를 위한 인터뷰 문답집』