バギング木

Rで学ぶTree-Based ModelsによるMachine Learning

Sandro Raabe

Data Scientist

多くの頭脳は一つに勝る

群衆の知恵

Rで学ぶTree-Based ModelsによるMachine Learning

ブートストラップと集約

  • バギング = Bootstrap Aggregation の略

 

 1. ブートストラップ

  • 復元抽出でサンプリング → 変更版の訓練データを多数作成

 

 2. アグリゲーション

  • 複数モデルの予測を集約して最終予測にする
    • 回帰: 平均
    • 分類: 多数決
Rで学ぶTree-Based ModelsによるMachine Learning

ステップ1: ブートストラップして学習

ブートストラップの流れ

Rで学ぶTree-Based ModelsによるMachine Learning

ステップ2: 集約

結果を集約

Rで学ぶTree-Based ModelsによるMachine Learning

コード: バギング木を指定

library(baguette)
spec_bagged <- bag_tree() %>%

set_mode("classification") %>%
set_engine("rpart", times = 100)
バギング決定木モデル仕様(分類)

主な引数:
  cost_complexity = 0
  min_n = 2

エンジン固有の引数:
  times = 100

計算エンジン: rpart
Rで学ぶTree-Based ModelsによるMachine Learning

全木を学習

model_bagged <- fit(spec_bagged, formula = still_customer ~ ., data = customers_train)
parsnip モデルオブジェクト

学習時間:  23.9s

バギング CART(分類、100 メンバー)
変数重要度の例: # A tibble: 19 x 4 term value std.error used <chr> <dbl> <dbl> <int> 1 total_trans_ct 876. 3.93 100 2 total_trans_amt 800. 4.54 100 3 total_revolving_bal 491. 3.67 100
Rで学ぶTree-Based ModelsによるMachine Learning

Let's bootstrap!

Rで学ぶTree-Based ModelsによるMachine Learning

Preparing Video For Download...