見出し画像

CourseraやedXなど、MOOCで学んだものたちとその所感

Courseraが2021年にIPOをする可能性があるそうだ。私はCourseraは結構昔から使っていて、edXももう数年やっているので、MOOCファンを公言してもよいかなと思う。UIやPricingの仕組みが結構違うのでどちらを使うか好みは分かれるかもしれないが、手軽に一流大学の授業が受けられるという点では共通して非常にありがたいサービスである。特にTechnical Backgroundのかけらすらない状態でProduct Managerをやっている身としては(法学部出身)、こういったプラットフォームで自分のペースで安価に学べる機会があるというのはとても有難い話なのである。

あまりにも有難いので、ここ数年で私が勉強してよかったと思ったものをつらつらと所感とともに書いていこうと思う。尚、自分の業務に関係する分野なので、CSとかMLに偏っている点はご容赦を。

1. Machine Learning (from Stanford) - Coursera

もうこれは鉄板なのでご存知の方も多いと思うが、CourseraのFounderの一人でもあるAndrew Ng先生のMachine Learningのコースである。Reviewについては沢山の人がしているので割愛するが、私もAmazonに入ってすぐにML関連の仕事をする機会があったので、このコースで勉強した。内容としては初歩的なのだと思うが、基礎的な、ML的な考え方を理解するには丁度良い作りになっていて、プロジェクトについていくという目的を達成するには十分な内容だったと思う。尚、後に調子に乗って自分でもモデルを作ってみたところ、何故かAnalyticsのエライ人に気に入られて(モデルが素晴らしいとかではなくビジネス的な着眼点という意味で)、とても有意義だがしんどい経験をした。Directorへのプレゼン前に熱を出すくらいしんどかった。学びも多かったけれど(例えば、自分でやってみると、そもそものデータの集計や下処理でSQLやPythonを死ぬほど書くことになるので、自然とそこそこ書けるようになる)。

2. Coding for Everyone: C and C++ (from UC Santa Cruz) - Coursera

Product Managerになって以来、基礎的なData StructureやAlgorithmを勉強しないとやばいぞ、となり(事前に勉強しとけよ、という話ですが)、色々勉強していたのだが、CとかC++で解説しているものが多いので、もうこの際、一通り基礎だけ勉強するか、ということでやり始めたのがこちら。やり始めて気づいたのだが、結構長いコースだった。。が、もう後には引けないので全部やった(サンクコストに引っ張られるというダメな金融出身者)。若干コースによって質のバラツキがあるのだが、非常に基礎的な言語の設計思想とか歴史とかに加え、初歩的なC言語のコーディングを丁寧に解説してくれるので、私みたいな超ビギナーにはよかったと思っている。教えてくれる教授はとてもいい感じである。ただ話すのが遅いので、1.25x ~ 1.5xで聞いていた。

3. Algorithms (from Stanford) - edX

なんだかStanfordのコースばっかり紹介していて癪だがよいものはよいので仕方がない。AlgorithmとかData Structureはある程度勉強したのだが、もうちょっと体系的にやるか、ということで始めたのがこちらとPart II。因みにCourseraには同じ内容と思われるものがPart IVまであるのだがお金が発生するのでedXでのAudit(無料版)を選択。Part IIIとPart IVに関しては本を読んで勉強すればいいかなと思っている(講義をしている先生が書いた本がAmazonで出ていて、コースに対応する形で4冊出している。Kindleで一冊$9.99)。まだ途中だがとてもよい。というのも、Cとかでアルゴリズムを実装させるというよりも、理論面を特定の言語環境に依拠せず説明することに重点を置いている(i.e., 数式で問題を解かせる)からだ。私のような雑魚は、動画の中でちょっと複雑なコードが出てきたりすると、"え、ちょっと今のところなにやってるのかわからなかった、待った"、みたいになり(というか結局自分で書かないと理解できない)とても時間を食うのだが、こちらのコースは基本的にPlain EnglishかPseudo Codeで解説してくれるので、そういう事態に陥ることが殆どない(今のところ)。有難うStanford、でもBig Gameでは負けてくれ(今年のBig Game、Calは一点差で負けてしまった)。

