Lecture 17: Classification Models - Decision Trees, Ensembles (Random Forest/LightGBM/XGBoost), SVM, and Logistic Regression
分類モデルの基礎とアプローチ別比較:決定木系・SVM・ロジスティック回帰
今回のテーマ
前回の第十六講では、回帰分析を軸に「連続値を予測する」機械学習を学びました。
今回はその対になる重要テーマとして、カテゴリを予測する「分類」を扱います。
分類手法はアルゴリズムの仕組みによっていくつかの系統に分かれます。本講では、実務で頻出する代表手法を3つの系統(アプローチ)に整理して解説します。
- 木構造・アンサンブル系(決定木ファミリー): 決定木 / ランダムフォレスト / XGBoost・LightGBM
- 線形・確率モデル: ロジスティック回帰
- マージン最大化・カーネルモデル: SVM(Support Vector Machine)
各手法の仕組み、得意・不得意、ハイパーパラメータ、そして実務におけるモデル選定の進め方を押さえましょう。
1. 分類問題の基礎:何を予測するのか?
機械学習における分類とは、入力データをあらかじめ定義したクラスに振り分けるタスクです。
たとえば以下のような問題が分類にあたります。
- メールが「スパム」か「通常」か
- 医療データから「疾患あり」か「疾患なし」か
- 顧客が「解約する」か「継続する」か
前回の回帰との違いは、予測対象が連続値ではなく離散ラベルである点です。
💡 コラム:分類モデルは「回帰(数値予測)」にも使える?
本講で紹介する「決定木」「ランダムフォレスト」「LightGBM / XGBoost」「SVM」といった手法は、出力の計算ロジック(末端での多数決を「平均値」等に変更)を切り替えることで、そのまま回帰分析(連続値の予測)にも応用可能です(例:DecisionTreeRegressor,SVRなど)。実務のテーブルデータ分析でも、回帰・分類を問わず主役として活用されています。
2. 分類モデルの3大アプローチと特徴
アプローチ①:木構造・アンサンブル系(決定木ファミリー)
実務のテーブルデータ分類において最も強力なモデル群です。単一の決定木からアンサンブル(バギング・ブースティング)への発展を押さえるのがポイントです。
1. 決定木(Decision Tree)
特徴量に対する「条件分岐(IF-THEN)」を繰り返し、データを分類する基本モデルです。
【コラム】単一の木を超える「アンサンブル学習」とは?
単一の決定木は構造がシンプルな反面、過学習しやすく精度の限界があります。そこで実務で用いられるのが、複数のモデル(弱学習器)を組み合わせて高い予測性能を引き出す「アンサンブル学習(Ensemble Learning)」です。

「三人寄れば文殊の知恵」のように、複数のモデルを組み合わせることで個々の誤差を相殺します。主な手法として以下の代表的な3つのアプローチがあります。
-
バギング(Bagging: Bootstrap Aggregating)
データをランダムに抽出して複数の木を並列に学習させ、結果の多数決(平均)を取る手法。(例:ランダムフォレスト) -
ブースティング(Boosting)
前の木の予測誤差を次の木が学習するように、直列・段階的に木を追加して精度を高める手法。(例:XGBoost, LightGBM) -
スタッキング(Stacking)
得意分野の違う複数のモデルの予測結果を、さらに別のモデルで「まとめて最終判断」する手法。
2. ランダムフォレスト(Random Forest)【バギング】
多数の決定木を並列に構築し、データや特徴量のランダムサンプリングと「多数決」で結果を統合するモデルです。
- 長所: 単一決定木より過学習に強く、初期設定でも安定して高い精度が出やすい
- 短所: 決定木の数が増えると計算量が重くなり、単一木ほどの直感的な説明性は失われる
3. 勾配ブースティング木:XGBoost / LightGBM【ブースティング】
直前の木の予測誤差を次の木が補正するように、段階的に木を追加・更新していく現在実務の決定版手法です。
- XGBoost: 厳密な木構築と正則化により、高い汎化性能と安定性を誇る定番アルゴリズム
- LightGBM: 葉単位(Leaf-wise)で成長させることで、圧倒的な高速化と省メモリ化を実現した手法
- 長所: テーブルデータ(構造化データ)の分類において最高峰の予測精度を発揮する
-
短所: ブラックボックス化し、適切なハイパーパラメータチューニングが必要
アプローチ②:線形・確率モデル
■ ロジスティック回帰(Logistic Regression)
入力の線形結合をシグモイド関数に通すことで、「あるクラスに属する確率(0〜1)」を算出するモデルです。
- 長所: 学習・推論が極めて高速で、オッズ比などから特徴量の影響度を把握しやすい。ベースラインモデルに最適
- 短所: 特徴量空間で線形に分離できない複雑な問題には対応しにくい
アプローチ③:マージン最大化・カーネルモデル
■ SVM(Support Vector Machine)
クラス間の境界線(分離超平面)と最も近いデータ点との距離(マージン)を最大化するモデルです。
- 長所: カーネル法により非線形な境界にも対応でき、高次元データでも高い精度を発揮する
- 短所: データ量が非常に多くなると計算コストが重くなる
3. モデル選定の指針
各手法の使い分けは、モデルの系統を踏まえて次のように考えると実務で迷いにくくなります。
- まず最初に置く基準モデル: ロジスティック回帰(軽さ・速さ・全体傾向の確認)
- 説明可能性を最優先する: 決定木(単一)
- パラメータ調整の手間を抑えて安定精度を出す: ランダムフォレスト
- テーブルデータで最高精度を狙う: LightGBM / XGBoost(GBDT)
- 高次元データや複雑な非線形境界を扱う: SVM
- 特徴量(次元)が極端に多すぎる: 事前に PCA等の次元削減 で圧縮してからモデルへ投入
重要なのは、いきなり最も複雑なモデルに行かず、
「基準モデル(ロジスティック回帰)で土台を作る → 木系アンサンブル(Random Forest / LightGBM)で精度を引き上げる」という順番で検証することです。
4. 実務での進め方(実装の流れ)
実務での検証は、以下の4ステップで進めるのが失敗しにくい定石です。
- ロジスティック回帰で基準精度(ベースライン)を測定する
- 単一の決定木でデータの特徴分岐や説明性を確認する
- Random Forest や LightGBM / XGBoost を投入し、予測精度を大きく高める
- 必要に応じて SVM 等の別系統モデルと比較・評価する
■ 評価時に見るべき指標
- Accuracy(正解率): 全体としてどれだけ正解したか
- Precision(適合率): 陽性と予測したもののうち、実際に陽性だった割合
- Recall(再現率): 実際の陽性のうち、取りこぼさずに予測できた割合
- F1スコア: PrecisionとRecallの調和平均(不均衡データで極めて重要)
- ROC-AUC(AUCスコア): 予測確率の閾値を変動させた際のモデルの総合的な識別性能(1.0が完璧、0.5がランダム判定。不均衡データの評価で非常に重要)
まとめ
本講では、分類モデルを3つの系統に分けて整理しました。
-
木構造・アンサンブル系:
- 決定木(ルール可視化)
- ランダムフォレスト(安定した並列アンサンブル)
- LightGBM / XGBoost(最強レベルの逐次アンサンブル)
- 線形・確率モデル: ロジスティック回帰(高速なベースライン)
- マージン最大化モデル: SVM(高次元・非線形境界に強い)
アルゴリズムの「系統の違い」を理解しておくと、データ構造に応じた適切なモデル選定と段階的な精度改善がスムーズに行えるようになります。


