lazy diary

統計とその周辺

Coursera:Machine Learningを受講しました

機械学習を勉強している人ならどこかで聞いたことはあるであろう(たぶん?)
あの有名なAndrew Ng先生のMachine Learningを受講しました。
www.coursera.org

何を学んだのかの振り返りの意味も込めて、この記事を書いていきます。

1.受講動機

機械学習をざっくりと学びたく、当初市販の本を手にとってはみたのですがどうもしっくり来ませんでした。なぜその手法を使うのかといった所謂motivationの部分の話が無くて分かりづらかったです。そこで評判の良いCourseraの講義に手を出してみました。
(追記:統計的学習理論を1年ほど学んだ今でも市販の本で学び始めるのは難しいと思っています。)

2.講義内容

散々色んなブログでまとめられているとは思いますが、振り返りの意味も込めて自分で作ったノートを見ながら講義内容をざっくりここに箇条書きにします。

Week1

機械学習の一般的な定義と教師あり学習教師なし学習について
MATLABOctaveアルゴリズムの簡単な実装には便利
・線形単回帰
最急降下法とは何か?

市販の本で分かりづらかった最急降下法がとても分かりやすく、あぁ教えるのがお上手でと思いながら動画を見てました。

Week2

・線形重回帰
・特徴量のスケーリングの効果とその実装
多項式回帰
・正規方程式の利用

Week3

・線形ロジスティック回帰
・マルチクラスの分類問題への対応の仕方
過学習の恐ろしさとその対策方法(特徴量選択、正則化項の追加、可視化etc)

Octaveの便利さをこのあたりで実感。

Week4

・ロジスティック回帰の欠点
ニューラルネットワークの概要とその素晴らしさ

Week5

・forward propagationとback propagation
ニューラルネットワークにおける最急降下法とエラーチェック(gradient checking)

ニューラルネットワークは線形回帰やロジスティック回帰に比べてかなり難しかったです。特にback propagationがなぜ必要なのかがなかなか理解できませんでした。このMachine Learningの講義で私が一番大変だと思ったWeekです。

Week6

・交差検定の理解
正則化係数λの決定方法
・学習曲線から分かること
・評価指標(F値

ここではアルゴリズム云々ではなく、モデルの改善にはなにが必要なのかが学べます。

Week7

・サポートベクターマシーン(SVM)の実装とその良さ
カーネルトリック
・ロジスティック回帰とSVMの使い分けについて

Week8

教師なし学習の応用例
・K-means法
・クラス数Kの決め方
・次元削減の必要性と主成分分析の概要
機械学習での主成分分析の組み込み方

Week9

ガウス分布を用いた異常検知アルゴリズム
・異常検知アルゴリズムが適している問題
・レコメンデーションシステムの概要
協調フィルタリングの実装と実際のレコメンドの仕方

項目はたくさん並んでしまいましたが、ガウス分布等は統計では定番なので、統計を少し学んだ人は苦労しないと思います。レコメンデーションシステムは機械学習の定番なので知れてよかったです。

Week10

最急降下法(バッチ急降下法)のデメリット
・確率的急降下法とミニバッチ最急降下法の実装
・オンライン処理の特徴
・データが膨大にあるときに使われるMap Reduceについて

データをたくさん持っていることは強い(オーバーフィッティングしているとき)というのは動画内で何度も説明されます。その膨大なデータを計算コストの面からどのように扱うかが説明されます。

Week11

機械学習の応用例としてのOCRの説明
・アプリケーションのパイプラインを用意することの重要性
・現実で直面するデータ量の問題と人工データ合成の概要
・シーリング分析の概要
・受講に対する感謝の言葉

機械学習を実際のアプリケーションに組み込む際の注意事項がたくさん説明されています。
最後の受講に対する感謝の言葉はなかなか嬉しいものがあります。

3.受講してみて

受講して本当に良かったです。とにかく分かりやすいの一言です。
1ヵ月を使って学びましたが、勉強していて楽しかったです。動画なので本と違って行間埋める必要もありませんのでとっつきやすいです。

もし

前提条件
機械学習の基礎を学んでみたい
・英語が少し読める
歓迎条件
・行列演算、微分偏微分を知っている(これらは知らなくても動画内で簡単な説明がありますが、この先どこかで深い知識が必要になるでしょうから事前に数学書で学ぶことをオススメします)
・巷の機械学習入門書が難しすぎる

という方がいたら私はこの講義をオススメします。