2017/05/28 に Udacity の Deep Learning Nanodegree を卒業した。
僕が大学院を卒業した2015年ごろ、まだ Deep Learning の波は研究室・自然言語処理(?)には来ていなかったが、 研究室に残っている同期の話を聞いたり、世の中のニュースを見ていても、世界ががらっと変わっていることを感じていた。 そんな中 Deep Learning を学ぶ機会を探していて見つけたのが、この Udacity の Nanodegree だった。
1月ごろに申し込みしたのだが、最初に $400 かかると聞いたときは躊躇した。でも GPU インスタンスを使うための AWS の $100 クーポンや有料の Slack チームを使った、 オフィスアワーになんでも聞いて良いよチャンネル (#ama) があったり、お金がかかりそうな手厚いサポートもあった。
データを整形する手間が省け、TensorFlow を使って Seq2Seq や DCGAN を動かし、授業のコードや Slack の他の人のコメントを参考にしながら、 自分が書いたコードが間違っていたら Review してもらえる。 Deep Leraning を俯瞰したいという自分の動機にとてもマッチしていて効率的に学べたと思う。十分な価値はあったしむしろ安かったかも。 実際、2回目の5月からのコースでは $600 か $800 に値上げしてたみたい。
コンテンツについては、この GitHub のレポジトリ udacity/deep-learning を見るのが、はやそう。 各授業の資料が Jupyter notebook になっていて、 Review とか Video がなくても自習に役立つと思う。
Siraj Raval という Youtuber と Floyd というサービスを知れたのも良かった。
Siraj Raval は Tech 系の Youtuber で,10分くらいの動画で様々な Machine Learning に関するトピックをテンション高く紹介してくれる。 飽きさせないためか、途中で急にラップ入ったりする。
個人的に気になっていたキャプションからの画像生成のアルゴリズムの動画に加えて、 同僚の中で一時期流行っていた Prisma のアルゴリズムを紹介している How to Generate Art - Intro to Deep Learning #8 や GAN の説明している How to Generate Video - Intro to Deep Learning #15 が好きだった。
Floyd は “Heroku for Deep Learning” を目指しているスタートアップがやっているサービス。CLI で簡単に GPU が使える Jupyter 環境が手に入る。 しかも今は100時間分までは無料で使える。2並列以上でたくさん実験を行いたい場合などは課金が必要となる。自分で Tensorflow がインストールされた GPU インスタンスを立ち上げるための Vagrantfile shotarok/vagrant-aws-gpu-tensorflow も書いたけど、結局 floyd の方が気軽でこちらばかり使っていた。1
改善できそうな点としては Reviewer によって、質が全然違うこと。何回か提出する中で、前回それと違うこと言われたんやけどなぁとか、 前回の人はめっちゃ参考になるリンク貼ってくれたけど、今回の人はあっさりやなぁとか思ったりすることがあった。
$100 のクーポンと必ず参加できる保証もらったので、次は Self-Driving Car Engineer Nanodegree をやろうかという感じ。
全部 Vagrant で Provisioning してるけど Packer で AMI 作ったり、今なら Amazon 公式の Deep Learning 用の AMI 使うのが良さそう。 ↩︎