728x90 반응형 SMALL 부스팅7 [Machine Learning] Boosting Methods (3) LightBoost LGBM (Light Gradient Boosting Machine)은 2017년 마이크로소프트에서 처음 출시되었으며 사용자가 선호하는 또 다른 Gradient Boosting 방법이며 의사 결정 트리 기반이다. 다른 방법과의 핵심적인 차이점은 잎을 기준으로 트리를 분할한다는 것이다. 즉, 포인트 촬영에 필요한 단위를 감지하고 중지할 수 있다 (다른 것은 깊이 기반 또는 레벨 기반임). LGBM은 잎 기반이므로 오차를 줄여 정확도와 속도를 높이는 측면에서 매우 효과적인 방법이다. 특수 알고리즘을 사용하여 범주형 데이터를 분할할 수 있지만 열의 문자열 이름 대신 인덱스와 같은 정수 값을 입력해야 한다. import numpy as np from time import time from l.. 2023. 7. 11. [Machine Learning] Boosting Methods (2) XGBoost XGBoost (Extreme Gradient Boost)는 2014년 Tianqi Chen에 의해 처음 개발되었으며 그레디언트 부스트보다 훨씬 빠르기 때문에 선호되는 부스팅 방법이다. XGBoost는 확장 가능하고 매우 정확한 그레디언트 부스팅 구현으로 트리 알고리듬을 강화하기 위한 컴퓨팅 성능의 한계를 푸시하며 주로 기계 학습 모델 성능 및 계산 속도를 활성화하기 위해 구축된다. XGBoost를 사용하면 GBDT와 같이 순차적으로 트리가 아닌 병렬로 구축된다. 그것은 그레디언트 값을 스캔하고 이러한 부분 합계를 사용하여 훈련 세트에서 가능한 모든 분할에서 분할의 품질을 평가하는 level-wise (수준별) 전략을 따른다. 포함된 하이퍼파라미터 덕분에 정규화 하이퍼파라미터가 과적합을 방.. 2023. 7. 11. [Machine Learning] Boosting Methods (1) Boosting Methods 앙상블 학습에서는 여러 학습 알고리즘으로 모델을 가장 성공적으로 훈련시키는 것을 목표로 한다. 앙상블 학습 중 하나인 배깅 방법에서는 동일한 데이터 세트의 서로 다른 하위 샘플에 두 개 이상의 모델을 병렬로 적용했다. 또한, 다른 방법이며 실제로 자주 사용되는 부스팅은 병렬 대신 순차적으로 구축되며 모델 훈련뿐만 아니라 알고리즘 훈련을 목표로 한다. 약한 알고리즘은 모델을 훈련시킨 다음 훈련 결과에 따라 재구성되고 학습하기 쉬워진다. 이 수정된 모델은 다음 알고리즘으로 전송되고 두 번째 알고리즘은 첫 번째 알고리즘보다 쉽게 학습된다. AdaBoost Adaptive Boost (Adaboost)는 의사 결정 나무에 기반한 분계점이 할당되고 분계점에 따라 예측이 이루어진다. .. 2023. 7. 11. [Machine Learning] 앙상블 (Ensemble) 앙상블 (Ensemble) 여러 개의 알고리즘들이 이용하여 하나의 값을 예측하는 기법을 통칭하며, 대중적인 데이터 분석 알고리즘이다. 선형 회귀나 로지스틱 회귀는 가장 대중적인 알고리즘이고, 그 다음이 의사결정 트리와 앙상블 계열 알고리즘이다. 최근 머신/딥러닝 분야에서 딥러닝 다음으로 부스팅 (boosting) 알고리즘이 핵심적으로 사용된다. 메타 분류기 (meta-classifier)라고도 부른다. 메타 (meta)는 일종의 상위 또는 추상화라는 개념이다. 여러 분류기들을 모아 하나의 분류기를 만들어 이를 메타 분류기라고 부른다. 시간이 많이 소요되지만 비교적 좋은 성능을 낸다. 하나의 데이터를 넣고 이를 여러 모델에 학습시킨다. 테스트 데이터를 각 모델에 입력하고 투표 또는 여러 가중치 기법을 적용.. 2022. 10. 4. [LightGBM] 매개변수 조정 (Parameters Tuning) (2) Grow Less Trees 모델에 트리 노드를 추가하는 데 필요한 시간을 줄여 학습 시간을 더욱 줄일 수 있다. 아래는 훈련 속도를 높이지만 훈련 정확도를 떨어뜨릴 수 있다. Decrease num_iterations 매개변수 num_iterations는 수행할 부스팅 라운드 수를 제어한다. LightGBM은 의사결정 트리를 학습자로 사용하기 때문에 "트리의 수"로 생각할 수도 있다. num_iterations을 변경하려고 하면 learning_rate도 바꾼다. learning_rate는 훈련 시간에는 영향을 미치지 않지만 훈련 정확도에는 영향을 미친다. 일반적으로 num_iterations를 줄이면 learning_rate을 늘려야 한다. num_iterations와 learning_rate의 올바.. 2022. 7. 4. [Data Science] 앙상블 분석 앙상블 분석 주어진 자료로부터 여러 개의 예측모형들을 만든 후 예측모형들을 조합하여 하나의 최종 예측 모형을 만드는 방법 다중모델조합, 분류기조합이 있음 훈련을 한 뒤 예측을 하는데 사용하므로 지도학습 학습방법의 불안전성 학습자료의 작은 변화에 의해 예측모형이 크게 변하는 경우 그 학습방법은 불안정 안정적인 방법 1-nearest neighbor 선형회귀모형 불안정적인 방법 의사결정모형 앙상블 기법의 종류 1. 배깅 주어진 자료에서 여러 개의 붓스트랩 자료를 생성하고 각 붓스트랩 자료에 예측모형을 만든 후 결합하여 최종 예측 모형을 만드는 방법 배깅은 반복추출 방법을 사용하기 때문에 같은 데이터가 한 표본에 여러번 추출될 수 있고, 어떤 데이터는 추출되지 않을 수도 있음 배깅은 가지치기를 하지 않고 최대.. 2022. 3. 8. 13. 랜덤 포레스트 (Random Forest) / 에이다부스트 (AdaBoost) 부스팅 (Boosting) 여러 개의 분류기가 순차적으로 학습 수행, 다음 분류기에게는 가중치 (weight)를 부여하면서 학습, 예측 진행한다. 예측 성능이 뛰어나 앙상블 학습을 주도한다. 학습 라운드를 차례로 진행하면서 각 예측이 틀린 데이터에 점점 가중치를 주는 방식이다. 라운드별로 잘못 분류된 데이터를 좀 더 잘 분류하는 모델로 만들어 최종 적으로 모델들의 앙상블을 만드는 방식으로 배깅 알고리즘이 처음 성능을 측정하기 위한 기준 (baseline) 알고리즘으로 많이 사용 된다면, 부스팅 알고리즘은 높은 성능을 내야 하는 상황에서 가장 좋은 선택지이다. 첫 번째 라운드 결과 모델에서 어떤 점은 오차가 큰 부분이다. 두 번째 라운드에서 오답으로 분류된 어떤 점에 가중치를 줘 학습한다. 다시 오류가 큰.. 2021. 12. 22. 이전 1 다음 728x90 반응형 LIST