Machine Learning/머신러닝 완벽가이드 for Python (65) 썸네일형 리스트형 ch4.08 분류실습 _ 산탄데르 고객 만족 예측 XGBoost LightGBM GridsearchCV으로 하이퍼 파라미터 튜닝을 통해서 성능을 올리는 것보다는, 차라리 ★피처 엔지니어링 하는 것이 성능 향상에 더 중요할 때가 많다. 이상치 제거, 표준화 등 중요 0.0.1 데이터 전처리 import numpy as np import pandas as pd import matplotlib.pyplot as plt import matplotlib 1 1. 데이터 확인 cust_df = pd.read_csv("./train_santander.csv", encoding='latin-1') # utf-8-sig를 사용하면 한글이 안깨진다. print('dataset shape:', cust_df.shape) cust_df.head(5) >>> dataset s.. ch 4.07_01 LightGBM(실습) import lightgbm; print(lightgbm.__version__) 0.0.1 LightGBM 적용 – 위스콘신 Breast Cancer Prediction # LightGBM의 파이썬 패키지인 lightgbm에서 LGBMClassifier 임포트 from lightgbm import LGBMClassifier import pandas as pd import numpy as np from sklearn.datasets import load_breast_cancer from sklearn.model_selection import train_test_split 1 1. 데이터 로드 및 확인 dataset = load_breast_cancer() ftr = dataset.data target = .. ch. 4.7 LightGBM LightGBM 개요 XGBoost 대비 상점 더 빠른 학습과 예측 수행시간. 더 작은 메모리 사용량. 카테고리형 피저의 자동 변환과 죄적 분할 (원—핫 인코딩등을 사용하지 않고도 카테고리형 피처를 최적으로 변환하고 이에 따른 노드 분할 수행). LightGBM이 기본적으로는 XGBoost보다 더 빠르다. CPU 코어가128, 256개까지 증가되면 LightGBM 못지 않게 XGBoost도 빠르다. LightGBM 트리 분할 방식 - 리프 중심 LightGBM 파이썬 구현 LightGBM 하이퍼 파라미터 파이썬 래퍼와 사이킷런 래퍼 하이퍼 파라미터 비교 ch.4.6.1 XGBoost(eXtra Gradient Boost)(실습) ! pip install xgboost >>> Collecting xgboost Downloading xgboost-1.6.2-py3-none-win_amd64.whl (125.4 MB) Requirement already satisfied: numpy in c:\users\jin seong eun\anaconda3\lib\site-packages (from xgboost) (1.21.5) Requirement already satisfied: scipy in c:\users\jin seong eun\anaconda3\lib\site-packages (from xgboost) (1.7.3) Installing collected packages: xgboost Successfully installed xg.. ch.4.6 XGBoost XGBoost 개요 XGBoost eXtra Gradient Boost 주요장점 뛰어난 예측 성능 GBM 대비 빠른수행 시간 CPU 병렬 저리 ,GPU 지원 다양한 성능 향상 기능 규제 (Regularization) 기능 탑재 Tree Pruning 다양한편의 기능 조기 중단(Early Stopping) 자제 내장된 교차 검증 결손값 자체 저리 XGBoost 파이썬 구현 XGBoost 파이썬 래퍼와 사이킷런 래퍼 API 비교 래퍼 - 사용하기 쉽게 포장해 놓은 것, API와 유사한 기 XGBoost 파이썬 래퍼와 사이킷런 래퍼 하이퍼 파라미터 비교 트리 부스팅 계열은 하이퍼파라미터 종류가 너무 많아서 튜닝하느라 너무 시간을 보낼 필요는없다. XGBoost 조기 중단기능 (Early Stopping) XG.. ch 4.03_4.05_앙상블, 랜덤포레스트, GBM(실습) 1 4.3 앙상블 학습 개요 1.0.1 Voting Classifier 위스콘신 유방암 데이터 로드 import pandas as pd from sklearn.ensemble import VotingClassifier # 보팅 분류기 from sklearn.linear_model import LogisticRegression # 이진 분류기 from sklearn.neighbors import KNeighborsClassifier # KNN 분류기 from sklearn.datasets import load_breast_cancer # 데이터 불러오기 from sklearn.model_selection import train_test_split from sklearn.metrics import accur.. ch. 4.5 앙상블-부스팅 부스팅 (Boosting) 부스팅 알고리즘은 여러개의 약한 학습기(weak learner) 를 순자적으로 학습-예측하면서 잘못 예측한 데이터에 가중지 부여를 통해 오류를 개선해 나가면서 학습하는 방식입니다. 부스팅의 대표적인 구현은 AdaBoost(Adaptive boosting)와 그래디언트 부스트가 있습니다. 에이다부스팅의 학습/예측 프로세스 -1 오류들에 대해 가중치를 부여하고, 예측 결정 기준을 결합해 예측을 수행함. GBM(Gradient Boost Machine) 개요 ● 경사하강법 : 반복 학습을 통해 모델의 오류를 최소화하는 가중치를 업데이트하는것 GBM(Gradient Boost Machine) 도 에이다부스트와 유사하나, 가중지 업데이트를 경사 하강법(Gradient Descent)을 .. ch.4.4 앙상블 - 배깅 배깅(Bagging) - 랜덤 포레스트(Random Forest) 배깅의 대표적인 알고리즘은 랜덤 포레스트입니다. 랜덤 포레스트는 다재 다능한 알고리즘입니다. 앙상블 알고리즘 중 비교적 빠른 수행 속도를 가지고 있으며, 다양한 영역에서 높은 예측 성능을 보이고 있습니다. 랜덤 포레스트는 여러 개의 결정 트리 분류기가 전체 데이터에서 배깅 방식으로 각자의 데이터를 샘플링해 개별적으로 학습을 수행한 뒤 최종적으로 모든 분류기가 보팅을 통해 예즉 결을 하게 됩니다. 랜덤포레스트의 부트스트래핑 분할 랜덤 포레스트는 개별적인 분류기의 기반 알고리즘은 결정 트리이지만 개별 트리가 학습하는 데이터 세트는 전세 데이터에서 일부가 중첩되게 샘플링된 데이터 세트입니다. 이렇게 여러 개의 데이터 세트를 중첩되게 분리하는 것.. 이전 1 2 3 4 5 6 7 8 9 다음