seri::diary::graduate_school

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

入学した

2018年04月06日

f:id:serihiro:20180406205058j:plain

日が開いてしまったが、今日無事入学式を迎えた。

引っ越してからは転入届出したり国民年金加入手続きをしたり諸々書類を書いて郵送したり細々としたモノを買い揃えたりと一週間ぐらいずっとバタバタしていたのだが、なんとかそれらの作業も一段落し、無事学生としての生活をスタートする準備が整った。

研究室の席も決まったので今まで使ってたHKKBも持ち込んでいつもの環境を整えた。まだ研究室の鍵の利用申請ができていないので誰かいる時間にしか入れないのだが、来週には鍵の利用申請をして24時間いつでも研究室に行ける体制を整えられる。

引っ越しのバタバタで中断していた研究関連の作業(必要な知識のinputとか先行研究の論文を読むとか)も明日から再開できそう。

引っ越し前夜

2018年3月30日

今日東京で住んでいた部屋を退去してきた。荷物の搬入は明日なので、今日は研究学園駅前のビジホに一泊し、明朝不動産で鍵を受け取り、新居に向かう。 f:id:serihiro:20180330165856j:plain

宿泊先は去年8月の院試前日にも泊まったホテルマークワン 研究学園駅 である。

serihiro-graduate-school.hatenadiary.jp

院試に落ちていたら入試のタイミングが筑波大学およびつくば市見納めのタイミングになるところであったが、なんとかまた来ることができた。そして少なくとも明日から2年間はつくば市で生活することになる。

論文の書き方もわからない状態なのでこれから色々大変だろうけど、ようやく得ることができた「自分に100%投資できる時間」なので大事に使っていきたい。

マネーフォワード確定申告に登録した

2018年3月20日

2018年度*1から確定申告が必要になるのでマネーフォワード確定申告にアカウントを作った。
といってもすでにマネーフォワード家計簿を使っていたので、同じアカウントをそのまま使いまわす感じだった。
ただ、バイト代の入金口座は別にしてあるので別途口座を登録し、MF家計簿の方で登録している口座はMF確定申告の方で対象としないように設定した。便利。

他の税務系のタスクだと、青色申告を行うために開業届と青色申告承認申請書を提出しなければならない。だが、入学直後からいきなりバイトはしないと思われるので、バイト始めるタイミングで出しに行こうと思う。会計年度の1月16日以降に開業することになるので、開業届と青色申告承認申請書を同じタイミングで出せば2018年度分は来年青色申告できるじゃろ多分。

biz.moneyforward.com

ちなみに個人事業主を止めて青色申告を止める時も手続きが必要らしい。

biz.moneyforward.com

*1:個人事業主なので会計対象は2018年1月~2018年12月

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

2018年3月19日

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

研究すること

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

現状

4月中にやること

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

研究室訪問(1年ぶり)

2018年3月8日

余っているUQ*1のを使って研究室訪問した。前回研究室に来てから実に1年ぶりである。

serihiro-graduate-school.hatenadiary.jp

午前中は担当教授*2と研究の進め方について話し、午後は研究室の先輩に研究室用のメアドを作ってもらったりslackに招待してもらったりssh用の公開鍵を登録してもらったりした。

とりあえず、今年のスケジュールとしては10月に論文を一本どっかに出せることを目標とすることで進めることになった。逆算すると4月~7月でテーマを絞り込まなくてはならない。 思ったより短い感はあるものの、1日の間に使える時間は今よりも長くなるはずなので、スケジュール感覚も少しずつ学生のそれに合わせていかなくてはなるまい。今だと「何かを勉強する」というのは、仕事以外の時間でやるので1日2時間やれたらいい方かなという感覚だが、学生だと講義が1コマしかない日だと最低6時間程度は自由に使うことができるだろう。この辺のスケジュール感覚やペース感覚をまず覚えることが今年前半の課題にはなりそうである。
テーマについては、MapReduceの何らかのレイヤーでの処理の高速化手法について考えるということで大枠は決まったが、具体的なユースケースとして何のアプリを動かすか、というのが決まってなかった。他の論文だとよくWordCountを使っているのだが、それだとどうもパンチが効かないというか印象が弱いのであまり誰もやってないのがいいらしい。かつ、HPC上での実装が前提になるので、計算料が多いアプリケーションの方がよい。ということで、ボスの提案もあり、ディープラーニングMapReduce、もしくはクラスタで分散環境で実行するケースにおける高速化を仮のテーマとすることにした。ニューラルネットワークは過去にゼロから作るDeep Learning ―Pythonで学ぶディープラーニングの理論と実装を読んで実装したことはあるが、ホントに基礎的なものだったし、そのあと丸1年以上触ってない関係でだいぶ忘れてしまった。*3

serihiro.hatenablog.com

