본문 바로가기

취업준비/인공지능

[AI Tech] 2주차 8-1차시 피처 엔지니어링 (1)

8차시: 피처 엔지니어링 - 1

8-1. 피처 엔지니어링 (1)

1. Pandas Group By Aggregation을 이용한 Feature Engineering

1. 정의

Feature Engineering은 원본 데이터로부터 도메인 지식 등을 바탕으로 문제를 해결하는데 도움이 되는 Feature를 생성, 변환하고 이를 머신 러닝 모델에 적합한 형식으로 변환하는 작업

 

1.1 Group By Aggregation Feature Generation

Total-Sum Feature

Quantity-sum Feature: 과거 고객이 구매한 상품의 수의 합 / 레이블 별 분포가 확 다르다.

Price-Sum Feature: 과거 고객이 주문한 상품 금액의 합

Total-count Feature

Quantity-count Feature: 과거 고객의 주문한 상품의 개수의 합

Price-count Feature: 과거 고객이 주문한 상품의 개수

Total=mean Feature

Quantity-mean Feature

Price-mean Feature: 과거 고객의 주문한 상품의 평균

Total-min Feature: 과거 고객이 주문한 구매액의 최소

Quantity-min Feature

Price-min Feature

Total-max Feature: 과거 고객이 주문한 구매액의 최대

Quantity-max Feature

price-Max Feature

total-std Feature: 과거 고객이 주문한 금액의 표준편차

Quantity-std Feature:

Total-skew Feature: 과거 고객이 주문한 금액이 어느 쪽으로 치우쳐있는가?

Quantity-skew Feature

price-skew Feature

 

2. Cross Validation Out Of Fold Prediction

2.1 Cross Validation Out Of Fold Predict

 

3. LightGBM Early Stopping

3.1 LightGBM Early Stopping 적용

Early Stopping이란?

1) Iteration을 통해 반복학습이 가능한 머신러닝 모델에서 Validation 성능 측정을 통해 Validation 성능이 가장 좋은 하이퍼파라미터에서 학습을 조기 종료(Early Stopping)하는 Regularization 방법

2) 예시: Boosting 트리 모델 트리 개수, 딥러닝의 Epoch 수

LightGBM Early Stopping

1) LightGBM에서 몇 개의 트리를 만들지 n_estimators란 하이퍼파리미터로 설정하고 이 개수만큼 트리를 만들지만, 설정한 트리 개수가 최적의 값이라고는 볼 수 없음.

2) Early Stopping은 Validation 데이터가 있을 시, LightGBM 트리 개수인 n_estimators는 충분히 크게 설정하고, early_stopping_rounds를 적절한 값으로 설정

3) 트리를 추가할 때마다 Validation 성능을 측정하고 이 성능이 early_stopping_rounds 값 이상 연속으로 성능이 좋아지지 않으면 더 이상 트리를 만들지 않고 가장 validation 성능이 좋은 트리 개수를 최종 트리 개수로 사용한다

 

4. Baseline code(cross validation out of fold prediction) 살펴보기

★ 9-2차시에서 계속

 

 

 

 

 

© NAVER Connect Foundation. All Rights Reserved