스태킹 앙상블 스태킹, 배깅(각각의 분류기가 모두 같은 유형, vs. 보팅), 부스팅 모두 개별적인 여러 알고리즘을 서로 결합해 예측 결과 도출 **가장 큰 차이점 = 스태킹은 개별 알고리즘으로 예측한 데이터를 기반으로 다시 예측을 수행한다는 것. = > 개별 알고리즘의 예측 결과 데이터 세트를 최종적인 메타 데이터 세트로 만들어 별도의 ML 알고리즘으로 최종 학습을 수행하고 테스트 데이터를 기반으로 다시 최종 예측을 수행 (개별 모델의 예측된 데이터 세트를 다시 기반으로 하여 학습하고 예측하는 방식을 메타 모델이라함) ** 필요한 두 가지 모델 1) 개별적인 기반 모델 2) 개별 기반 모델의 예측 데이터를 학습 데이터로 만들어서 학습하는 최종 메타 모델 **핵심!! 여러 개별 모델의 예측 데이터를 각각..
목차 1. 베이지안 최적화 2. 언더 샘플링과 오버 샘플링 3. 이상치 데이터 제거 베이지안 최적화 기반의 HyperOpt를 이용한 하이퍼 파라미터 튜닝 Grid Search 단점 하이퍼 파라미터의 개수가 많을 경우 최적화 수행 시간이 오래 걸림 1. 베이지안 최적화 목적 함수 식을 제대로 알 수 없는 블랙 박스 형태의 함수에서 최대 또는 최소 함수 반환 값을 만드는 최적 입력값을 가능한 적은 시도를 통해 빠르고 효과적으로 찾아주는 방식 f 반환 값은 최대/최소로 하는 x,y 값을 찾아내는 것. 함수 식 복잡, 입력값 개수 많거나 범위 넓으면 순차적으로 입력값 대입해서는 짧은 시간 안에 최적 입렵값 찾을 수 X → 베이지안 최적화 베이지안 확률에 기반을 두고 있는 최적화 기법. 베이지안 추론은 ,, 추론..
LightGBM XGB 보다 더 빠른 학습과 예측 수행시간, 더 작은 메모리 사용량, 카테고리형 피처의 자동 변환과 최적 분할(원-핫 인코딩 사용 안하고도 카테고리형 피처를 최적으로 변환하고 이에 따른 노드 분할 수행) Level-wise(균형 트리 분할) vs. Leaf-wise(리프 중심 트리 분할) - 일반 GBM 계열의 트리 분할 방법은 균형 트리 분할. 트리의 깊이를 효과적으로 줄이기 위해! 최대한 균형 잡힌 트리 유지하며 분할하기에 트리의 깊이 최소화 될 수 있음. 오버피팅에 더 강한 구조를 가질 수 있다고 알려져 있어서. but, 균형 맞추기 위한 시간 필요함. - 리프 중심 트리 분할 방식은, 트리의 균형 맞추지 않고, 최대 손실 값(max delta loss)을 가지는 리프 노드를 지속적..
XGBoost GBM의 단점인 느린 수행시간 및 과적합 규제 부재 등의 문제를 해결해서 매우 각광 받는중. -뛰어난 예측 성능, GBM에 비해 빠른 수행시간(병렬수행), 과적합 규제, tree pruning(나무 가지치기)-긍정 이득 없는 분할을 가지치기 해서 분할 수 더 줄임, 자체 내장된 교차 검증(+최적화 되면 반복 중간에 멈출 수 있는 조기중단기능), 결손값 자체 처리, 피처 중요도 시각화(plot_importace) 주요 부스터 파라미터(하이퍼 파라미터) 학습 태스크 파라미터 - eval_metric : 검증에 사용되는 함수. 기본값은 회귀인 경우 rmse, 분류일 경우 error - logloss = negative log likelihood, - objective : 최솟값을 가져야 할 손실..
GBM 부스팅 알고리즘이란? 여러 개의 약한 모델을 순차적으로 학습-예측하면서 잘못 예측한 데이터에 가중치를 부여해 오류를 개선해 나아가는 방식 종류 → AdaBoost, GBM, XGBoost, LGBM AdaBoost = 첫 번째 약한 학습기가 분류 기준 1로 분류. → 이 오류 데이터에 대해 가중치 값 부여, 가중치가 부여된 오류 데이터는 다음 약한 학습기가 더 잘 분류할 수 있게 크기가 커짐. → 두 번째 약한 학습기가 분류 기준 2로 분류 → 잘못 분류된 오류 데이터에 대해 다음 약한 학습기가 잘 분류할 수 있게 더 큰 가중치를 부여함 → 세 번째 약한 학습기가 분류 기준 3로 분류하고 오류 데이터 찾음. 에이다부스트는 이렇게 약한 학습기가 순차적으로 오류 값에 대해 가중치를 부여한 예측 결정 ..
랜덤포레스트 결정 트리를 기본 모델로 이용하는 앙상블 기법 여러 개의 결정 트리 분류기가 전체 데이터에서 배깅 방식으로 각자의 데이터를 샘플링해 개별적으로 학습을 수행한 뒤 최종적으로 모든 분류기가 보팅을 통해 예측 결정을 하게 됨. bootstrapping(샘플을 여러개 뽑음) + aggregating(각 모델을 학습시킨 결과물 집계) +OOB(Out-Of-Bag) : 샘플링 과정에서 선택되지 않은 데이터 → 모델 검증에 이용 가능 → OOB 샘플 (전체의 36.8%)로 모델 검증 어떤 한 샘플이 추출되지 않을 확률 = 36.8% 학습 도중 생성한 tree에 OOB 데이터를 넣고 accuracy나 error rate 등을 측정하면 학습이 잘 진행되고 있는지, overfitting은 없는지 등의 여부를 ..