2017年のふりかえり

2017年のふりかえり

前回の更新から約半年。
時間が経つのが本当に早い。
2015年は仕事とボクシングで毎日同じことの繰り返しの1年で、2016年は新しい環境を変えて新しいキャリアをスタートさせた年だった。
2015年を孜孜忽忽、2016年を心機一転と例えると、2017年は多事多端だった。

年明けから将来のことで悩んでいた。

もともとNAISTで自然言語処理の研究を始めたのは理由が二つあって、一つは言語とコンピュータが交わる自然言語処理という分野が面白そうだったこと、もう一つはコンピュータ・サイエンスをきちんと学んで学位を取りたかったことだ。
動機としてはわりと後者が強くて、大学時代は文系の学部に所属しながら独学でプログラミングを勉強して、性に合っていたのでそのままエンジニアとして就職して、仕事はやりがいがあったが技術者としてもっと実力を付けたいと感じていた。
CSの勉強・技術の習得は働きながらでもできるし実際していたが、まとまった時間が取りたかったのと、学位を取りたかったのと、二つの理由で大学院に行くことは早いうちから考えていた。

(考え始めたのが大学4年生の半ばで、理工学部の3年次に転部するのは金銭面的に難しく、また当時は(学費のかからない)海外の大学院に行くことを考えていたが、やりたい研究がないうえにその分野での強みを主張できるバックグラウンドがなく、選考を通るための十分な効果のある推薦状を集められる見込みがなかったのでいったん就職した。
結局学生生活の残り半年はバックパックで海外放浪して、いろんな人と交流していくうちに言語って面白いなと思うようになって外国語をあれこれやっていたのだが、その後就職してから自然言語処理という分野を知った。)

学位にこだわる理由は、CSの学位を取ることは日本では重視しない風潮もあるが、将来海外で働く・腕一本で食べていくなら凡才にとっては正攻法だからだ。
(絶対海外で働きたいというほどの強い希望ではなく、文化・言語・給与・労働環境の面で気に入った国・企業が見つかったときに行けるような状態にしておきたいという希望があった。大学3年のときにウクライナの企業でインターンをした影響もある。)

それでやりたい研究が見つかったときに大学院に行こうと決めていたのだが、自然言語処理というまさに興味のど真ん中にある分野を知ったので進学することにした。
ただ、どこの大学院に行くかが問題だった。

自分は人生の目標とか特に持っておらず、理想の将来から逆算して今の行動に落とし込んでいくのも好きじゃないので、やりたいことができて将来の選択肢を狭くしない方向ならやってみれば良いという考えだ。
それで技術者としての実力を伸ばしつつ、そのなかで将来の選択肢を最大化させる戦略をとるなら海外の大学院がベストだと判断した。
そうして首都大の小町先生に相談に乗っていただき、海外の大学院に行くにしてもまずは国内で修士を取ったら良い(もっと言うと海外でNLPのエンジニアとして就職するなら、日本語の言語処理ができるほうが需要があったりする)と助言いただき、まずはNAISTの博士前期課程に進むことにした。
国内で修士を取ったほうが良い理由として、業績・バックグラウンド・推薦状が得られる以外に、平均6年かかる米大学院のPh.D.を取るだけの覚悟・情熱・能力があるか見極めるため、だということだろう。

それで昨年NAISTに来て、やはり言語処理や情報系の授業は面白かったのだが、研究はうまくいかなかった。
M2の12月に米大学院のPh.D.コースに出願するには遅くともM2の夏からは準備が必要で、(できれば春にはある程度TOFELなどの試験の点数は取っておいて留学支援の奨学金を獲得して留学先のラボから学費・給料を払ってもらう必要がない状態にしておくのがベターで、)それまでに何かしら業績を出そうと思うとM1の冬の国際会議の投稿シーズンで論文がアクセプトされる必要があり、文系出身の学生がGPA4をキープしながら言語処理の研究をゼロからスタートして半年ちょっとで論文を出そうとするのは大変なプレッシャーだった。

結局年明け時点でシーズン中に投稿できそうな結果が得られておらず、落ち込んだ状態で2017年はスタートした。
そんな感じなので今年はまず進路を考え直した。
そもそも何で米大学院に行きたいんだっけと考えたところ、(当面は)NLPの研究がしたい、選択肢を最大化したい、というぐらいしか動機がなく、企業や大学などの研究機関で研究者として働きたいというようなモチベーションではなかったので、それなら6年かかる米大学院にこだわらなくていいし、いったん修士で卒業しようぐらいに気持ちを切り替えた。

前置きがかなり長くなったが、以降は雑に四半期ごとにふりかえる。

1-3月

職務経験があるので転職エージェントに問い合わせる。
希望の企業が新卒のほうが入りやすい場合を除いて、基本的に中途で受けましょうという話にまとまる。
それなら就活するのは2018年からになるので、それまでは研究など好きなことをやることにする。
この時期彼女の体調が良くなかったので家によく通って身のまわりのことをしていたが、そういう生活も無理があるので同棲することにした。
NAISTの寮を出て部屋を借りる。
学校までの定期代がNAIST寮の家賃・光熱費の総額と同じなので、単純に新居の家賃分負担が増えた。
前年まで社会人だったので貸与型奨学金を借りることもできず、学費免除の申請さえできず、社会保険料や税金・学費の支払いで貯金が尽きそうになる。
仕事を増やさないと支えていけないので、不定期に請け負ってたフリーランスの受託開発業を拡大することにして法人化した。
うまくいかなかったら就職すれば良いだけなので、そんなに気は苦しくなかった。
というか法人設立の手続きと受託の仕事でいっぱいいっぱいで、先のことを考える余裕があまりなかった。
この時期は全く研究してなくてごめんなさい。

