機械学習まとめ

  • 回帰と分類、生成モデル(generative)と識別モデル(discriminative)
  • 訓練データ・検証データ・テストデータ、汎化誤差と経験誤差
  • 損失関数、経験リスク最小化(ERM)
  • No Free Lunch定理、帰納バイアス

学習パラダイム

前提となる数学

  • 🎓線形代数: ベクトル・行列演算、固有値分解、特異値分解(SVD)、射影、二次形式、正定値性
  • 🎓微分積分・最適化: 勾配、ヘッセ行列、テイラー展開、凸関数、ラグランジュ未定乗数法、KKT条件
  • 🎲確率統計: 確率変数、同時分布/周辺分布/条件付き分布、ベイズの定理、期待値と分散、代表的な分布(ガウス、ベルヌーイ、多項、ポアソン、ベータ、ディリクレ)、大数の法則、中心極限定理
  • 🎓情報理論: エントロピー、交差エントロピー、KLダイバージェンス、相互情報量

結局、機械学習に必要な数学ってなに? | Futurismo, この記事ははてブがついてあフィエイトで数千円稼いだ.

Basics

🤖目的変数(label)

教師の部分. label, target, predict.

従属変数

📝特徴量(fatures)

📊識別モデル

識別モデル/discriminative models, 条件付きモデル/conditional models.


線形回帰モデル

📈回帰分析

  • ロジスティック回帰(LR)
  • 条件付き確率場(CRF)

🌴決定木

グラフ構造の一つ. 機械学習では決定木学習.

質問を順番に投げて、答えで枝分かれしながら結論に至るモデル.

特徴

  • 特徴量のスケールを揃えなくていい(順序しか見ないので)
  • 外れ値に比較的強い
  • 場合分けを自動で見つける
  • 表形式のデータで、実務的に強い成績が出やすい

ランダムフォレスト

独立に木をたくさん作って、予測を平均する。全員に同時に意見を聞いて多数決するイメージ

勾配ブースティング(GBDT)

前の木が外した分を、次の木が修正する

  • LightGBM

説明可能AI

機械学習の特徴量のブラックボックスを説明するアルゴリズム.

  • 局所的な説明(Local Surrogate)
  • 大域的な説明(Global Surrogate)

SHAP(SHapley Additive exPlanations)

各特徴量が予測値に対してどれだけ貢献しているかを計算することで、予測を説明

モデル評価

バイアス-バリアンス分解

  • 予測値: score
  • 正解値: label/target/ground truth はいずれも正解値。慣習として、分類なら

汎化

既知の学習から未知を予測できるようになること. 機械学習の目標.

🤖過学習(overfitting)

学習しすぎて精度が劣化する. オーバーフィッティング

IS(in-sample)

Out-of-Sample(OOS)

データ分析や機械学習において、モデルの作成・学習に使用しなかった新しいデータのこと. このデータを使ってモデルの予測性能を検証することで、過学習を防ぎ、未知のデータに対する真の予測能力を評価

評価指標

accuracy、precision/recall、F1、ROC-AUC、PR-AUC、混同行列、MSE/MAE/R²

🤖教師あり学習

🤖自己教師あり学習

テキスト内の消された単語を予測させることで、ほぼ無限に多様な訓練データを用意できるという発明!

2018, Google BERTが実装.

<2024-12-03 Tue 17:44> はじめてしった、これはすごい. 📚大規模言語モデルは新たな知能か - 岡野原大輔(2023)

🤖教師なし学習

  • クラスタリング: k-means、階層的クラスタリング、DBSCAN、クラスタ数の決定(エルボー法、シルエット係数)
  • 混合ガウスモデル(GMM)とEMアルゴリズム
  • 次元削減: 主成分分析(PCA)、カーネルPCA、因子分析、ICA、多次元尺度構成法(MDS)、t-SNE、UMAP
  • 密度推定: カーネル密度推定、ヒストグラム法
  • 異常検知

このうち PCA・因子分析・MDS・クラスタリングは, 統計学側では📊多変量解析の「外的基準なし」の手法として体系化されている. 同じ手法を別の動機で扱っている.

クラスタ分析

階層的クラスタ分析

二つの近いものを探す.

  • 近さの定義

    • ユークリッド距離
    • 相関係数
    • マンハッタン距離

非階層クラスタ分析

  • K-means cluster 分析

    クラスタの平均を用い, 与えられたクラスタ数 k 個に分類する

📝Pre-training

事前学習.

転移学習/ファインチューニング

転移学習とファインチューニングも既存のモデルを再学習によって改良する. 内部の技術が異なるが目的は似ている.

📝転移学習

Transfer Learning.

📝Fine Tuning

ファインチューニング. 既存のモデルを元に機械学習モデルを改良する技術.

🤖レコメンドシステム

レコメンダシステム、レコメンドエンジン、recommender system. 推薦アルゴリズム… 呼び方がいろいろある.

📝機械学習プロダクト開発

MLOps.

📚パターン認識と機械学習/PRML

機械学習ガチ本としてよく言及されるやつ.