第6回統計・機械学習若手シンポジウムにお誘いいただいてスパイキングニューラルネットワークの話をしてきたついでに懇親会で年上風をビュンビュン吹かせて色々ベラベラと喋ってしまい、ああ俺も歳をとってしまったことよと恥いるばかりだった。しかしその時のトピックが割と真面目なトピックだった上に少し誤解を生みかねない回答をしたので、きちんと文書に残してケリをつけておいた方がいいかと思い筆をとった次第である。
はじめに
まずその時の話を簡潔にまとめたい。その時のトピックは
やろうと思った研究の先行研究が見つかって悔しいと思うかどうか
だった。これに対し
悔しいと思うが、自分の方向性は間違っていなかった、その方向に一歩進んだ研究を誰かがやってくれて逆にラッキーだったと前向きに考える
といった旨の回答が多かったと記憶している。一方私は
そもそも先行研究が見つかるということは、研究のための勉強が不十分であるということが多いので、悔しいと思うよりももう少し勉強しようと反省する
また「先行研究が見つかった⇒自分の方向性は間違っていない」は偽である
という回答をし、年上風を吹かせたのであった。
本題とはあまり関係ないが、この話の流れでは二つの意見を対等に比較しづらいことに注意したい。パネルディスカッションなどで、常識的なコンセンサスができている時にちょっと違う観点の回答をすると、なるほど、となりやすいものである1。私自身もそのメソッドの使い手なので、今回も場を盛り上げようと上記のような回答をしてしまったわけである。
もちろん間違ったことをいったつもりはないのだが、上の回答は私が正しいと思っていることの中で盛り上がりそうなところをハイライトしたものなので誤解を生みかねない。そのため本稿では私が考えていることの全体像を記述してその補足をしたい。
より誠実な回答
例えば一対一で上記のようなことを相談された場合、上記のような回答をする可能性は低いと思う。そもそも悔しいと思う気持ちは本人にとっては真実なのでそれは否定すべきではない。むしろ悔しいと思う気持ちへの対処法や悔しいと思う原因を探る必要がある。悔しいと思う気持ちへの対処法は、究極的には時が解決するのを待つしかないので、ここでは悔しいと思う原因について議論したい2。
悔しさの分類
先行研究は研究のいろいろな段階で見つかるものだが、手を動かす前と後とで感じる悔しさが違う。手を動かす前に先行研究を見つけた時の悔しさは、一本論文が書けそうだったのに書けなくなってしまったが故の悔しさで、手を動かした後の悔しさは、先の悔しさに加えて、費やした労力が無駄になってしまったが故の悔しさだろう。
1番目の悔しさはおそらく研究キャリアが浅い時ほど感じる悔しさである。私自身も研究をはじめた頃は、自分が考えたことがことごとく先行研究でやられたりしているのを見て、何をやったら研究になるのか途方にくれていたことがある。この状況で悔しさを感じる人もいると推察する。これは研究プロセスの全体像が見えていないことに起因するのではないだろうか。研究プロセスの全体像が見えていない段階では、研究者は皆どこからともなくぽんぽんと研究テーマを見つけて順調に業績をあげていると思っていたので、自分も研究に早く取り掛かりたいと気持ちが焦っており、先行研究が見つかって先に進めなくなるたびにガッカリしていた記憶がある。しかし自分なりの研究プロセスの全体像がわかってくると、論文ネタがどのくらいのペースで出てくるのかがわかるので、ネタ被りしたところでまあそんなものかと思うのである。 この悔しさに対処するためには、研究プロセスの全体像を把握すること、そして自分にあう研究プロセスを見つけ出すことが必要になる。
2番目の悔しさはこれ以上深掘りする必要がないくらい明確であるし、この悔しさを感じるのは当然である。またこの悔しさはどんなに研究に慣れても薄れることはない。 この悔しさに対処するためには、無駄な努力をなるべくしないような研究プロセスを考える必要がある。
以上より、悔しさを少なくするためには、
- 研究プロセスの全体像を知ること
- なるべく手戻りの少なく再現性の高い自分の研究プロセスを確立すること
が必要になると考えている。
悔しさ最小化のための私の研究プロセス
上の二つのために、私の研究プロセスを紹介し、そこでどのように工夫しているか紹介したい3。まず私の研究の型をあえて手続き的に書いてみると以下のようになる:
- 面白そうな分野を見つける(or 面白そうなことを考えて、それに一番近い分野を見つける)
- 分野の勉強を一通りして手を動かして遊んで、何か問題を考えてみる
- if 何も問題が見つからない or 飽きる or 小粒な問題しか見つからない then goto 1
- 既存の解決方法があるか探してみる
- if 既存の解決方法が見つかる then goto 2
- 新規の解決方法を考えてみる
- if 新規の解決方法が思いつかない then goto 2
- 論文化を考える
私の中ではステップ1から5までを「勉強」、6以降を「研究」と呼んでいる。
手戻り最小化について
「想定外に前のステップに戻ること」を手戻りと定義すると、上の手順ではステップ6以降で先行研究が見つからない限りは手戻りが生じないのである!屁理屈だと思われるかもしれないが、実際は(少なくとも私の)研究とはこんなものなのである。これは
そもそも先行研究が見つかるということは、研究のための勉強が不十分であるということが多いので、悔しいと思うよりももう少し勉強しようと反省する
と述べたことと対応していて、自分は上の手続きでまだ勉強段階であると認識するだけなので何も悔しくないのである。また知識をつけることは研究の基礎体力を鍛えるための唯一の方法だと思うので、ステップ1,2は決して無駄になることはないし、8に至る頃には分野の土地勘がついた状態になっているはずなので、先行研究が見つかるリスクはかなり小さくなっているはずである4。
アウトプットの安定性について
コンスタントに研究のアウトプットを出す工夫としては、上の手続きの中で常に研究テーマを複数の粒度で捉えておくことがあげられる。例として、スパイキングニューラルネットワークの論文に辿り着くまでの流れを上の手続きを元に説明したい。
はじめは、数理モデルの観点からスパイキングニューラルネットワークの利点が言えるかどうかに興味を持っていた(ステップ1)。この問題は私の知る限り結論は出ておらず、できればインパクトが大きいが具体性が低い。より具体的なテーマを考えるために色々論文を読み込んでいるうちに(ステップ2)、学習アルゴリズムのことが気になってきた。シミュレーションを通じて利点を考えようと思ったときには何かしらの学習アルゴリズムを使う必要があるが、標準的なものがないように見えたためである。そこで少し脇道にそれて、使いやすい学習アルゴリズムを考えてみよう、と少しテーマを変えた(ステップ1)。
じゃあ使いやすいアルゴリズムとは何かを考えると、微分可能な点過程があると良さそうだと考えつく(ステップ4)。既存の方法で使えるものがなかったので、微分可能な点過程を作って(ステップ6)論文化に行き着いた(ステップ8)。
元々のテーマと比べると小粒にはなったが、これはこれで一本の論文分の価値があるし、これができると元々知りたかったことに(シミュレーションを通じて)近づける可能性があるのでやる価値がある。ただしこのような論文はいわば補題みたいなもので、それ単体で大きな価値が出るわけではないし、元々やりたかったことがまだできていないことは忘れてはいけない。
以上をまとめると、悔しさ最小化のためのポイントとしては
- 先行研究が見つかるというのはまだ勉強の段階であることのサインであることが多いが、それを(適切に)繰り返していけばそのうち論文に繋がるので諦めない
- 大きい研究テーマを考えておくと、全てがやられていてテーマが思いつかないということにはなりにくい
- やりたいことを実現するには何が必要かを考えると、取り組みやすい部分的なテーマが見えてくる
があげられると思う。
ただしどのように面白いテーマを考えるか、分野を一通り勉強するとはどういうことかなどを判定するには経験が必要なので、自分がどの段階にいるのか、そして正しい方向に進んでいるのかを判断するには多くの場合適切な指導を受ける必要があることに注意したい。
おわりに
本稿では先行研究が見つかった時の悔しさについて整理し、その悔しさをなるべく小さくするための研究プロセスを紹介した。ただしここに書いてあることを読んでも悔しさを最小化した研究ができるようになるわけではないと思う。結局は自分の悔しさの原因を自分で理解しそれに対処する方法を見つける必要がある。それを考えるきっかけとして本稿が参考となれば幸いである。
補遺
「先行研究が見つかった⇒自分の方向性は間違っていなかった」は偽であると主張したい。角が立つのであまり公に言われることはないが、世の中あまりよくない研究もたくさんある。見つかった先行研究が分野の重要な研究の場合は方向性が間違っていないと思ってもいいかもしれないが、そうでない時には自分の着眼点の良し悪しは判断できない。これに関連して論文の良し悪しの話をした記憶があるのだが、それはまた元気があれば書きたい。