shikoan’s memo

プログラミング初心者のチラ裏

ぷろぐらみんぐ帳

Courseraでスタンフォード大学に入学してきました

というのは半ばタイトル詐欺で、Courseraというインターネット上で講義が受けられるサイトがある。

www.coursera.org

ここの機械学習(Machine Learning)のコースが大変評判がよく、「機械学習をちゃんと勉強したいならここ」というのいうのをよく耳にした。

www.coursera.org

今期の機械学習の講義はちょうど4/16に始まったので、昨日から始めてみた。今第2週目の途中まで見ているところ。だいたいこんな感じ。

  1. 全ての講義のビデオも演習問題も無料でできる(少なくとも機械学習の講義は)。全ての演習問題をクリアしたときに「修了証」をもらうことができるが、これは課金が必要。要はここでマネタイズしているらしい。前まで50ドルぐらいで発行できたらしいのだが、4月現在8300円ぐらいになっていた(なので80ドル?)。Courseraのドル箱コンテンツなのでおそらく値上げ?
  2. 講義のビデオを見て演習問題を解いていくという形になる。ビデオは機械学習の講座は日本語字幕がある。なので感覚的には海外ドラマやドキュメンタリーを見ているのと変わらない。演習問題は英語なのだが、記述式でもなく選択式でたまに計算問題の答えを書かせるだけなので、わからなかったら翻訳にでもかけながら。あとプログラミングの演習もあるがこれは特に英語関係ないので。
  3. 文字通りビデオなので、寝っ転がって講義受けようが、お菓子食べながら見ようが、ゲームやりながら見ようが誰にも怒られない。最高すぎでしょ
  4. ちなみに修了証もらいたきゃ全ての課題をこなさないといけないので、1週目の課題締切の4/23までに始めないといけない(はず)。なので、機械学習始めたいなら今は絶好の機会。
  5. 機械学習は日本だと理系の情報科学のコースにあることが多いので、「数式がバーっと並べられてはい終わり」みたいな教え方がありがち。それを継承した書籍も似た傾向をたどっている。ただアメリカの大学なので(良くも悪くも)理系という概念がなく、向こうの想定としては「ベクトル行列わからない、微積わからない、簡単な方程式さえ解ければWelcome!」というスタンスらしい。確かに今や微積も行列もコンピューターで計算させるので、前よりは全然数学に対する障壁は低くなったが、それでもよくこんな敷居低くして教えられるなと思う。初学者に対してベクトルや行列、最適化ってこうやって教えるんだーと逆に参考になった。
  6. コースにログインすればわかるように、毎週そこそこ(4時間~7時間程度)の学習時間を要する。ただあくまでそれは動画の再生時間とレジュメの想定読了時間と演習時間を足し合わせたもので、「内容知ってるんでかったるいな」と思ったら、再生速度2倍にするなどスキップしながら見ればよい。なので、そこまで時間はかからない。もちろんよくわからなければ、想定時間を越えてわかるまでじっくり理解したほうがいい。少なくともこれらの内容を今日本にある教材(ネットや書籍など)でやろうとしたら、数ヶ月、半年は覚悟したほういい。もちろんそれは人によりけりなのだが、ベースとなる数学の復習をしようと思ったらそれぐらいかかる(そして日本にある本は数学がわからないと読めないし、数学を避けている本は漠然とした説明になりがち)。なので、講義の内容をじっくり理解したほうが結果的に早く習得できると個人的には思う。
  7. 担当のウ(Ng)教授の言葉を借りて言えば、「日曜大工で『これはのこぎり、これは金槌、これはドライバーです。じゃああとは頑張って』というのはよくない」だそうで、確かに巷に出回っている本を立ち読みしていると、理論はわかってもじゃあそれをどう応用し、現実での問題に適用していくかというのがわかりづらいことが多い。具体例が出ていても、ごく限られた例(著者の気持ちとしてはわからなくもないが、1つの本に出ている具体例が、ほぼMNISTの手書き数字のデータの分類という本があって、それを見たときは唖然としてしまった。別に手書き数字の分類だけがやりたくて機械学習を勉強しているわけではないし、そういうのはネットに情報が出回っているので独学でも全然できる。というかQiitaに書いた)であることが多い。また機械学習には大きく分けて、分類(Classification)問題と回帰(Regression)問題があるのだが、分類の例はわりと情報出回っているが、回帰が少ない。しかし、この講義の出発点は回帰問題の最小二乗法だ。シラバスを見ていても若干回帰を中心的にやっているように見える。実際の問題への適用というのはこれからの内容を見てみないとよくわからないが、かなり信頼できると思う。というか日本語の資料見るよりよっぽどわかりやすい。
  8. もともと統計の重回帰、ロジスティック回帰ぐらいは知っていたので2週目の時点では「へーあれを機械学習から見るとこうなるんだ。でも結構共通すること多いな」ぐらいの印象なのだが、もう少し進むとパーセプトロンSVMが出てくるので未知のエリアに入ると思う。

だいたいこんな感じ。3番目がポイント高め。また追加でわかったことがあれば記事書く予定。