4. Data Science (from UC San Diego) - edX

Python for Data Science、Probability and Statistics in Data Science using Python、Machine Learning Fundamentals、Big Data Analytics Using Spark、という四つのコースからなるモジュールである。とにかく去年の後半くらいからML関連のプロジェクトが異常に増えてきたためもう少しちゃんとやらねば議論にならん、ということで勉強し始めたのがこちら。私は元々仕事でPython使ったりSpark使ったり、というのがあったのと、統計は何故か好きで大学時代にちらっと勉強したので、Python for Data ScienceとProbability and Statistics in Data Science using Pythonはやらなくてもよかったかな、、という気持ちが正直ある。一方、Machine Learning FundamentalsとBig Data Analytics Using Sparkに関してはとてもよかった。Machine Learning Fundamentalsは線形代数の基礎から固有ベクトルの導出やPCAくらいまで丁寧にやってくれて、それを更にMLのアルゴリズムに応用する、という設計になっていて、勉強したことの復習という意味も込めて、大変有用な中身であった。Big Data Analytics Using Sparkに関しては、Sparkは完全自己流だったのでとても勉強になったのと(今までの方法は無理やり君(Spark)を動かしているだけで全然効率的じゃなかったのだな、君の気持がわからなくてごめんよ、みたいな気持ちになった)、一緒に働くApplied Scientistなどがよく使っているブースティングなどの手法を、自分でちゃんと動かして学べるのはとてもよかった。総合的には満足で、Scienceチームからの信頼レベルも上がったのではないかと(勝手に)思っている。

5. CS50 Introduction to Computer Science (from Harvard) - edX

edXを使うきっかけになったのがこれ。こちらもおそらく超有名なので沢山レビューなどあると思うのだが、CSをやったことがない人への導入としては本当によくできている。なにより、授業が面白いのだよ。普通の授業なので一個一個の動画は結構長いのだけれども、だまされたと思って最初のいくつかを見てみることをお勧めしたい(内容的に難しいことはないので、1.25 ~ 1.5倍速くらいで流してもいいと思う)。

私も大学の時にこういうの受けたかった。タイムトラベルをして、二外の成績がやばいくせにちょっとマニアックな語学とかを履修している自分の目を開かせたい、そう思わせてくれる授業であった。

6. 学位の代わりにはならない(と私は思う)

誤解しないで頂きたいのは、MOOCで学ぶ内容は極めて有効だと思うし、実務でとても役に立っている。私もまたもや仕事で必要が生じたため、今はNYUがやっているComputer Networkのコースをちまちま勉強している。

全般的にコースの質が高いのは、超有名大学で教えている先生たちが教鞭をとっているわけなので、当然といえば当然かもしれない。

一方で、ではそれが学位の代わりになるか、と言われると、私はならないと考えている。とあるコースで教えてくれる先生がこんなようなことを言っていた(著者による意訳)。

このコースは実際に私が大学で教えているコースと同じコンテンツを使って同じように教えている。但し、このコースはオンラインプラットフォームを使っているが故に、テストなどの面で様々な制約がある。従って、キャンパスでの授業と全く同じレベルのRigorを達成する、というところには至っていない。

まぁそれはそうだよね、と思う。MOOCは、普通に受講したら凄い金額がかかるであろう有名大学の授業を、無料、乃至は極めて安価に提供するプラットフォームである。従って、例えば、Certificateを出すためのテストだって、毎学期手を変え品を変えて出すような手間をかけられない、というところだろう。

尚、CourseraやedXはオンラインで学位を取得できるようなプログラムを提供していたりもする。こういったプログラムはキャンパスと同じレベルでRigorなものを提供するため(Degreeを出すため)、通常のMOOCのコースが提供する以上のものを、大学側が時間と手数をかけてオファーしているようである(注: 未確認、Reddit情報)。将来的に、オンラインで大人数を相手にRigorousなコースを提供できるようなテクノロジーが進化した場合、MOOCでの経験がレジュメ上で何らかの意味を持つ可能性もあるのかもしれない。

この記事が気に入ったらサポートをしてみませんか?