基本アルゴリズム

学習目標: 代表的な機械学習アルゴリズムの特徴と使い分けを理解する

アルゴリズム選択の指針

回帰(連続値予測)

価格、売上、気温など数値を予測

分類(カテゴリ予測)

スパム/非スパム、画像の種類など

クラスタリング(グループ分け)

顧客セグメント、類似文書など

教師あり学習アルゴリズム

データ点を通る最適な直線(または平面)を見つけるアルゴリズム

数式: y = wx + b

用途: 売上予測、価格推定、需要予測

長所: シンプル、解釈しやすい、計算が高速

短所: 非線形な関係を捉えられない

回帰 線形

シグモイド関数を使用して確率を予測する分類アルゴリズム

数式: P(y=1) = 1 / (1 + e^-(wx+b))

用途: スパム検出、病気診断、顧客離脱予測

長所: 確率出力、解釈可能、効率的

短所: 線形境界のみ

分類 確率的

条件分岐(if-then-elseルール)でデータを分割するアルゴリズム

構造: ルートノード → 内部ノード → 葉ノード

用途: 顧客分類、リスク評価、意思決定支援

長所: 直感的、解釈しやすい、前処理が少ない

短所: 過学習しやすい、不安定

回帰 分類

多数の決定木を組み合わせた集団学習(アンサンブル)手法

仕組み: 複数の決定木の多数決/平均で予測

用途: 信用スコアリング、医療診断、特徴量重要度分析

長所: 高精度、過学習しにくい、欠損値に強い

短所: 計算コスト、解釈性が低下

回帰 分類 アンサンブル

データを分離する最適な境界(超平面)を見つけるアルゴリズム

カーネルトリック: 非線形分離も可能

用途: テキスト分類、画像認識、バイオインフォマティクス

長所: 高次元データに強い、汎化性能が高い

短所: 大規模データで遅い、ハイパーパラメータ調整が重要

分類 マージン最大化

教師なし学習アルゴリズム

K-means クラスタリング

データをK個のグループに分割するアルゴリズム

  1. K個の中心点をランダムに配置
  2. 各データ点を最寄りの中心に割り当て
  3. 各クラスタの中心を再計算
  4. 2-3を収束まで繰り返し
クラスタリング
主成分分析 (PCA)

高次元データを低次元に圧縮するアルゴリズム

  • データの分散が最大となる方向を見つける
  • 重要な特徴を保持しながら次元を削減
  • 可視化やノイズ除去に使用
次元削減

アルゴリズム比較表

アルゴリズム タスク 解釈性 計算速度 データ量
線形回帰 回帰 ⭐⭐⭐ ⭐⭐⭐ 小〜中
決定木 分類/回帰 ⭐⭐⭐ ⭐⭐ 小〜中
ランダムフォレスト 分類/回帰 ⭐⭐ ⭐⭐ 中〜大
SVM 分類 小〜中
ニューラルネット すべて

理解度チェック

Q. 顧客を「購入しそう/購入しなさそう」に分類したい場合、適切なアルゴリズムは?