アンサンブル学習(スタッキング・ブレンディング)

バギング・ブースティングに加えて、Kaggle上位の常套手段スタッキングとブレンディングを理解します。

複数モデルを組み合わせて精度を上げるアンサンブル学習。 バギング・ブースティングに加えてスタッキングを学びます。

胡桃 あんず(普段) 胡桃 あんず

前にバギングとブースティングって学んだよね。 他にも組み合わせの手法ってあるの?

若葉 みどり 先生(笑顔) 若葉 みどり 先生

あるわよ。 大きな3手法がバギング・ブースティング・スタッキングね。 さらに簡略版のブレンディングもあるのよ。

白銀 ゆき(普段) 白銀 ゆき

スタッキングは『複数の異なる弱学習器の予測値を、メタ学習器(別のモデル)が統合する』2段構造のアンサンブル。 各層の役割が違うのが特徴。

桜井 もも(普段) 桜井 もも

うぅ〜ん…層が2つもあるのぉ?

白銀 ゆき(普段) 白銀 ゆき

Level-0(ベース層): ロジスティック回帰・決定木・SVM・LightGBM 等の異種モデル群が予測。 Level-1(メタ層): その予測値を入力として、最終的な予測を出すモデル(通常シンプルな線形回帰やロジスティック回帰)。

胡桃 あんず(普段) 胡桃 あんず

なんでわざわざ違う種類のモデルを混ぜるの?

若葉 みどり 先生(普段) 若葉 みどり 先生

各モデルが異なる弱点を持つので、組み合わせで弱点を補い合う多様性効果が得られるから。 同じモデルを並列にしても効果は薄い。

白銀 ゆき(普段) 白銀 ゆき

ブレンディングはスタッキングの簡略版。 訓練データを更に分割して、片方でベース層、もう片方でメタ層を学習する。 シンプルだがホールドアウト分のデータが減るデメリットあり。

桜井 もも(普段) 桜井 もも

これってKaggleで使われるのぉ?

若葉 みどり 先生(普段) 若葉 みどり 先生

そうそう、Kaggle上位陣はスタッキングをほぼ必ず使うわ。 単一モデルで90%精度の問題でも、スタッキング・ブレンディングを駆使すれば92〜93%まで伸びることも珍しくないのよ。

胡桃 あんず(普段) 胡桃 あんず

実務では?

白銀 ゆき(普段) 白銀 ゆき

実務では運用コストとのトレードオフですね。 ベースライン+LightGBM単体で十分な精度なら、わざわざスタッキングしない選択も賢明です。 Kaggleのトリックではありますが、DS検定★では概念を押さえれば十分ですよ。

白銀 ゆき(普段) 白銀 ゆき

DS検定★では『3手法の違い』『スタッキングは異種モデル+メタ学習器』を押さえて。

確認クイズ

スタッキングの説明として最も正しいのはどれか。

  1. 同じ決定木をたくさん並列に並べる
  2. 弱学習器を逐次追加して誤差を補正する
  3. 異種のベース学習器の予測を、メタ学習器が統合する2段構造
  4. 全データを使って1モデルだけ学習する
こたえを見る

正解: 3. 異種のベース学習器の予測を、メタ学習器が統合する2段構造

異種のベース学習器の予測を、メタ学習器が統合する2段構造がスタッキングの特徴。並列同種=バギング、逐次=ブースティングと区別しましょう。

桜井もものイラスト。大きなぬいぐるみをぎゅっとして

この記事の関連書籍

Amazonアソシエイトリンクを含みます。他分野は おすすめ書籍ページ へ。

この記事について

データサイエンティスト検定スタディが作成した教材です。運営について・記事の作り方

試験についてはこちらをご覧ください: データサイエンティスト協会 公式サイト

この記事を共有