機械学習教本

参加者

  1. 井上 大成
  2. 前山 皓亮
  3. 西上 貴雅
  4. 吉田 紘陽
  5. 呉 若琳
  6. 長谷川 尚輝
  7. 天賀 広
  8. 小室 卓也
  9. 松本 大空

目次

1 機械学習序論…1 [長谷川]
1.1 人工知能(AI) とは何か ~強いAIと弱いAI~
1.2 データから新しい価値を生み出す ~データマイニング~
1.3 AIを形作る技術 ~機械学習と統計学~
1.4 機械学習の枠組み ~問題と解答~
1.5 教師あり学習と教師なし学習
1.6 教師あり学習と教師なし学習以外の学習
1.7 機械に任せられないこと
1.8 本書のあらまし

2 データマイニングの基本…9
2.1 データマイニングの流れ
2.2 視覚的にみる機械学習の考え方
2.3 学習するモデルの定式化
2.4 学習することの難しさ ~次元の呪い~
2.5 よい学習とは何か ~汎化性能と過学習~
2.6 人の直観も学習に組み込める ~ベイズ理論~
2.7 教師あり学習の概観

3 回帰分析…23 [西上]
発 想
3.1 「よい直線」でデータを表現する
3.2 誤差を科学する
モデル
3.3 「よい直線」の求め方
3.4 最小二乗法のイメージ
3.5 最小二乗法による単回帰分析
3.6 複数の説明変数を扱う回帰分析 ~重回帰分析~
3.7 過学習・未学習の防止
3.8 説明変数を取捨選択する際のテクニック ~ステップワイズ法~
3.9 説明変数を複数扱う際の注意点 ~多重共線性~
3.10 最小二乗法を用いた回帰分析の特徴
実 装
3.11 Rでの重回帰分析の実行例
3.12 Rでのステップワイズ法の実行例
3.13 学習データと検証データの比較
発展的な話題
3.14 分類問題にも対応する回帰分析 ~ロジスティック回帰分析~
3.15 ロジスティック回帰分析における分類
3.16 確率の推定と直線
3.17 「よい曲線」の求め方 ~交差エントロピー~

4 ニューラルネットワーク…42 [吉田]
発 想
4.1 脳を模倣する ~ニューロンと形式ニューロン~
モデル
4.2 ニューロンの仕組み ~線形和と伝播関数~
4.3 ニューロンによる判定のイメージ
4.4 ニューロンを学習する ~最急降下法~
4.5 ニューロンを用いた推定
4.6 隠れ層の役割
4.7 ニューラルネットワークの特徴
実 装
4.8 R でのニューラルネットワーク(nnet) の実行例

5 ディープラーニング…62 [呉]
発 想
5.1 乗り越えたいニューラルネットワークの欠点 ~過学習と勾配消失問題~
モデル
5.2 学習を小分けにするテクニック ~AutoEncoder~
5.3 勾配消失問題に強い伝播関数 ~ReLU~
5.4 過学習を抑制するテクニック ~Dropout~
5.5 最急降下法の改良 ~確率的勾配降下法など~
5.6 隠れ層での勾配消失を抑制する ~Batch Normalization~
5.7 ディープラーニングの特徴
実 装
5.8 R でのディープラーニング(mxnet) の実行例
発展的な話題
5.9 その他のディープラーニング技術を概観する

6 サポートベクターマシン…88 [西上]
発 想
6.1 未知のデータに強いモデルを作る ~マージン最大化と分離超平面~
モデル
6.2 SVMの定式化
6.3 SVMによって分離超平面を求めるイメージ
6.4 同じ解へとたどりつく「双子」の問題 ~双対問題~
6.5 SVMで複雑なモデルを実現する ~カーネルトリック~
6.6 SVMの特徴
実 装
6.7 R でのSVM(kernlab とe1071)の実行例

7 ベイズ理論…114 [前山]
発 想
7.1 経験則や直観を活用する
7.2 確率には2種類ある ~主観確率と客観確率~
7.3 得られた証拠で考えを修正する ~逐次合理性とベイズの定理~
7.4 ベイズの定理の直観的なイメージ
モデル
7.5 ベイズの定理の応用例 ~単純ナイーブベイズ~
7.6 ベイズ理論の特徴
実 装
7.7 R での単純ナイーブベイズ(klaR) の実行例
発展的な話題
7.8 ベイズ理論を使って機械学習を理解する ~SVM を題材として~
7.9 より高度なベイズ理論の応用について

8 決定木学習…136 [天賀]
発 想
8.1 分類のルールを決定木で表す
8.2 質問のしかたや順序によって決定木の形は変わる
モデル
8.3 決定木学習の手法
8.4 過学習を抑制するテクニック ~枝刈りと交差検定~
8.5 説明変数の作り方と欠損値の取り扱い
8.6 決定木学習の特徴
実 装
8.7 R での決定木学習(C5.0) の実行例
発展的な話題
8.8 決定木の性能を高める方法 ~アンサンブル学習~

9 勾配ブースティング…153 [井上]
発 想
9.1 ブースティングとはどんな手法だったのか
9.2 ブースティングの問題点 ~指数損失関数が抱える問題~
モデル
9.3 勾配ブースティングの考え方
9.4 勾配ブースティングの特徴
実 装
9.5 Rでの勾配ブースティング(XGBoost) の実行例
発展的な話題
9.6 最近の研究での展開 ~スタッキングとDeep Forest~

10 クラスター分析…169 [小室]
発 想
10.1 似たモノ同士グループ分けする
10.2 なぜクラスター分析をするのか
10.3 似たモノ同士 ~データ間の距離~
モデル
10.4 クラスター分析手法は2種類ある
実 装
10.5 R でのクラスター分析(kmeans とhclust)の実行例
発展的な話題
10.6 EM アルゴリズム
10.7 その他のクラスター分析 ~LDA~

11 主成分分析…186 [松本]
発 想
11.1 データをわかりやすく縮約する
モデル
11.2 主成分分析の直観的な理解
11.3 多変量を縮約する
実 装
11.4 Rでの主成分分析(pca) の実行例

付録A 学習以前の課題 ~データ参照~…205
A.1 データ参照が適しているのはどんな場合か
A.2 学習データを参照して答えを得る
A.3 データを離散化,縮約してから参照する方法
A.4 すべての問題について事前に計算しておく方法
A.5 過去の出力結果を再利用する方法 ~キャッシュ手法(表参照形式)~
A.6 キャッシュ手法のテクニック ~ハッシュ法~

付録B 教師あり・教師なし学習以外の機械学習の枠組み…211
B.1 目的に応じた報酬を定めて試行錯誤させる学習 ~強化学習~
B.2 正解を一部のデータにだけ与えている学習 ~半教師あり学習~
B.3 外部情報から正解を自動付与したうえで行う学習 ~遠距離学習~
B.4 弱分類期を組み合わせる学習 ~アンサンブル学習~
B.5 対象とする問題と似たデータを流用する学習 ~転移学習~

参考文献…221
索 引…223

参考資料


風間 一洋