seri::diary::graduate_school

大学院修士課程での研究生活について書いています

分散深層学習の研究を行うために必要な知識な得るためのステップについて考える

2018年3月19日

UQ消化期間に突入したのでぼちぼち研究活動の前段階であるinputをかき集める作業に着手している。 が、その前に、分散深層学習に関する研究をするためにはどのようなステップが必要なのか考えねばなるまい。

研究すること

  • ディープラーニングの学習および推論フェーズにおける計算機科学的な問題のどれかを解決する手法を提案する
  • 計算機的な問題とは
    • スループットの低さ
    • 学習におけるスケールアウトの難しさ
      • ChainerMNのスライドとか見ると モデル並列データ並列 、および 同期型非同期型 のアプローチの系統があるらしい
    • NWボトルネック
    • GPGPUの活用
      • でもこれCUDA使う以外に何かできることあるんか?

現状

4月中にやること

  • ゼロからDeep Learningを熟読する
    • 多分これがエンジニア脳には一番やさしい
  • 深層学習本の知らないところだけを読む
  • OSSのDLフレームワークに関する以下の項目を調べる
    • スケーラビリティ
    • ネットワークの実装スタイル
    • パフォーマンス(これは実際に研究室のマシンで動かしたい)
  • DLの代表的なベンチマーク的なアレを調べる
  • 一方でMapReduceを適用するケースについてもやりたいので手を付けておきたい