라즈베리파이반

라즈베리파이 등 컴퓨터계열 게시판입니다.

제목머신러닝(Machine Learning) : 특성선택(Feature Selection)2022-03-30 04:51
작성자user icon Level 4

88x31.png


특성선택(Feature Selection)은 모델을 구성하기위한 특징을 선택하는 과정입니다. 특징의 수가 많을수록 모델의 복잡도는 증가하여 과대적합이 될 가능성이 높아집니다. 그러므로 특성선택을 통해 모델의 복잡도를 감소시켜 모델의 성능을 향상시키고 처리속도를 증가시킬 수 있습니다.


특성선택 알고리즘은 크게 Filter, Wrapper, Embedded 3가지로 구분합니다.


1) Filter Method


Filter는 전처리단에서 통계적 측정 방법을 사용하여 적절한 특징을 선택하는 방식입니다. 


mb-file.php?path=2022%2F03%2F30%2FF4881_1.png
 

특징행렬의 분산을 측정하거나 특징행렬과 대상벡터 사이의 상관관계를 측정하여 특징을 선택합니다. 


상관관계를 측정할때는 t-검정(t-test), 카이제곱 검정(chi-square test), 분산분석(analysis of variance, ANOVA), 상관계수(coreelation coefficient) 등을 이용합니다. t-test나 ANOVA는 대상벡터가 연속형 데이터일때, X2-test는 대상벡터가 범주형 데이터일때 사용합니다.



2) Wrapper Method


wrapper는 특징을 다양하게 조합하여 최적의 학습모델을 생성하는 특징을 선택하는 방식입니다. 


mb-file.php?path=2022%2F03%2F30%2FF4882_2.png
 

가능한 조합을 모두 만들고 조합마다 모델을 만들고 성능을 평가해야하므로 특징이 많으면 시간이 오래 걸립니다.

전진 선택(Forward Selection), 후진 제거(Backward Elimination), 단계별 선택(Stepwise Selection) 등을 통해 특징의 조합이 가능합니다.


전진 선택은 중요도가 높은 특징을 하나씩 추가하는 방식이고, 후진 제거는 모든 특징을 가진 상태에서 시작하여 중요도가 낮은 특징을 하나씩 제거해가는 방식입니다.



3) Embedded Method


embedded는 내장함수를 통해 특징을 선택하는 방식입니다. 학습모델 내부에서 자체적으로 특성선택을 할 수 있습니다. 


mb-file.php?path=2022%2F03%2F30%2FF4883_3.png
 

L1 노름을 통해 제약을 주는 라쏘(LASSO) 모델과 L2 노름을 통해 제약을 주는 리지(Ridge) 모델이 있습니다. 결정트리모델의 지니계수를 통해서도 특성선택을 할 수 있습니다.

#머신러닝# 특성선택# Filter# Wrapper# Embedded
댓글
자동등록방지
(자동등록방지 숫자를 입력해 주세요)