Acdong
Learn by doing
Acdong
전체 방문자
오늘
어제
  • 분류 전체보기
    • Economy
      • Saving Money
    • Self-improvement
    • Thoughts
    • Machine learning
      • Deep Learning
      • Chatbot
      • NLP
    • MLops
      • AWS
      • Container
      • Serving
    • Computer Vision
    • Data Science
      • ADsP
      • R
    • Project
    • Python
      • Data Structure & Algorithm
    • C,C++
    • API
      • ElasticSearch
    • Error Note
    • Network
    • RDBMS
      • SQL

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

  • [GitHub]

인기 글

태그

  • 포인터
  • Python
  • c포인터
  • pandas
  • plot()
  • 존댓말 반말 분류
  • Numpy
  • SentenceTransformer
  • R그래프
  • 어텐션
  • 머신러닝
  • R
  • 이미지 전처리
  • 회귀계수
  • 데이터 전처리
  • 다중공선성
  • nlp
  • sbert
  • R시각화
  • 기계학습

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
Acdong

Learn by doing

[기계학습] 변수 선택법 ( Feedforward Selection , Backward Elimination , Stepwise)
Machine learning

[기계학습] 변수 선택법 ( Feedforward Selection , Backward Elimination , Stepwise)

2020. 6. 16. 00:19
728x90

Machine Learning 기계학습 머신러닝

 

변수 선택법(모델 선택)

  • 변수가 여러 개 일 때 최선의 변수 조합을 찾아내는 기법
  • 변수의 수가 p개일 때 변수의 총 조합은 2^p 으로 변수 수가 증가함에 따라 변수 조합의 수는 기하급수적으로 증가
  • 총 변수들의 조합 중 최선의 조합을 찾기 위한 차선의 방법

* 변수가 많다고 무조건 좋은 것은 아님 적합성이 높은 중요한 변수를 조합하는 것이 중요하다.


전진선택법 (Feedforward Selection)

변수를 추가해가며 성능지표를 비교해가는 방법

AIC 혹은 BIC 기준으로 성능을 비교해가며 변수를 추가할지 말지 선택하는 방법

AIC가 가장 낮은 모델을 선택한다.

 

 

x3의 변수를 추가하자 성능이 나빠지기 때문에 x3는 추가하지 않고 x2 까지만 선택한다.

 


후진제거법 (Backward Elimination)

전진선택법의 반대의 개념으로 변수를 제거해가며 성능지표를 비교해가는 방법

x4를 제거하니까 성능이 좋아지고 x3를 제거 하니까 성능이 낮아져서 x3는 제거하지 않고 모델은 선택

 


단계별선택(Stepwise)    Back + Forward

  • 가장 유의한 변수를 추가하거나 유의하지 않는 변수를 제거해나가는 방법
  • 전진선택법을 사용할 때 한 변수가 선택되면 이미 선택된 변수 중 중요하지 않은 변수가 있을 수 있음
  • 전진선택법의 각 단계에서 이미 선택된 변수들의 중요도를 다시 검사하여 중요하지 않은 변수를 제거하는 방법
  • 일반적으로 가장 널리 쓰이는 방법

    1. 변수 입력/제거를 위한 p-value 임계치 설정
    2. Forward selection을 통한 변수 선정
    3. 선택된 변수 중 유의미한 변수를 남기고 제거 , 2-3반복
    4. 변수가 추가되거나 제거할 케이가 없는 경우 종료

일반적으로 Forward selection 방식과 결과가 유사하게 나타난다.

 

Stepwise ,Feedforward Selection Backward Elimination
정말 필요한 변수 10개만 쓰고 싶을 때 쓸모없는 변수 3개만 빼고 다 사용하고 싶을 때

 

변수선택법 Python 예제 실습

2020/06/18 - [Data Science/Machine learning] - [Machine Learning] 변수 선택법 알고리즘( Python Code - 파이썬 예제 )

 

[Machine Learning] 변수 선택법 알고리즘( Python Code - 파이썬 예제 )

#변수 선택법 def processSubset(x,y, feature_set):     model = sm.OLS(y,x[list(feature_set)])  #modeling     regr = model.fit()  #모델학습     AIC = regr.aic    #모델의 ..

acdongpgm.tistory.com

 

반응형
저작자표시 비영리 (새창열림)

'Machine learning' 카테고리의 다른 글

[기계학습]회귀분석의 진단 ( nomal Q-Q plot ,Residual vs Fitted, Residuals 산점도 )  (0) 2020.06.16
[기계학습] 교호작용(Interaction term) 이란?  (0) 2020.06.16
[기계학습]모형의 성능 지표 ( MSE , MAPE , 정확도,정밀도,재현율,특이도 , F1 measure , ROC Curve)  (1) 2020.06.15
[기계학습]다중공선성 , 회귀모델의 성능지표 ( AIC , BIC )  (0) 2020.06.12
[기계학습] 다중 선형 회귀 분석 ( 회귀 계수 , 모델에 대한 검정 )  (0) 2020.06.11
    'Machine learning' 카테고리의 다른 글
    • [기계학습]회귀분석의 진단 ( nomal Q-Q plot ,Residual vs Fitted, Residuals 산점도 )
    • [기계학습] 교호작용(Interaction term) 이란?
    • [기계학습]모형의 성능 지표 ( MSE , MAPE , 정확도,정밀도,재현율,특이도 , F1 measure , ROC Curve)
    • [기계학습]다중공선성 , 회귀모델의 성능지표 ( AIC , BIC )
    Acdong
    Acdong
    E-mail : alswhddh@naver.com / 자연어처리와 MLops 를 연구하고 있는 스타트업 개발자입니다.

    티스토리툴바