티스토리 뷰

반응형

목표

특성 선택의 정의 및 목적을 설명할 수 있다.

특징 선택의 방안을 3가지로 구분할 수 있다.

 

 

특징 선택(Featrue Selection)

가장 좋은 성능을 보여줄 수 있는 데이터의 부분 집합(Subset)을 찾아내는 방법

모델 생성에 밀접한 데이터의 부분 집합을 선택하여 연산 효율성 및 모델 성능을 확보

 

피처 엔지니어링의 주요 토픽이면서 많이 활용되는 기법

 

목적 및 필요성

 

연산효율성

특징 생성과는 다르게 원 데이터 공간 내 유의미한 특징을 선택하는 기법

연산 효율 및 적절한 특징을 찾기 위해서 수행한다.

 

원본 데이터에서 가장 유용한 특징만을 선택하여 간단한 모델 구성 및 성능 확보가 목적

 

특징 선택 방안

 

필터

  • 특징들에 대한 통계적 점수를 부여하여 순위를 매기고 선택하는 방법론
  • 실행속도가 빠르다는 측면에서 시간 및 비용 측면의 장점을 보인다

래퍼

  • 특징들의 모든 조합을 지도학습 기반 알고리즘에 반복적으로 적응하여 특징을 선택하는 방법론
  • 최적의 데이터 조합을 찾기 때문에 성능 관점상 유용하나 시간과 비용 크게 발생
  • 그러나 조합을 모두 고려하기 때문에 예측이나 성능 관점에서 필터보다 좋다

임베디드

  • 모델 정확도에 기여하는 특징들을 선택하는 방법으로 Filter와 Wrapper의 장점을 결합한 방법
  • 적용하는 모델 정확도에 기여하는 특징들을 선택해서 해당 조합의 결과로 도출한다
  • 모델의 학습 및 생성과정에서 최적의 특징을 선택하는 방법
  • 모델 자체에 변수 선택을 할 수 있는 알고리즘들이 적용된다.

 

필터 방식

특징들에 대한 통계적 기법 기반의 점수 및 순위 부여하여 선택

전체 집합에서 변수별 유의미한 관계들을 보이는 특징들을 판단하고 선택하는 방안

변수별 통계적 유의미성을 검증하고 특징으로 도출하기 떄문에 굉장히 빠르다.

 

래퍼를 적용하기 전 적용하기도 한다

 

카이제곱 필터(Chi-Square) 

  • 범주형인 독립 및 종속 변수간의 유미의성을 도출하기 위한 통계적 방안
  • 연속형 변수를 이산화(범주)를 하여 활용가능
  • ex) 가장 높은 순위 2개의 Feature 선택

 

상관관계 필터(Correlation filter)

 

단순히 통계적 관계가 높다고 해서 그 변수가 해당 모델에 적합한 변수라고는 할 수 없다.

따라서, 전처리 단에서 주로 사용할 수 있는 기법이기도 하면서, 통계 기법 등을 사용해서 상관관계가 높거나 관계가 높은 변수들을 우선 추출하는 방안으로 활용

 

  • 연속형인 독립 및 종속변수 간 유의미성을 도출하기 위한 통계적 방안
  • 보통 임계치(theshold) 설정하여 변수 선택

 

래퍼 방식

성능 관점에서 유용한 방안

원본 데이터 내 변수 간 최적의 조합을 도출한다.

 

원본 데이터 내 변수 간 조합을 탐색하여 특징 선택

 

반복적 특징 조합 탐색

  • 원본 데이터셋 내 변수들의 다양한 조합을 모델에 적용하는 방식
  • 최적의 부분 데이터집합(Subsset)을 도출하는 방법론
  • 대표적 방식으로 재귀적 특성 제거(Recursive Feature Elimination) - 전체 데이터 셋에서 하나씩 유의미하지 않은 데이터 셋을 제거한다.
  • 모델의 성능이 높지만, 알고리즘 방식의 완성도가 높아야 한다. 변수가 없는 상태에서 하나씩 추가해 가는 방법, 제거해 가는 방법 등이 있다.

 

 

임베디드 방식

 

각 특징들의 중요도, 가중치 등을 평가할 수 있는 모델이 선택이 되어야 하고,

래퍼와 같이 해당 모델들의 각 파라미터와 알고리즘 자체 완성도가 높아야 한다는 측면을 가지고 있다.

 

모델을 학습하여 정확도에 기여하는 특징을 선택하는 방안

  • 알고리즘 내 자체 내장 함수로 특징을 선택하는 방식으로, 모델 성능에 기여하는 특징을 도출.
  • 모든 조합을 고려하고, 결과를 도출하는 래퍼와 달리 학습과정에서 최적화된 변수를 선택
  • 트리 계열 모델 기반의 특징 선택이 대표적(랜덤포레스트 기반 Feature Importance 기반)

 

특징 선택 알고리즘

랜덤포레스트 모형 기반의 알고리즘

 

보루타 알고리즘(Boruta Algorithm)

  • 기존 데이터를 복원 추출해 만든 랜덤 변수, 새도우보다 모형 형성에 영향을 주지 못했다고 하면 가치가 크지 않은 변수로 인식해 제거하는 방법
  • 보루타 알고리즘은 기존 데이터를 임의로 복제하여 랜덤 변수(shadow) 생성하고 원 자료와 결합하여 랜덤 포레스트 모형에 적용
  • Shadow 보다 중요도가 낮을 경우 중요하지 않은 변수로 판단 후 제거
  • Shadow 변수는 원본데이터로 만들어진 진짜 무작위성 변수이다. 즉, 랜덤하게 생성된 변수보다 높을 것이라는 것으로 접근하는 게 핵심

 

 

 

반응형