본문 바로가기

반응형

머신러닝

(12)
[비지도학습] 클러스터링(k-means, GMM, DBSCAN)_차원축소(PCA, SVD)_개념, 정리 비지도학습(Unsupervised Learning) 1. 훈련 샘플의 레이블 정보가 없거나 활용하지 않는 형태의 학습 2. 데이터 내재된 특성과 규칙을 찾아 다음 단계의 데이터 분석을 위한 기초로 다지는 목적 클러스터링(Clustering) 1. 데이터 세트의 샘플들을 교차하지 않는 여러 개의 부분집합으로 분할하는 방법 2. 각각의 부분집합을 클러스터하고 일컬음 3. 각 클러스터는 잠재적인 개념(클래스)에 대응됨 4. 클러스터링 알고리즘은 잠재적인 개념 및 대응 관계에 대한 사전 정보가 없음 1) 클러스터링의 목적 1. 단일로 사용될 경우 데이터 내의 분포 구조를 찾는데 사용될 수 있음 2. 본격적인 분석에 앞서 하나의 사전 절차로 사용될 수 있음 2) 성능 척도 1. 클러스터링 유효성 지표(validi..
[머신러닝] 앙상블(Ensemble) 기법_스태킹(Stacking)_알고리즘 소개(2) Blending Ensemble(혼합 앙상블) 소개 1) 정의: Stacking과 같은 종류의 앙상블로써 메타모델이 홀드아웃데이터(테스트데이터)에 의해 만들어진 예측치로 훈련되는 앙상블 기법 2) 특징 - Stacking에 비해 더 간단한 기법이고, 정보 손실 위험이 더 낮은 특징이 있음 - One Million Dollar Netflix ML Competition에서 알려진 테크닉 - Blending Ensemble과 Stacking 차이 1. blending ensemble: 메타모델이 훈련할 때 홀드아웃 데이터셋에 의해서 만들어진 예측치를 사용 2. stacking: 메타모델이 훈련할 때 k-fold-cv로 인한 out-of-fold 데이터셋에 의해 만들어진 예측치를 사용 3) 혼합 앙상블에서의 단..
[머신러닝] 앙상블(Ensemble) 기법_스태킹(Stacking)_알고리즘 소개(1) Weighted Average Ensemble: 가중 평균 앙상블 소개 1) 앙상블의 일부 모델이 다른 모델보다 더 많은 기술을 지니고 있어 더 많은 기여를 한다고 가정 2) 모델 예측값에 고정 가중치가 할당됨 3) 투표 앙상블의 확장: 모든 모델이 동일하게 학습되고, 앙상블에 의해 만들어진 예측에 비례적 기여를 함 4) 기여도 결정 = 기능 또는 기술에 비례하여 가중치가 부여됨 5) 투표 앙상블에서 모델 예측의 평균 = 가중 평균 앙상블에서 모델의 기여도에 비례하여 계산 6) 모든 모델이 동등하게 효과적이라는 투표 앙상블의 한계를 극복 7) 분류: 각 클래스 레이블에 대한 가중치 합을 계산 / / 회귀: 앙상블 구성원의 예측 산술 평균을 계산하는 방식 Weighted Voting Ensemble 소개 ..
[머신러닝] 앙상블(Ensemble) 기법_스태킹(Stacking)_개념 정리 Stacking Voting Ensemble 1) 정의: 성능을 향상시키기 위해 개별 모델들의 예측치를 합치는 앙상블 기법 2) 종류: • 회귀 문제: 투표 앙상블은 다수의 모델에서 산출된 예측치의 평균을 최종 예측치로 선정 • 분류 문제: 1) Hard Voting: 가장 많은 득표를 한 class를 최종 예측치로 선정 2) Soft Voting: 각 class별로 예측된 확률의 총합을 구해 가장 큰 값을 가진 class를 최종 예측치로 선정 3) 특징: 모델별로 다른 hyperparameter를 가지는 모델들의 예측 결과를 합칠 때 효과적, 2개 이상의 모델들이 예측에 사용될 때 효과적 4) 장점 • 여러 모델의 예측치를 모두 고려하는 것이기 때문에 개별모델의 예측 성능보다 좋을 수 있다. • 투표 ..
[머신러닝] 앙상블(Ensemble) 기법_부스팅(Boosting)_LightGBM Light Gradient Boosted Machine Algorithm(LightGBM) 이란? 1) LightGBM: XGBoost와 비교해 큰 예측 성능 차이를 보이지 않으면서 학습 시간을 상당히 단축시킨 모델 2) 큰 테이블 형태의 데이터가 있을 때 정보의 손실 없이 행과 열을 줄여 문제를 효율적으로 다룬 모델 3) LightGBM의 핵심기술: GOSS – row를 줄이는 방법, EFB – column을 줄이는 방법 Light Gradient Boosted Machine Algorithm(LightGBM) 설명 1)GOSS(Gradient based One Side Sampling): row(obs)를 줄이는 방법 • 모델로 일단 예측한다 -> 실제 값과의 error로 loss를 계산한다 -> L..
[머신러닝] 앙상블(Ensemble) 기법_부스팅(Boosting)_XGBoost Extreme Gradient Boosting Algorithm(XGBoost) 이란? 1) XGBoost • Gradient Boosting에서 한단계 더 나아간 버전 • Gradient Boosting에 비해 더 빠르고 성능이 좋음 • 병렬 학습이 지원됨 2) XGBoost의 장점 • GBM 대비 빠른 수행시간, 과적합 규제(Regularization), • 분류와 회귀에서 뛰어난 예측 성능 발휘 • Early Stopping(조기종료) 기능이 있음 XGBoost Hyperparameter 1) Explore Number of trees 2) Explore Tree Depth: XGBClassifier함수에서 max_depth 인수로 tree의 깊이 설정(default:6) 3) Explore Lea..
[머신러닝] 앙상블(Ensemble) 기법_부스팅(Boosting)_GBM Gradient Boost Ensemble(GBM) 이란? Boosting 방식 • Adaboost와 같이 중요한 데이터에 대해 weight를 주는 방식 • Gradient Boost와 같이 정답지와 오답지간의 차이(residual)를 훈련에서 다시 투입한 후 gradient를 이용해 모델을 개성하는 방식 • Naïve gradient boosting은 greedy algorithm이어서 training dataset에서 overfitting이 쉽게 일어남 • 이는 Regularization 방법이나 algorithm에 penalty를 추가함으로써 개선이 가능하다. • Tree constraint: depth of the trees 나 the number of the trees로 조정 • Weighted..
[머신러닝] 앙상블(Ensemble) 기법_부스팅(Boosting)_Adaboost Adaptive Boost Ensemble(Adaboost) 이란? 1) Adaboost알고리즘은 예측 성능이 조금 낮은 weak classifier를 다량 구축 및 조합하여 가중치 수정을 통해 좀 더 나은 성능을 발휘하는 하나의 strong classifier를 합성하는 방법 2) Boosting: 약한 분류기 여려 개로 강한 분류기 하나를 만드는 방법 3) Adaboost: Adaptive + Boosting • a_m=약한 분류기의 가중치 • G_m (x)=약한 분류기 • M: 반복횟수(iteration) AdaBoost Hyperparameter 1) Explore Number of Trees: AdaBoostClassifier함수에서 ’n_estimators’인수로 tree의 수 설정(기본값: ..

반응형