인공지능(AI)

classifier model- 앙상블

sysman 2020. 11. 3. 13:06

* diceision tree  문제점

 - overfitting 

 - 학습데이터에만 최적화

 - max_depth : 깊이를 조절

 - gini : 불순도, (불순도 0이 될 때까지 계속 분기)

 - gini 계수, 엔트로피

 - 컬럼이 많아지면 속도 느려짐

 - max_features : 피쳐 갯수를 조절

 

* 앙상블 모델

 - voting : 동일한 데이터셋으로 서로 다른 알고리즘 결합, 다수결로 'a'일 것이다

- bagging : sampling을 통해 여러개의 데이터셋 추출 (bootstrapping 분할 방식) 디시젼 트리를 반복결합

               sampling 중복 허용해서 뽑음

              예측 후 다수결로 'a'일 것이다라고 뽑음.

- boosting : 여러개의 디시젼 트리모델을 춘차적으로 학습 진행

                앞서 학습한 모델이 틀리게 예측한 데이터에 대해서 다음 모델에서 가중치를 부여하여 학습

                단점은 너무 느리다.(다른 보팅, 배깅은 병렬처리가 가능한데 부스팅은 순차적으로 처리해야 하기 때문에 순차적으로 처리해야함)

 

*보팅 유형

 - hard voting : 다수결처럼 다수의 모델 예측한 결과를 최종 결과로 선정

 - soft voting : 일반적으로 사용하는 voting방법

 - 각 모델 클래스 별 평균내어 가장 높은 확율을 정함.

 

*boosting 모델

 - 여러개 디시전 트리를 weak learner로 이용해 순차적 학습-예측 진행

   error에 대해 가중치 부여 전체 모델 에러를 줄여 나가는 방식

 - XGBoost : 성능 향상 기법, GBM대비 빠른시간, 높은 예측, 규제 및 트리 푸르닝 지원, 얼리스탑(이미 최적 모델링이 나왔으면 수천번 돌리지 않고 그냥 거기서 stop시킴), (, 원래는 C/C++ 만들었지만 파이썬으로 Wrapper개발 및 sckit learn Wrapper로 만듬, xgbm은 균형 트리를 맞춰가려지만 lightgbm은 그런것없이 비균형 트리로 두는 특징

 - LightGBM(Light gradient Boosting Model) : XGBoost 보다 빠른 성능 , XGBoost대비 적은  컴퓨팅 자원 사용

-  Adaboosting(adaptive boosting) : 여러개의 분류안된 모델을 합쳐서 사용

 

우리의 일 : 데이터 얼마나 준비하고 잘 정리를 할 것인지.. , 이미 공식,사용 모델식들은 다 정해져 있음.

 

탐색적 데이터 분석 :  데이터가 어떤 구조로 이루어져 있고 어떤 변수들이 존재하는지 등 데이터에 대한 탐색을 뜻함.

데이터 크기, 변수, 데이터 타입, 기초 통계, 시각화를 통해서 데이터를 탐색, 확인을 할 수 있으며 EDA를 통해서 Data Pre-processing(데이터 전처리), Feature engineering(피쳐 엔지니어링) 방향성을 잡아야 한다.

'인공지능(AI)' 카테고리의 다른 글

RNN(Recurrent Neural network), LSTM  (0) 2020.11.03
Deep Learning (딥러닝)  (0) 2020.11.03
Supervised - Softmax Regression  (0) 2020.10.21
epochs, batch size, iteration  (0) 2020.10.20
Supervised - Random Forest  (0) 2020.10.20