機械学習に興味があるなら無料の Coursera Machine Learning から始めよう

Coursera というサービスをご存知だろうか。オンライン上でビデオやプログラミング演習を通してさまざまなことを学べるシステムだ。機械学習 (ML) やデータサイエンス関連のコースが主で、修了すれば証明書や大学の学位まで手に入れることができる。就職に役立つこと間違いなしだ。

私が受けたのはその中で最も有名なもので、 Machine Learning というコースだ。凄まじく充実したコースなのだが、なんと無料(!)。ひとつ難点があるとすればそこそこ時間がかかる(50〜60時間程度)ことだが、得られるスキルからすれば短いくらいだ。

もしあなたが ML に興味があり、時間に余裕があるなら絶対に受けたほうがいい、と強くお勧めする。

動機

私は AI を扱う企業に勤めているが、 AI エンジニアでなく Web エンジニアである。直接 AI を実装することはないが、 AI エンジニアと協力するにあたって ML の知識は非常に重要になる。そこで同僚にこのコースを紹介してもらい、受講した形だ。

始めてはみたものの…

正直、始めたころは完走できる気がしなかったし、いくらビデオを見ても頭に入らなかった。このコースは Week 11 まであるのだが、 Week 1 の途中で数週間放置してしまったほどだ。

もしあなたが今まで ML に関わってこなかったなら、同じ状況になる可能性は高く、諦めたくなるかもしれない。だが、どうか我慢して Week 2 の終盤まで進めてほしい。

Week 2 からはプログラミング演習があるからだ。理論をいくら聞いてもわからなかった私だが、実際にプログラミングし、実行してみるとすんなり理解できた。(念のため補足すると、ビデオは非常にわかりやすく、よく考えられている。が、どうしても序盤は抽象的な話になってしまうので、人によっては辛いだろう。)

プログラミング演習が楽しい

素人がいきなり ML のコードを書けるのか?と思われたかもしれない。つまづかなかったと言えば嘘になるが、この演習は学びやすいように非常に丁寧に御膳立てされているので、楽しく進めることができた。

この演習では Octave (もしくは Matlab)という言語を使う。 ML のために設計された言語で、文法はシンプルで直感的だ。グラフ描画もかんたんに行えるようになっていて、視覚的に理解しやすい。 ML といえば Python だろ?と思われるかもしれないが、比べても Octave は明らかに書きやすい。

そして、演習では一からプログラムを書くわけではない。穴埋め問題のように、学ぶべきロジックのところだけ空欄になっている。後半では複雑な問題もあるものの、最初のうちは1,2行書けば完成するプログラムが多い。

個人的に好きなのは採点システムだ。コマンドひとつで解答を提出でき、自動で採点してくれる。正しいプログラムじゃないと合格しないので、「よくわからないけど多分合ってるよな…?」みたいなことがない。何度も挑戦してようやく合格した時はゲームクリアのような達成感を味わえる。

そこからはあっという間

勝手がわかってからはスムーズに進められた。回を追うと難しくなってはいくものの、積木のように以前学習したコースをもとに少しずつ新しい要素を覚えていくので、取り残されることもなかった。

講師の方は Andrew Ng 先生という ML 界隈のビッグネームだ。英語も聞き取りやすいが、的確にグラフや画像で説明してくれるので英語の苦手な私でも理解しやすかった。内容に直接は関係しないのだが、この人はビデオの要所要所で激励をしてくれるのが支えになった。

終わりに近づくとより実践的な内容になり、さらに楽しくなる。終わる頃には達成感と共に、名残惜しさすら感じた。

おわりに

始めるか悩んでるのであれば、とりあえず始めてみよう。やめるのはいつでもできる。

私はこのコースを終えたあと、 Deep Learning Specialization というコースに挑戦している最中だ。こちらはさらに難易度が高く、苦戦している。もしこちらも完走することができれば、ブログで報告したい。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です