The Quest for Machine Learning - Chap1 피처 엔지니어링 1 (피처 정규화)
하기는 The Quest for Machine Learning 도서를 학습하며 내용 요약 및 개인 필기를 작성한 것임
2024-02-01
수치형 데이터에 대한 피처 정규화가 중요한 이유?
수치형 피처를 정규화하면 모든 특징을 대략적으로 비슷한 수치 구간내로 이동할 수 있음
- Min-Max Scaling: 데이터를 선형변환하여 0-1 사이로 투영
$$
X_{norm} = \frac{X-X_{min}}{X_{max} - X_{min}}
$$
- Z-score Normalization (Standardization): 데이터를 평균 0, 표준편차 1인 분포로 투영
$$
z = \frac{x-\mu}{\sigma}
$$
수치형 데이터에 대해 정규화를 해야하는 이유는 경사하강법에서 좁은 분포 내에서 weight 갱신의 속도가 빠르기 때문
아래의 등치선내 x1 축에서 시작지점부터 최적해까지의 이동거리는 왼쪽의 정규화 전이 오른쪽의 정규화 이후의 길이보다 길고,
따라서 갱신의 횟수가 더 많아야 최적해에 수렴할 수 있을 것임
경사하강법이 필요한 Linear Regression, Logistic Regression, SVM, MLP등의 모델은 정규화를 통해 학습 속도를 높힐 수 있지만
Decision Tree 계열 모델은 IG, Entropy를 사용하기 때문에 피처 정규화를 한다고 해도 불순도가 변경되지 않으므로 피처 정규화가 필요 없음
2024-02-08
고차원 결합피처는 어떻게 피처 엔지니어링 해야하는가?
고차원 결합피처는 일차원의 불연속 특성을 쌍으로 조합시켜 만듦
$$
X = (x_1, x_2, …, x_k) \rightarrow Y = sigmoid(\sum_i \sum_j w_{ij} < x_i, x_j >)
$$
- <xi, xj> 는 $x_i$ $x_j$ 의 결합피처
- $w_{ij}$의 차원은 $|x_i|\cdot|x_j|$ (i번째 피처와 j번째 피처가 취하는 값의 개수)
언어=한국어, 유형=영화 | 언어=영어, 유형=영화 | 언어=한국어, 유형=드라마 | 언어=영어, 유형=드라마 |
---|---|---|---|
1 | 0 | 0 | 0 |
$w_{ij}$ 는 2(언어2종) x 2(유형2종) = 4
사용자 수, 상품 수를 결합피처로 만드는 경우에는 파라미터의 규모가 mxn으로 매우 커지게 되므로
저차원으로 행렬분해를 하여 mxk + nxk개의 파라미터 크기로 줄여 표현
'AI > Books' 카테고리의 다른 글
The Quest for Machine Learning - Chap2 모델 평가 (1) | 2024.03.26 |
---|---|
The Quest for Machine Learning - Chap1 피처 엔지니어링 2 (텍스트 표현 모델) (0) | 2024.03.04 |
선형대수와 통계학으로 배우는 머신러닝 - Chap12-2 딥러닝 (AutoEncoder - 자연어처리) (1) | 2023.12.25 |
선형대수와 통계학으로 배우는 머신러닝 - Chap12-1 딥러닝 (퍼셉트론 - GRU) (0) | 2023.12.25 |
선형대수와 통계학으로 배우는 머신러닝 - Chap11 비지도 학습 (0) | 2023.12.25 |