機械学習 チュートリアル
XGBoost

XGBoostの基本的な使い方や勾配ブースティングの仕組みを徹底解説

中級者対象
受講人数 311名 | 学習期間目安 1日 〜 5日
★★★★★  5.0 (2件)

icon-check 対象:中級者 icon-check 環境:オンライン / ローカル
icon-check 受講期限:無制限 icon-check 受講料金:850円

コース概要

  • ブラウザとインターネットで実行可能(Google Colab対応)
  • Jupyter Notebookを利用したプログラミング演習
  • XGBoostの概要
  • 勾配ブースティングの仕組み
  • Pythonで勾配ブースティングをスクラッチからコーディング
  • XGBoostの基本操作
  • XGBoostとハイパーパラメータ
  • XGBoostとその他の手法の比較

本コースで学べる内容

機械学習に携わっている方なら、一度は耳にしたことがある「Kaggle」。データセットが与えられ、同じ条件で予測の精度を競うデータ分析競技(コンペ)が人気です。コンペ終了後に上位入賞者がデータ分析手法などを公開する事も少なくありません。

そんなKaggleでここ近年、上位入賞者がこぞって使っている機械学習手法があります。それが「XGBoost」です。一概に機械学習の手法やアルゴリズムに優劣をつけることは出来ませんが、XGBoostはその柔軟性と予測精度の高さから、世界トップクラスのデーターサイエンティストが駆使する手法の一つです。

XGBoostとは「決定木を用いた勾配ブースティングのフレームワーク」です。勾配ブースティングとはアンサンブル学習の一種です。アンサンブル学習とは複数のモデルを構築して、最終的に一つにまとめる手法をさします。本コースの前半ではXGBoostの概要に加えて、Pythonを使ってスクラッチで勾配ブースティングのコーディングを行い、XGBoostの仕組みの理解を深めます。

コース中盤はXGBoostの基本的な操作方法を学びます。 機械学習の初学者向けのデータ「アイリス・データセット」を使い、アイリス(あやめ)の品種分類をXGBoostで行います。基本操作方法としてXGBoostの学習API(Learning API)とScikit-Learn APIの2種類の操作方法を学びます。

コース後半はXGBoostのハイパーパラメータチューニングを中心に行います。XGBoostには多数のハイパーパラメータが存在します。XGBoostの主要なハイパーパラメータの意味、さらにScikit-learnのGridSearchCVを使ったチューニングを行います。最終チャプターでは同じデータセットを使いXGBoostと他の機械学習手法を比較します。

初めて機械学習の手法を学ぶ方へ

本コースでは機械学習およびPythonライブラリの基礎知識が必要です。コース内で下記の項目の解説は含まれませんのでご注意ください。コース受講の目安として、Scikit-learnの初歩的な操作方法が行える方であればスムーズにご受講可能です。

  • PythonおよびNumpy、Pandas、Matplotlibの基本操作方法
  • Scikit-learnの基本操作方法
  • 機械学習の基礎知識(特徴量やモデルなど)
  • 評価指標(混同行列や精度・再現率など)

初めて機械学習の手法を学ぶ方は下記の講座を先に受講されることをお勧めします。

コースの特徴

ブラウザとインターネットで実行が可能

Google Colab(グーグル・コラボ)を利用することにより、特別な環境構築やインストールなどの作業を行うことなく、ブラウザのみで実行が可能です。チュートリアルでは、Google Colabの基本的な使い方、また自身のPCに環境構築を行う方法の詳細を説明しています。

実践に役立つ知識

  • アンサンブル学習の基本概要
  • 勾配ブースティングの概要
  • スクラッチで勾配ブースティングのコーディング
  • XGBoostの基本操作方法
  • XGBoostのハイパーパラメータ
  • データの可視化(箱ひげプロット)
  • XGBoostと他の手法との比較

受講資格

icon-check (必須)Pythonの基礎知識

icon-check (必須)機械学習の初歩的な知識

icon-check (必須)線形代数及び統計の初歩的な知識

icon-check (必須)Numpy、Pandas、Matplotlibの初歩的な知識

原則として、Python及び機械学習の初歩的な知識が前提となっています。初めて機械学習に挑む方は下記の「機械学習 準備編」の無料コースをご参照下さい。また、本チュートリアルではKaggleの無料会員登録が必要です。(参考:Kaggleとは?

コース詳細

機械学習 チュートリアル ナイーブベイズ
  Chapter 1 環境構築
 icon-cog 【Windows編】Minicondaを利用した環境構築 約2,200文字
 icon-cog 【Mac】Minicondaを利用した環境構築 約1,900文字
 icon-cog Google Colabを利用した環境構築 約2,100文字
  Chapter 2 XGBoostと勾配ブースティング
 icon-pencil XGBoostとは 700文字
 icon-pencil アンサンブル学習 2,700文字
 icon-pencil 勾配ブースティングとは 3,600文字
 icon-code 勾配ブースティングをコーディング 245行
  Chapter 3 XGBoostの基本操作
 icon-pencil データセットについて 600文字
 icon-code ライブラリとデータの読み込み 30行
 icon-code モデル訓練と評価 40行
 icon-code Scikit-learn API 12行
  Chapter 4 XGBoostとハイパーパラメータ
 icon-pencil 問題提起とデータ 1,400文字
 icon-code ライブラリとデータの読み込み 25行
 icon-code 探索的データ解析(EDA) 8行
 icon-code ベースラインモデルの訓練 15行
 icon-pencil ハイパーパラメータチューニングとは 3,400文字
 icon-code GridSearchCV 90行
 icon-code 最適なハイパーパラメータを使って再評価 15行
  Chapter 5 XGBoostとその他の手法の比較
 icon-pencil 問題提起とデータ 1,200文字
 icon-code ライブラリとデータの読み込み 20行
 icon-code 探索的データ解析(EDA) 25行
 icon-code 機械学習手法を比較 55行

レビュー

icon-user web系のエンジニアでPythonは1年強やってます。Kaggleをやるようになり、xgboostをより詳しく知りたいけど原文は読むのは大変なので試しにコースを購入しました。結果として・・とても良かったです!大変丁寧に解説されていますし、何より勾配ブースティングの仕組みがよく理解できました。他のコースも受講してみます。

icon-check-circle-o 講師からの返答
フィードバックありがとうございます!引き続き良質な無料コースとチュートリアルを公開できるようチーム一丸となって邁進していきます!

icon-user qiitaなどでXGBoostが断片的に説明されている中、網羅的にXGBoostが解説されており、とても役に立ちました。専門用語を並べた専門書とは違い、コードがメインで助かります。値段以上の価値あり!

講師紹介

codexa ロゴ

本コース「XGBoost 徹底入門」はcodexa(コデクサ)の機械学習エンジニアチームにて製作・監修を行いました。アメリカでデータ分析の実績を積んだデータサイエンティストから、Webエンジニアから機械学習エンジニアへ転向をした人まで幅広い層が所属しています。上級者の一方的な講義ではなく、「初心者がいかに理解しやすいか」を目標としています。日経ソフトウェアへの記事執筆(2019年1月号)。

このコースを取っている方は次のコースも取っています