そのため、ディープラーニングを実装するとして、ディープラーニングの最近の研究トピックや、主流の実装方法については殆ど無知に近い状態である。そのため、まずはここからやらねばならない。入学式を経て、本格的に講義と研究が始まる前までにできるだけ事前に調査を行って、最低限研究室の鯖をいじれるようになったらすぐに着手できるようにしたい。

で、色々調べたところ、自分の研究主旨である「クラスタ上で分散実行」や「GPUを使って高速化」して実行するのに良さそうな、Deeplearning4jという、java実装のディープラーニングの実装フレームワークを使おうと考えている。*4

deeplearning4j.org

分散ディープラーニングと言えばChainerMNがあるが、DL4JはSpark, Hadoopとの連携(どのレベルの連携なのかまだドキュメント読み切ってないが)が可能であり、分散処理レイヤーとは切り離してディープラーニングの学習モデルを実装できる。これにより、分散処理レイヤーの差がどれぐらい実際に動作するアプリケーションのパフォーマンスに影響を与えるかを評価することができるような気がしている。

昨日、筑波から東京に戻ってから夜試してみたが、サンプルコードが豊富で、毎度おなじみMNISTもあるし、ドキュメントもそれなりに充実しているので、しばらくこれをいじってみようと思う。

あと、ディープラーニングについては日本語が出たばかりのこの書籍を買った。ちなみに原著はweb上で全文が公開されているという太っ腹っぷりなので、訳が怪しそうと思ったら原著を当たればよい。便利。

*1:なおUQは10営業日休んでも余るぐらいはあった

*2:以下ボス

*3:今思えば勿体ないことをした…当時はこの勢いで機械学習エンジニアマンになるで!とか思ってたが、色々あってjsonおじさん業を続けてしまった

*4:以下DL4J

入学手続書類を出した

2018年2月21

当初の予定通り2月17日に入学手続書類一式が届いた。記入すべき書類の量に面食らってすぐには書く気にはなれず数日寝かせた。 f:id:serihiro:20180217121121j:plain

手書きでもろもろ記入するのは大変だったが一通り書いて、午前休とって銀行と郵便局に行って入学金やらなんやらを払って郵送した。

これで入学に関する手続きは一通り終わったはずである。何事もなければあとは入学式に出てそのあとのオリエンテーションに出れば学生証とかもらえるはずである。
これで当日行ったらあなたの学生証ありませんとか言われたらウケる。

仕事の方も徐々に引き継ぎがメインになりつつある。今のチームのメンバーに迷惑をかけないように円満に最後を迎えたいものである。

引っ越し準備進捗

2018年2月4日

f:id:serihiro:20180128094829j:plain

現時点での引っ越し進捗

  • つくば市の不動産屋に何度か出向いて部屋を決めて契約した
  • 今の部屋の退去の手続きをした
  • 今の部屋の火災保険の解約手続きをした
  • 引っ越し業者の手配をした
  • 不用品を処分するための粗大ごみ回収の手続きをした
  • 直前だと引っ越し用の段ボールの在庫がなくなるのが怖かったので段ボールを買った
  • 電気と水道以外の各種インフラの引っ越し手続きをした(幸いなことに全部webで完結できている)
  • 今使ってるジムの解約手続きをした(そういえばつくば行くと近所にジム無いなー)
  • 研究室に手続きに必要な書類をいくつか書いて返送した

これからやる

  • ベッドと照明器具を粗大ごみに出す
  • アコギとサイレントギターを売る
  • WiiUを売る
  • いらない本を売ったりオフィスに置いて来たり人にあげたりして減らす

引っ越す度に物が減ってどんどん身軽になってきつつある。身軽になっていった方が何かと都合がよいと分かったのは3年前に半年の間に2回引っ越しをしたときだ。

身軽であることの良さは累積的に大きくなる。 一度ものが減ってスッキリした経験をすると、普段からいかにものを買わずに過ごそうかという気持ちになって、余計な出費は減るし、部屋は狭くならない。いらないものはすぐに捨てる。そうなるとますますスッキリする。ミニマリストを志向する人の気持ちが少しは分かるが、自分はスマホmacbook proとHHKBとipodkindleだけは何があっても手放せないので、真のミニマリストから見たら爆笑される程度のレベルにしか到達できないだろう。ミニマリスト道は厳しい。

自分の部屋は自分がPCをいじるための机と椅子が全ての中心で、そこで1日中過ごせるように設計されている。大学時代に一人暮らしをしていた時はこたつとか置いてたが、6畳程度の1kに住むようになってからはすっかりこのスタイルに慣れ親しんでいる。 本もなるべくkindleで買うようになってからあまりスペースを取らなくなった。服も靴も同じブランドのものしか身に着けなくなったが何も問題がない。

シンプルでよいのだ。多様性は自分のアウトプットだけにあればよい。