Coursera Deep Learning専門講座の全コースを終えて

この記事のまとめ:
  • CourseraのDeep Learning専門講座の全5コース16週分のオンライン講座を受講してみた感想をまとめました。

Deep Learning専門講座を修了してみて

結論から申し上げると、非常にお勧めできる教材だと思います。

私自身はDeep Learningのずぶの素人で、何から勉強すればいいのかわからない状態でしたが、そんな方でも自然と中身を理解できるようになりました。

受講中により理解を深めるために参考書を2冊買いましたが(下で紹介しています)、たぶんその本だけでDeep Learningを1から理解することは数式慣れしている人でないと難しいと思います。

Andrew Ng先生の講義は感覚的に理解しやすく説明してくれるので、式の意味や何をやろうとする式なのかなど感覚的に理解できます。

この"感覚的"というところが個人的には重要で、数式だけ見てその物理的な意味を理解することは私は難しいと思います。

ただし、後に述べていますが、飽くまで説明してくれるのは数式の概要までで、すべてを理解するには自ら式の変換過程を解いたりしないとなかなか難しいかもしれません。

下記に、ここがイイ、ここがちょっと…と感じた点をまとめておきます。

ここがイイ!!
  • Stanford大学のAndrew Ng先生の授業を受けることができる。Google、BaiduでDeep Learningのプロジェクトをリードしていた方だけあり、非常に実践的な内容です。
  • 2016年までの最も重要そうなポイントを絞って教えてくれる(専門じゃないので本当にそうかはわかりません)。どの論文が重要なのかがわかります。
  • 範囲が広い。特にCNN、RNNはしっかり学べる。
  • 安い。本講座で学べる技術的な範囲だけをAidemyで受講しようとしても2万円はかかりそう。それでもカバーしきれていないと思う。
  • 数学的な意味合いや最適化手法の基礎からしっかり学ぶことができる。
  • Deep Learningのプロジェクト管理やトラブルシューティングなども教えてくれる。これは他では学べなさそう。
  • プログラミング課題を通じて実践的な理解もできる。
  • Kerasのfunctional APIの使い方を学べる。functional APIは文献が少ないので非常に助かる。
  • 修了証明書が発行される。世界的に有名な先生なのでそれなりに効力はあるんじゃないかと。
ここがちょっと…
  • 長い。ストレートに進めても16週(約4ヶ月)かかる。かといって1週間で2週間分の分量をやろうと思うと(私の場合は)とても理解が追い付かない。
  • 安いけどなんだかんだで高い。4ヶ月分で約2万円。さぼるとさぼっただけ費用がかかる。
  • 範囲が広すぎる。Deep Learningをこれから商売にしようと思う人には良いが、特定の領域で使いたい人には広すぎるかもしれない。
  • 応用例が少ない。扱う課題のほとんどはコンピュータービジョンか自然言語処理。
  • 数学的な理論のすべては説明してくれない。なのでブログで多少は補完しました。
  • クイズもプログラミング課題もなんとなくで解けなくはない。クイズは何回でも受けられるので間違えながら正解にたどり着けるし、プログラミング課題はヒントも多い。
  • Kerasのsequential Model APIの使い方は学べない。ただ、functional APIを使えれば多少面倒でもsequential APIでできることは全部できる。
  • 教師なし学習、強化学習は学べない。Deep Q-Learningくらいは扱ってほしかった。
  • 日本語の訳が少ない。はじめの方とCNNあたりしか日本語訳はありません。
役に立った本

理解を深めるために下記3冊の参考書を買いました。一つ一つは読んでいませんが、ちょっとつまづいたときに別の視点で見て、理解を促進することに役立ちました。どちらもこの講座の内容で記載の100%の内容をカバーしているわけではありませんが、70~80%程度はカバーできていると思いますので、じっくり読まなくても大体のことは理解ができるくらいまでの知識は講義をすべて受けると身につきます。

深層学習 (岡田 貴之 - 講談社)

こちらの本は、逆伝播誤差法やRNNの理論的なところを補足するため役立ちました。

講義ではあまり数式の細かい説明はほとんどないので、数式を一つ一つ理解しようとするとつまづいてしまうことがあるかもしれません。私は逆伝播誤差法とRNNのところでそれがあったので、そのときの理解を助けてくれました。

なお、本書はプログラム的な内容は一切ないため、理論を理解するためのものです。

深層学習 (機械学習プロフェッショナルシリーズ)
岡谷 貴之
講談社
売り上げランキング: 5,244
直感 Deep Learning (Antonio Gullil - オライリージャパン)

こちらの本は、Word Embedding、Word2Vec (Skip-gram)の理解に役立ちました。

正直なところ、講座では上記の説明が十分でないのでイマイチ理解できないところがあります。その補足として個人的にはかなり重要でした。

また、講座ではKerasの実装はFunctional APIを使った実装しかしませんので、Sequential Model APIの実装の理解に役立つかと思っています。

直感 Deep Learning ―Python×Kerasでアイデアを形にするレシピ
Antonio Gulli Sujit Pal
オライリージャパン (2018-08-17)
売り上げランキング: 2,267
ほとんど使わなかった本
ゼロから作るDeep Learning (斎藤 康毅 - オライリージャパン)

この本で扱っている内容に近いことは、コース1、2の講義やプログラミング課題でほとんどカバーしてくれるのでほとんど見ることはありませんでした。

また、本書ではDeep Neural Networkをスクラッチで組んてみることにフォーカスをおいていますので最終的にTensorFlow/Kerasなどのフレームワークを使うことが一般的であることを考えると、初心者が手を出すにはいい教材ですがこれだけでは足りない感は否めません。

ゼロから作るDeep Learning ―Pythonで学ぶディープラーニングの理論と実装
斎藤 康毅
オライリージャパン
売り上げランキング: 395

今回は以上です。 最後まで読んでいただき、ありがとうございます。
CourseraのDeep Learning専門講座の受講メモ

コメント

このブログの人気の投稿

LinuxでのnVidia GPUのオーバークロック・電力チューニング方法