4-6月

M2になった。
5月に案件が落ち着いたので遅れを取り戻すように必死に研究した。
M1までやっていたテーマで、タスクを変えて取り組もうと思ってしばらく手を動かしたがうまくいかず。
何となく手に取った論文を読んでいたらアイデアをひらめいて、さくっと実装・実験したらM1のあいだ取り組んでうまくいかなかったタスクであっさりと先行研究の数字を越えた。
いくつか原稿を書いて投稿した。

7-9月

研究がうまくいったことに気を良くして、学内の博士後期課程の選考を受けた。
いつでも就職できるし失うものがないので二足のわらじでやっていこう。
12月現在、未だに博士後期課程に進む強い動機がなくて、研究したいのと、選択肢を広げたいのと、それぐらいしかない。
あと博士号があったら自分で自然言語処理関連の事業をするのに説得力?があるぐらい(適当)。
真面目な理由として、今やっているテーマに使命感をわりと持っているし、重要な課題なので、指導教官の松本先生が退官される前に完成させたいという思いがある。
そういう意味で今の研究室に後から戻ってくることはできないし、今しかできないことなので良い決断だった。
この時期にIJCNLPにアクセプトされた。
彼女の通院の付き添いに車があったほうが便利なので免許を取った。
インターンに行かず仕事も断っていたので、合宿じゃない普通の教習所に通い詰めて4週間かからないぐらいで取れた。
免許もらった日に嬉しくて車借りて走ったら車がカクカク動くので事故を起こしそうになった。
サイドブレーキを引いたまま走っていた。

10-12月

新しいタスクで研究を進める。
前半はずっと研究をしていたが、実験した結果筋の悪い手法だと気が付いて振り出しに戻る。
11月から新しい案件が始まって、結局年末までずっと研究と仕事を週40hずつやっていた。
ピーク時は計100hを越える週が続いて、体力的に限界だった。
台湾で学会発表があったが、会議に参加している時間以外はホテルに籠もっていたので残念だった。
あとはオープンソースのディープラーニングのフレームワークの開発に携わっていた。
年末年始帰省する予定だったが、この時期しか集中して研究できないので断念。
修論はほぼ終わった。

総括

今年は時間の流れが異様に早くて、何もしていないうちに終わってしまったと感じていたが、振り返ってみると1年前と比べてできるようになったことが増えた。

まず、仕事・研究を通じて技術に関するスキル・知識がかなり強化された。
M1の授業だけでは情報系の学部で習うようなことは全てカバーできないので、今年はHDLでCPUを書いたり低レイヤーのことを自習した。
それからC++でコードを書く機会が増えて、ポインタやメモリの理解が進んだ。
(恥ずかしながらこれまでは教科書的な知識しかなかった。)
特に11月末からフレームワークの開発に加わるようになって、C++のプラクティス等を教わることが多くて大変な刺激を受けている。

研究関連では、ディープラーニングのフレームワークやニューラルネットワークのモデルなどの実装周りでかなりの知見を得た。
今年はACL2017やEMNLP2017などの論文をけっこう読めた。
国際会議に初めて参加して発表をした。
研究テーマについての発表を学内2回、研究室で2回、受験で1回、外部の勉強会で1回、研究会で1回、国際会議で1回を行い、練習になったし有益なコメントを得て取り組んでいる課題の重要性を感じられた。
他にも学外の勉強会で自分のテーマ以外のNLPのことで発表する機会もあった。

仕事では、法人の経営を通じてフリーランスでやるのと違う苦労を味わった。
社会保険料を払うことがどれだけ大変か感じた(自分で経営すると負担は実質折半でないので)。
あとは仕事量のコントロールが難しかった。
案件は請ければ売上は伸ばせるが、自分が動くとスケールしないし結局時間の切り売りなので、いつまでもフリーランス感覚でやっていってはいけない。
とは言え人を雇うと労務管理の負担がいっきに増大するので、どこで踏み込むかは難しいところ。
個人事業として最後に受託した案件で、納品をした途端に先方と連絡がつかなくなり、司法書士と相談しながらあれこれ法的な措置を試みたが、最後まで逃げられてしまった。
数10万円の売上なので訴訟を起こすにも弁護士に依頼するのは見合わないし、かと言って支払督促はうまくすり抜けられてしまうことを身を以て知った。
契約・法務の知識、専門家への相談の重要性を痛感した。
自然言語処理関係でいくつか案件に携われて良かった。
研究と仕事で専門分野を活かせると研究開発・実務の両面で見えてくるものがあるので増やしていきたい。

反省点としては研究を進めるうえの基礎力を十分に積み増せなかったこと。
具体的には機械学習の理論的な理解がいまいちな気がしていて、各手法をツールとして何となくは使えても機械学習理論の論文を読むのはかなり辛い状況。
プログラミング、英語の読み書き、学部教養レベルの数学は問題ないが、最先端の機械学習理論についていくだけの数学力が足りていない。
あとは去年から強化学習の勉強をしようと思っていてできていない。

ともかくできることが増えたと素直に感じられるなら、今年はそんなに悪い年でもなかったように思える。

来年やることは具体的に決めるつもりはなく、今年やり残したことを進めつつシンプルに良い研究をしたい。
博士前期課程は修了するとして、それ以降は研究者としてのキャリアにこだわりはないので、納得するところまで今のテーマをやり切ってから次を考えたい。
そのために常に新しい論文を追いつつ、古典的な名著を通じて研究のバックグラウンドを理解することを心掛けたい。

LINEで送る
Pocket

コメントを残す

*