Feature Engineering
창원대학교 정보통신공학과
주효진
Feature Engineering이란?
모델의 성능을 높이기 위해
초기 데이터로부터 특징을 가공하고 생산하여 입력 데이터를 생성하는 과정
도입
도입
가공하기 쉬운 데이터
• 문자보다는 숫자 • 개별값보다는 범위로 구분
본격적으로 코드를 작성하기 전에….
변형을 시킬 때 함께 변형시키기 위함.
각각 따로 변형시켜줄 필요가 없이 한꺼번에 수행 가능.
feature vector
이름에서 의미있는 정보를 추출
이름에 따라 더 많이 죽고, 덜 죽고를 판단하기는 어려움.
Mr/Mrs/Miss 에 따라 추출한 값은?
feature vector
1. feature 값 생성 Mr/ Miss/ Mrs를 추출.
이 외에는 Others로 분류.
feature vector
feature feature vector vector는 숫자들의 배열.
*NaN(Not a Number) 데이터에 알맞은 값을 대입해 줄 것.
2. feature vector로 변환 Mr 0
Miss 1 Mrs 2 Others 3
feature vector
feature vector
Mr 0 Miss 1
Mrs 2 Others 3
name 값 데이터 셋에서 제거
Name에서 필요한 정보를 성공적으로 추출하여
feature vecto값으로 생성했으므로, Name은 더 이상 불필요.
feature vector : 성별 추출
성별은 이름에서처럼 특정한 부분을 추출할 필요가 없음.
따라서 텍스트를 숫자로 변형하는 과정만 거치면 Ok.
male 0, female 1
feature vector : 성별 추출
male 0, female 1
feature vector : 나이 추출
나이에는 NaN 데이터 값이 들어있다.
보통 NaN 데이터에는 전반적인 평균 나이를 대입한다.
하지만! 우리는 이전에 구한 타이틀을 이용하여 남자의 평균, 기혼
feature vector : 나이 추출
Age 값이 NaN이면,
Title별로 Age의 가운데에 있는 정보(median)를 넣는다.
feature vector : 나이 추출
연령대의 전반적인 생사를 그래프로 나타낸다.
feature vector : 나이 추출
카테고리 별로 나누기(Binning)
feature vector map
• child(~16): 0
• young(17~26): 1
• adult(27~36): 2
• mid-age(37~62): 3
• senior(62~): 4
나이를 그대로 그래프로 표현하면 1~80까지 너무 다양한 feature값 존재.
카테고리 별로 나이를 담아 정보를 명확하게 보이게 하기