본문 바로가기

Mathematics/Statistics

Feature Engineering(특성 공학)이란?

반응형

특성 공학의 정의

  • 머신러닝 모델을 위한 데이터 테이블의 컬럼을 생성하거나 선택하는 작업을 의미.
  • 모델 성능에 영향을 많이 미치기 때문에 머신러닝 응용에 있어서 굉장히 중요한 단계
  • 전문성과 시간이 많이 드는 작업.

 

 

특징 선택 (Feature Selection)

  • Decision Tree의 경우는 트리의 상단에 있을 수록 중요도가 높음
  • 회귀모델의 경우 forward selection과 backward elimination 같은 알고리즘을 통해 특징을 선택.

 

 

차원 감소

  • 차원감소는 feature extraction : 다시 말해 특징 추출이라는 말로도 불림.
  • 차원 축소는 단순히 데이터의 압축이나 잡음을 제거하는 것만은 아니다.
  • 관측 데이터를 잘 설명할 수 있는 latent space(잠재공간)찾는데 의의가 있다.

 

특징 생성

  • 특징 구축이라고도 하는데, 이 방법을 흔히 Feature Engineering 이라고 한다.
  • 초기에 주어진 데이터로부터 모델링 성능을 높이는 새로운 특성을 만드는 과정
  • 데이터에 대한 분야 전문성을 바탕으로 데이터를 합치거나 쪼개는 작업을 거쳐 새로운 Feature를 만드는 것이다.

 

Feature engineering 처리

  • 브레인스토밍
  • 생성할 특징 결정
  • 특징 생성
  • 모델에서 특징이 어떻게 작동하는지 확인
  • 필요한 경우 특징을 개선

 

 

관점에 따른 Features 분류

  • 비즈니스 기반 특징 : 해결하려는 문제가 있는 현장인 비즈니스 관점에서 데이터를 분석하여 특징을 만들어내는 관점
  • 데이터 기반 특징 : 비즈니스 관점이 없어도 주어진 데이터를 다루는 과정에서 특징을 만들어내는 과정.
  • 실제로는 두 가지 방법이 분리되지 않고 서로 시너지를 만들어낸다.

 

 

 

Feature Engineering 방법의 분류

  • 1. 지표 변수(Indicator Variables)

- 지표가 되는 변수를 만드는 것

- 나이 특징에서 21세 이상일 경우 성인으로 구분하는 feature를 만들 수 있음.

- 부동산 정보의 경우 침실과 화장실의 갯수를 통해 부동산 가치를 판단하는 지표 변수를 만들 수 있음.

 

  • 2. 중복 특징

- 두 개의 특징을 결합하여 새로운 특징을 만드는 방법

- 클릭 수와 접속 수를 결합하여 클릭 당 방문자수와 같은 특징을 만들 수 있음.

- 특징이 늘어나기 때문에 자동으로 이러한 작업을 할 경우 특징이 너무 많아지는 feature explosion이 발생할 수 있음.

 

  • 3. 대표 특징

- 특징들로부터 대표성을 갖는 새로운 특징을 만드는 작업

- 미국의 12학년 제도로 표시되는 데이터가 있을 때 이를 기반으로 초등하교, 중학교, 고등학교와 같이 대표성을 갖는 특징을 만들 수 있음.

 

  • 4. 외부 데이터

- 모델 성능을 높이기 위해 기존의 주어진 데이터 외에 다른 데이터를 활용하는 방법

 

 

  • 5. 에러 분석

- 모델을 통해 나온 결과를 바탕으로 특징을 만드는 방법

 

 

반응형