Udacityの機械学習コースを無事卒業できました

Udacityの機械学習ナノディグリーを卒業!

オンライン学習のMOOCの1つであるUdacityの提供している機械学習のコースを無事に卒業することが出来ました!!

ナノディグリー(Nanodegree)とは小さな学位のことを意味しており、Udacityの認めたコースを修了すると認定されます。

Udacity Graduate Certificate

2017年6月〜12月まで約半年ほどかかりました。これが受講したコースのリンクです。

Coursera受講してたのに、なぜUdacityも受講したのか

今年の6月にCourseraの機械学習コースを完了(過去記事)したんですが、 その直後からUdacityの機械学習コースを受講し始めました。

Courseraの機械学習コースは基礎的な理論やアルゴリズムの実装がメインでした。 そのため、今すぐ何かのモデルを組んで動かそうと思うと、「さてどうしようか」「TensorFlowから勉強するか?」と思ってしまう所がありました。

そこで、UdacityのコースがPythonのフレームワークを使ったものだったので、すぐに出来るだろうと思って受講することにしました。 本当は1年のこのコース、3ヶ月で終わらそうと思ってスタートしましたが、半年ほどかかりました。

UdacityとCourseraの機械学習コースの比較について、書いてみたいと思います。

Udacityの方がより実践的

Udacityは基礎のアルゴリズム構築よりも、既存のフレームワークを用いてどのようにモデルを作り上げるか、どのように改善させていくかという所に重点が置かれてる印象です。

Courseraはもっと基礎や理論重視(微積分の知識必須)で GNU Octaveを使ってアルゴリズム構築したりするけど、 UdacityはPython, scikit-learn, Keras / TensorFlowとか使って課題をこなしていきます。

課題のプロジェクトが興味深い

Udacityではこのようなプロジェクトを取り扱いました。

  • ボストンの住宅価格予測
  • 個人のデータによる収入予測(教師あり学習)
  • 顧客セグメントクラスタリング(教師なし学習)
  • スマートキャブ(タクシー)の自動運転アルゴリズム(強化学習・Q-learning)
  • 犬の画像から犬種判別(CNN)
  • 最後は自分のプロジェクトでNasdaqなどの変化を使った日経平均株価の予測プロジェクト(LSTM)

どれも興味深く、実際の問題として取り組む事が出来たので面白かったです。

ちゃんとしたレポート(英語)を出す必要がある

Courseraはちゃんとしたコードを提出すればそれでパスできたのですが、Udacityではちゃんとしたレポート(英語)を出す必要があります。

自分の文章できっちりと説明をしていく必要があって、「なぜ」そうしたのか、「なぜ」それがベストなのか等一つ一つ説明させられるので理解が深くなります。 レビューで色々突っ込まれるために再提出が多くあって、それはちょっと大変でしたが、的確なツッコミに毎回唸らされました。

どちらがオススメ?

実は、どちらがオススメかははっきりと答えられません。 Courseraで行う基礎理論の理解も大事だし、Udacityの実践的な事をやっていくのも両方大事です。

Courseraで学んだ基礎と、実践との間にあるギャップをUdacityが埋めてくれるようなイメージです。 なので、オススメは両方…なのです。

でもUdacityは毎月お金がかかる(月199USD)ので、早く完了する方がお得です。 またCourseraは受講するだけなら無料、正式な認定証を取得するためには有料になりますが、Courseraの方が安いです。 内容が異なるのでお金で比較できませんが、参考になればと思います。

無事に卒業できて、あー終わったーという達成感でいっぱいです! 本当にオススメできるので、ぜひ参考にしてみてチャンレンジしてみてください!

@takp