新しいものを試しにやってみる

午前中、大学院(博士前期課程)に来年度の入学予定の学生と、研究テーマなどなどについて話す。事前に準備(心構え)をしているかどうかで結構違うと思うが、学生側から言われない限りは特にこちらから「研究について考えてきてほしい」とは言っていない(プログラミングについては、情報系出身じゃない人には Aizu Online Judge で練習してきてほしいと言っているけど)。

お昼は10月入学の学生のアカウントを研究室サーバに作る。LDAP で管理しているのだが、1台なぜかうまくログインできないサーバがあり(たまたまそれが最初にログインを試みたサーバだったので、少し手間取った)、/etc/init.d/libnss-ldap restart する必要があった。キャッシュの問題だろうか……。

そういえば、深層学習フレームワーク、うちで最初に始めた学生は Theano で書いていて、次に Chainer が席巻し、今は DyNet、Torch、TensorFlow など少しずつ他のフレームワークを使う学生も増えてきた感じ(ただし、Chainer を使う学生たち以外は、あまりフルスクラッチで書いてないと思うけど)? この部分は(うちの研究室的には)あまり勝負するポイントではないと思っているので、なんでもいいといえばなんでもいいのだが、学生同士の間での情報(知見)共有という意味ではある程度同じものを使った方がスムーズである一方、新しいものを試す人も一定程度いた方がいいと思ったりする。いま始めるなら確かに世の中的には TensorFlow(keras)で書くのかなという気はするが、それぞれ一長一短あるし、なんでも書ければいいのだ。

ちなみに、そこそこコーディング能力がある人は周りの人が使っていないフレームワークに手を出してもいいと思うが、そうでないなら周囲に聞ける人がいるフレームワークを使った方がハマる可能性が低い。特にそれが正しく動いているかどうか分からないというレベルの人は、あまり周囲と違うものを使うとアドバイスのしようがなくなってしまうので……。

午後は受託研究のミーティング。修士論文の提出と前後してしまったのでミーティングの期日を延ばしていただいたりしてご迷惑をおかけしてしまったが、なんとか成果が報告できてよかった。しかしこの受託研究は我々の側の方が学ばせてもらった(どういう設定だとうちの研究室の強みが出せるか分かった)ように思う。基本的には教師あり学習の設定だが、教師データを作る(タスクを設計する)ところから関わって、大規模データな生データと組み合わせて何かをする、という設定が一番お互いにとって得るものが大きいと思った。

夕方は受託研究に関するお疲れ様会。受託研究に参加してくれた学生たちを交えた慰労会を企画していただいたのである。お疲れ様会の時間に関しては色々無理を聴いていただき、お店が19時からオープンのところ貸切で16時半開始にしていただいたり、お手数をおかけして申し訳ない。

色々とお話をお伺いすると、タイミングというのが大事なのだなと思うことしきり。企業でも「この分野に力をかける」というのがマッチすると一気に伸びたりするというのはよく分かる(昨今の人工知能自然言語処理ブームを考えると、いつまでこれが続くのか、という気分)。まあ、すぐしぼんでしまうこともあると思うけど……。期間的に長期間お付き合いいただけるのが恐らく企業の方にとっても、学生にとっても、自分にとってもいいことだと思っているので、今後とも末長く(細く長く)協力していけたら嬉しいなぁ。