메뉴 바로가기 검색 및 카테고리 바로가기

한빛미디어

독자리뷰

XGBoost와 사이킷런을 활용한 그레이디언트 부스팅

sua***

|

2022-05-29

XGBoost와 사이킷런을 활용한 그레이디언트 부스팅

데이터 과학자를 위한 머신러닝 모델 XGBoost를 배울 수 있는 도서입니다. 핸즈온 도서이며, 구글 코랩에서 실행도 가능하므로 직접 하나하나 실습하며 익힐 수 있습니다.

  • 저자 : 코리 웨이드
  • 번역 : 박해선
  • 출간 : 2022-04-08

[ XGBoost와 사이킷런을 활용한 그레이디언트 부스팅 ]

  캐글 고수에게 배우는 실전 파이썬 머신러닝

  코리 웨이드 지음

  박해선 옮김

 

photo_2022-05-29_08-32-29.jpg

 

 

XGBoost (Extream Gradient Boosting) 는 각광받고 있는 트리기반 앙상블 부스팅 모델의 알고리즘으로

표 형식 데이터를 활용한 예측에서 가장 뛰어난 머신러닝 알고리즘이라고 합니다. (책 기제)

"XGBoost와 사이킷런을 활용한 그레이디언트 부스팅" 책은 이 그레이디언트 부스팅에 대한 소개와 XGBoost와 사이킷런을 이용한  그레이디언트 부스팅 모델 만드는 방법에 대해 다루고 있습니다.

 

[참고] 그레이디언트 부스팅 (Gradient Boosting) 이란 ?

          앙상블 방법론에는 부스팅과 배깅이 있습니다.

          이중에서 그레이디언트 부스팅은 부스팅의 대표적인 모델로 회귀와 분류에 모두 사용할 수 있는 모델 입니다.

          그레이디언트 부스팅의 변형 모델로 XGBoost, LightGBM, CatBoost가 있습니다.

          "XGBoost와 사이킷런을 활용한 그레이디언트 부스팅" 책 부록에서 LightGBM 과 CatBoost 에 대한 내용도 일부

          다루고 있습니다.

 

누구를 위한 책인가요 ?
책에서는 데이터 과학 전문가, 데이터 분석가, 빅 데이터를 빠르고 정확하게 처리하는 머신러닝 모델을 구축하려는 개발자를 대상으로 한다고 명시되어 있습니다.

 

책을 읽기 위해서 최소한 파이썬에 대해 다룰줄 알고 선형 대수학의 기초를 알고 있으면 도움이 된다고 명시되어 있습니다.


책은 총 1장 ~ 10장 까지로 총 10개의 챕터로 구성되어 있으며,

크게 3개의 Part 로 구성되어 있습니다.

 

Part 1 은 (Chapter 1 ~ 4) 머신러닝에 대한 개요와 예제를 통한 데이터 분석은 이러한 것이다 라는 것을 보여주고 있으며, 결정 트리, 배깅과 랜덤 포레스트에 대한 설명과 예제 그리고 그레이디언트 부스팅에 대한 소개 및 예제를 보여주고 있습니다.  본 Part에서 초보자도 쉽게 접근 할 수 있도록 XGBoost 를 이용한 따라하기 형태로 맛보면서  익숙해 질 수 있도록 이끌어 주는 부분이 좋은 것 같습니다.

 

Part 2 는 (Chapter 5 ~ 7) XGBoost 에 대한 개요 및 기본 모델, 속도 향상, 수학 이론, 일반 프레임워크로써 XGBoost 모델 소개하고, 캐글 대회를 위한 XGBoost 모델을 만들어 보면서 XGBoost 를 사용해 그레이디언트 부스팅의 정확도와 속도를 향상하는 방법과 누락된 값 처리, 희소 행렬, 병렬, 샤딩, 블록킹에 대해 설명합니다.

Chapter 6에서는 XGBoost 하이퍼파라미터에 대한 소개 및 하이퍼파라미터 튜닝을 준비하기 위한 StaratifiedKFold를 사용해 기준 모델을 만들고 GridSearchCV와 RandomizeSearchCV를 사용해 그리드 서치를 수행할 함수 만드는 법에 대해서 설명 합니다.

그리고, Chapter 7 은 XGBoost 분류 모델을 사용한 사례 연구를 다루고 있습니다.

            (XGBoost로 외계 행성 찾기)

 

Part3 는 (Chapter 8 ~ 10) 고급 XGBoost 모델을 구축하기 위한 실험하고 튜닝에 대해 다룹니다.

그리고, 스태킹과 특성 공학을 포함하여 캐글 마스터로 부터 팀과 기법을 배울 수 있으며, 최소 행렬, 사용자 정의 변환기, 파이프라인을 사용하여 제품 개발을 위해 준비된 모델 구축을 연습합니다.

 

각 Part 별로 차근차근 따라가면서 익힐 수 있도록 설명 되어 있습니다.

그리고, Chapter 0 를 통하여 책 초입에 코딩 환경 설정에 대해 설명 하고 있습니다.

 

책은 번역으로만 이뤄지진 않았습니다.

역자 노트란을 두어 알면 좋을 내용이나 부연 설명 등을 추가해 되어 있어서 이해도를 올려 주고 있습니다.

 

photo_2022-05-29_20-49-00.jpg photo_2022-05-29_20-49-09.jpg

 

그리고, [TIP] 블럭을 추가 하여 내용 중간 중간 참고가 필요한 부분에 대해서 설명 하거나 참고 하면 좋을 만한 사이트 URL 등을 알려 줌으로써 효율 적으로 학습 할 수 있도록 도와 주고 있습니다.

 

photo_2022-05-29_20-49-03.jpg

 

결론,

XGBoost 와 사이킷런에 대해서는 처음 접한 입장에서 보면, 초보자가 시작 하기에 너무 좋은 책인것 같습니다.

기본 적인 머신러닝에 대해서 알기 쉽게 그리고 따라하며 이해하기 쉽게 구성되어 있어서 좋았습니다.

완전 초급자 기준에서는 책에 나오는 용어들에 대해서라도 먼저 학습하는 것이 좋을 것 같습니다.

더 많은 모델과 더 고 성능의 알고리즘이나 모델들이 있겠지만, 본 책에서 다루고 있는 모델 및 알고리즘에 대해서 제대로 이해한다면 충분히 초급 단계를 탈출 할 수 있을 것이라 생각됩니다.

이론 부분을 심도있게 모두 담으려 했었다면 오히려 접근하기 더 어려웠을 것이라 생각됩니다. 

그리고, "Chapter 9 캐글 마스터에게 배우기"를 통해서 캐글 대회에 대해서 알게되고, 캐글 대회를 맛볼 수 있는 것도 좋았습니다.

XGBoost 에 대해 처음 접하는 개발자에게 충분히 추천할 만한 책입니다.

 

닫기

해당 상품을 장바구니에 담았습니다.이미 장바구니에 추가된 상품입니다.
장바구니로 이동하시겠습니까?