東大松尾研の「GCIデータサイエンティスト育成講座」(無料)を修了しました
Pythonの基礎からデータ処理と機械学習
はじめに
Pythonとデータ処理や機械学習に興味があり、東大の松尾研が主催しているGCIデータサイエンティスト育成講座を受講しました。コロナの影響で授与式兼交流会が延期になったため修了証を受け取っていませんが、受講した感想を書いてみます。
講座の受講の仕方
WEBの募集フォームから応募します。応募の際、簡単なPythonの Numpyを使った10問ほどのテストを受けます。時間は結構ありそれほどプログラム的には難しくない問題でした。その後合格した方にメールが送られてきて、受講可能となります。
対象の受講者
現役東大生および一般社会人
受講方法
東大生向けオフライン授業と一般向けのオンライン講座を同期して行われました。一般社会人はオフライン授業の動画を後日オンラインでみることができました。
コースカリキュラム
1. 本講座の概要とPythonの基礎2. 科学計算、データ加工、グラフ描画ライブラリの使い方の基礎3. Pythonによる科学計算(NumpyとScipy)4. Pandasを使ったデータ加工処理5. Matplotlibを使ったデータ可視化6. 統計・確率7. 機械学習の基礎(教師あり学習)8. 機械学習の基礎(教師なし学習)9. モデルの検証方法とチューニング方法10. データサイエンティスト中級者への道
週1回の講義で配信されるチャプターを独自で読んで学習し、その講義に対して毎回宿題が出る形でした。また宿題の他に「コンペ」と呼ばれる機械学習の精度を競う課題が期間中に計3回、最後に最終課題が出されました。コンペではKaggleを模した形式になっており、実際のデータを分析して他の生徒とスコアを競うものでした。
Kaggleとは
世界中の機械学習・データサイエンスのコミュニティです。企業や政府のプロのデータサイエンティストや機械学習エンジニアを繋げるプラットフォームです。Kaggleの特徴の一つであるCompetition(コンペ)により、企業や政府がコンペ形式(競争形式)で課題を提示し、賞金と引き換えに最も制度の高い分析モデルを買い取るという、最近でいう一種のクラウドファンディングに近いような仕組みとなっています。
また今回の講座で使っている教材はこちらのページで無料公開されています。よって誰でも勉強することができます。 (演習課題とコンペ以外)
学習環境
学習環境はiLectとSlackが提供されました。その中でJupiter Notebookと同じプログラムの実行環境が構成されていて、提供された教科書を読んだ後、プログラムを実行しながら、講義を理解していく形です。
また、Googleが無料で公開しているJupiter Notebook環境であるColaboratoryで同様に動かすことができるようです。
講座内容、宿題、コンペの疑問、質問、問題などをオンラインでSlackを通じて行いました。 基本的には自習する形なのですが、Slackで受講生たちがTAに自由に質問したり生徒間で意見交換できたりしました。
実際受講した感想
最初授業が始まる前にSlackで受講生たちの自己紹介があったのですが、大学院の研究者だとか企業の研究員、病院の医者などそうそうたるメンバーだったので、授業についていけるのだろうか?ととても不安に思っていました。また、フルタイムで働いた後、家事・育児に追われる中、講義の復習、宿題、コンペをやる時間が本当に無く、寝る間も惜しんで勉強していた本当につらい3ヶ月でした。しかし、iLectの使いやすさとSlackで他の方々からのヘルプによりどうにかドロップアウトせず最後まで続け、無事修了することができました。
今後
今回のこの講座からPythonと機械学習について基礎を学びことができました。今コロナが流行るアメリカでは、ホワイトハウスがKaggleで賞金ありの分析コンペを公開しています。
今後はさらに機械学習を学んで、このようなKaggleに挑戦できたら良いと思います。