DL4US修了したった

昨年秋頃に「DL4US」の3期生募集をツイッターで偶然知り,勢いで申し込み,2020年3月に無事修了しました。

今回はDL4USの内容と感想について書いていきます。これから応募しようと考えている方は参考にしてみてください。

DL4USってなに

東京大学松尾研究室が開講しているディープラーニング(深層学習)のオンライン講座です。Numpyの入試を受け,抽選で通った人のみ受講できます。特徴は以下の3点です。

  1. Jupyter notebook + GPU + Kerasで深層学習
  2. 毎週テーマ別に課題を出され,コンペ形式で他の受講生と課題の点数を競う
  3. Slackで受講生同士が課題について議論できる

ちなみにGithubに教材とコードがあるので独学もできますが,GPUや受講者同士のコミュニケーションなどのメリットは受講者だけが享受できます。

申し込み〜選考〜抽選

申し込み

Google Formに名前・所属などの基本情報と意気込み(深層学習を学んでどう活かしたいか)を書いた覚えがあります。

選考: Numpyオンラインテスト

申し込みをした後,Numpyのテストに関するメールが届きました。10月11日にメールが届いたので,4日以内にオンラインテストを受けてくださいということでした。

f:id:shinmee:20200520134836p:plain:w400

Numpyだけがテスト範囲でしたので,準備として100 numpy exercisesを解きました(実際は50問くらいしか解いてない)。本番のオンラインテストは問題が20問で,制限時間は2時間でした。内容としては簡単な行列/テンソルの作成・四則演算ぐらいで,解くのに40分もかかりませんでした。100 numpy exercisesを最初の20問やっておけば100点取れるレベルです。点数は公開されませんが,私は100点満点取れたと思います。
 

抽選

Numpyのテストの後に抽選?があったようです。numpyのテストがあまりにも簡単だったので抽選に進めたのは100点近いスコアの人だけだったのではないでしょうか。また最終的な受講者は多様性に富んでいたので,抽選とは言いつつも様々なバックグラウンドの人を選んで取ったのではないかな,と推測してます。
 

倍率

第1, 2期は10-20倍くらいだったと懇親会で公表されたらしいですが,3期の懇親会はまだ開かれていないので倍率についてはよくわかりません。

 

プログラム内容

Githubからのスクショになりますが,プログラムはこのような内容です。毎週木曜日にiLect上に教材とコードが公開され,そこから1週間かけて課題を解くという形でした。
 

f:id:shinmee:20200520135126p:plain

7週に渡ってテーマごとの課題を解きました。課題はKaggleと同じ形式で,データを渡され,1日毎にPublic Leaderboardのランキングが発表され,週の最後にPrivate Leaderboardのスコアが発表される形でした。(ちなみに私は,ガーナ出張と日本帰国が丸かぶりで最後の2週分は提出できませんでした。)
 

最終課題

  • 11月26日: 最終課題発表
  • 1月9日: 締め切り (提出率が悪いので2週間延長)
  • 1月23日: 正式な締め切り

11月26日に最終課題の進め方について運営の方から連絡がありました。

私は「画像認識(CNN)と衛星画像を用いた途上国におけるスラムの判別」というテーマで取り組みました。仕事納めのクリスマス直前からデータを集め始め,年末年始で解析し,最終的に日本語論文 (8ページ・9000字)としてまとめ提出しました。概要は以下です。

  1. 画像の取得: Google Mapからガーナの高画質衛星画像をダウンロード
  2. 前処理: 衛生画像をタイル上に切り取る
  3. アノテーション: 一部のタイル画像にslum or non-slumのラベル
  4. CNNモデル作成: VGG16で転移学習
  5. 推論: 最後にアノテーションしていない残りの画像を予測し,スラムの場所を特定
アノテーション済みのタイル画像
VGG16のアーキテクチャー

結果発表

運営の方が独自性/完成度/アイデアの3つを基準として最終課題を採点し,受講者は平均点と自分の点/順位を教えてもらえました。私の結果は以下のような感じで,総合7位でした。

f:id:shinmee:20200520135325p:plain:w400

受講生の数は講座開始の時点で120人くらい居たそうですが,最終的な修了生は54人ということでした。

修了後の繋がり

修了後はfacebookのグループで1,2,3期生全員がコミュニケーションを図れるようになっています。またツイッターでも個人的に繋がっている人達がいます。

懇親会が3月10日に予定されてましたが,COVID-19のせいで延期になりました。

 

感想

学んだこと

  • 単純なニューラルネット,LSTMあたりは専門書で勉強して仕事で使った経験もあったのですが,生成モデルや強化学習は初めて学ぶ内容でした。まだまだ身についた気はしていないのですが,学ぶ取っ掛かりができてよかったです。
  • 一番大きな学びは,最終課題を通して衛星画像の解析について学べたことでした。生の衛星画像をゴリゴリ前処理しながら解析したのは初めてで,衛星画像の知識やQGISなど勉強するものが多く,非常にやりがいがありました。

良かった点

  • 毎週課題が義務付けられる点: 修了するために取り組まざるを得ない状況はプレッシャーと共にやる気を与えてくれました。
  • Slack上での情報共有: 課題を解くための方法を受講者同士で共有できたので,Githubの教材を独学で学ぶより生産性が高かったと思います。
  • 無料である点: この規模の講座を開くのは結構な労力が必要だと思うのですが,すべて無料です。すごいです。ありがとうございます。

注意点

  • 教材が完全に既習者向け: 機械学習の初学者の人は軒並み脱落していったのではないかと思うほどに,ビギナー向きではありませんでした。教材の中で数式の展開は大幅に端折られていました。というのも,DL4US自体が理論ではなく実践(コーディング)がメインの講座だからです。これからDL4USに応募しようと考えていて機械学習の知識のない方は,機械学習と深層学習の本を1冊ずつ読んでから臨むのがよいと思います。

 

DL4USについてのまとめでした。深層学習について学んでみたい方は是非次の機会に応募してみてください。