見出し画像

スタンフォードで学んだ研究の生産性を上げる4つの方法

概要:

- 自己紹介:@ryosuzk
- いつ行ったか:2015年の夏(5-8月頃)
- どこに行ったか:スタンフォード大学 Human-Computer Interactionグループ
- 何をやったか:Human-Computer-Interactionに関する研究(CHI’16
- どうやって行ったか:カンファレンスで突撃(コネ無し)

今回は海外留学アドベントカレンダーということで、PhD留学が始まる直前の2015年の夏にスタンフォード大の某研究室でインターンをしたことについて書こうかな、と思いました。

といっても、インターンの経緯的なことは他の方が書いてくれると思いますし、僕のようなペーペーからアドバイスできるようなことはなにもないので、純粋にその時のインターンシップでどういうことを学んだか、どういう知見が得られたか、というのを伝えられたらと思って書きました。海外のインターンに行く際だけでなく、ふだんの研究方法の参考にもなれば幸いです。

(ただ、サンプル数の少ない経験から得られた知見なので、かなり偏っている点もあるとは思いますが、ご了承ください。)

ちなみに、スタンフォードに居た時は、Larry Pageが20年前にGoogleを作ったまさにその部屋で作業してました。


生産性の高いラボ

スタンフォード大の某研究室でインターンをしていたわけですが、そこのラボは、僕が知ってる中でもかなり生産性の高いラボで、僕の研究分野であるHuman-Computer Interaction(HCI)におけるトップカンファレンスである、CHI、UIST、CSCWなどにかなりの量で通してます。
例えば、CHIを例に取ると、
- CHI 2017は4本(うちBest Paper 1本)
- CHI 2016は6本(うちBest Paper 2本、Honorable Mention Paper 1本)
- CHI 2015は5本(うちHonorable Mention Paper 5本)というような感じ。

注1:CHIはHCIにおけるトップカンファレンスで、CGにおけるSIGGRAPH、MLにおけるNIPS、CVにおけるCVPR、NLPにおけるACLのような位置づけと考えてもらえればいいかと思います。
注2:Best Paperは全体のトップ1%、Honorable Mentionは全体のトップ5%、採択率は大体20-23%。
注3:Late-Breaking WorkやWork-in Progress、Workshopなどは主要業績として考えられていないので、この中には入っていません。

ちなみに、これは1人のAssistant Professor(日本で言うと助教)が仕切っているラボで、基本的にはそのラボの学生がリードしたものがほとんどです。もちろん投稿する論文の数自体も多いですが、内部の採択率は、一般の採択率(20-23%)に比べてかなり高いため、研究の質はおしなべて高くその結果、上のような数字になっていると思います。(内部情報の正確な数字はここでは言えませんが)

僕は、インターンに行く際は、常に、なんかしらのテーマを事前に決めていくんですが(例えば、ある特定の技術を学ぶ、この分野に精通する、純粋に今あるアイデアをpublishする、など。逆にそういうのがない場合は行かない。)、この時は、「どうやってこのような生産性の高さをコンスタントに達成しているのかを学ぶ」のが、ここにインターンに行った際の大きなテーマの一つでした。

というのも、このインターンが2015年の夏で、その後すぐの2015年の秋からHuman-Computer Interactionの研究でPhD留学中なわけんですが、実は、そもそもHCIという研究分野の存在自体を知ったのが、2014年の10月ごろでした。なので、当時はその分野の研究に関してはほとんど素人で、それこそ素人に毛が生えたようなくらいの経験と知識ぐらいしか持ち合わせていませんでした。
なので、どういうふうにHCIの研究を進めるのか、というのはほとんど知らないため、そういうメタな方法論を学ぶことは今後いろいろ研究をやっていく上で重要だ、と感じたからです。

ちなみに、スタンフォードなどの大学の場合は、日本の企業や研究室からお金を払って在籍させてもらうというような仕組みがあるらしいですが、僕の場合は、ラボのボスに直接給料から何から何まで全部支払ってもらう、いわゆる通常の企業のインターンシップと同じような形で在籍してました。しかもスタンフォードはしかもかなりエグくて、学生じゃないのに、なぜか夏の3ヶ月で12Kくらい授業料的なのを支払わないといけなくて、3ヶ月で30,000-35,000ドルくらいのお金が僕につぎ込まれていました。(こういうのはあとで知ったんですが、今から考えると、僕のようなペーペーによくそんなお金がつぎ込まれたものだな、と自分でも思います。)


1. 最初の段階で、大体ケリがついている

気を取り直して、ここからはこの研究室から学んだことを書いていこうと思います。
上記のように、研究のメタな方法論を学ぶことが目的だったので、インターン中は、そのラボのボスやシニアのPhD(彼は今CMUの教授)とかにしつこくしつこく、聞きまくりました。
そんな中で、まず、最初に学んだことは、研究の良し悪しは、多くの場合、最初の段階でほぼケリがついている、という点でした。これは、そもそも実装を始める以前に、そのアイデアを聞いた瞬間に、「あぁこれは(学会に)通りそうだと思えるかどうか」はかなり重要なファクターだと思いました。

実際、その年に通ってた5本の論文のほとんどは、5月くらいに「何やってるの?」みたいにアイデアを聞いて、「あぁそれはめっちゃアツいね」と思えるものがほとんでした。
逆に、そうじゃない場合は、え、それこの研究と何が違うの?とかなんでそれやるの?とかふーん、がんばって、というような反応が返ってくるかと思います。(それどうやって実装するの?っていう反応は比較的on the right trackだと思います。そこをaddressできていればインパクトがでてくるはずなので。)

その時に、後者のアイデアでがんばっても、通る確率はかなり低くなります。これは個人的な失敗体験からも結構当たっている気がします。

こう言うと、かなりsubjectiveな指標かと思われますが、大体、それを聞いたときに、「それはアツい!」ってなるかどうかは、実はかなり研究者の中で意見は一致しますし、特にある特定の分野の専門知識を持っている集団であればなおさらかと思います。

実際、その後も、カンファレンスで行くたびに、知り合いや友人に「あのベストペーパーはどうやって取ったんだ」、とか論文のプロセスを根掘り葉掘り聞いたりしてたんですが、大抵の場合は、アイデアが固まった時点で、「これは行けるだろう」というのがほとんどだったようです。

でも、一方でそこにたどり着くまでは、正直結構つらいです。そこまでにどうやってたどり着くかという方法論も、もちろん聞きましたが、そのためのシルバーブレッドは、あまりなさそうな感じでした。(知ってたらむしろ教えて欲しい)
実際、ある一人はベストペーパーを取った論文は実際最初の1ヶ月半はアイデアをあーでもないこーでもないと固める日々が続いて、方向性が決まったのは6月末だった(CHIの締切は9月初め)ということを言ってました。

逆に言うと、この段階がきつくても、安易なアイデアに流されずに、貪欲に「これなら勝てる」というアイデアが固まるまでがんばらないと先はない、というのが一つ学んだ点でした。


2. 実装する前に論文を書く

じゃあ、最初の段階でケリがついている、アイデアが固まるというのはどういう意味かというと、最初の段階でイントロが完成しているという意味です。
実際、Ivan Sutherlandもこんなことを言っています。

「どんなアイデアも文字になっていなければアイデアでない」ということです。

なので、アイデアが落とし込まれた状態でイントロを書き始めます。というよりは、むしろイントロを書きながらアイデアを落とし込むといったほうが正確かもしれないです。

というのも、理由はいくつかあって、まず一つ目に研究の最終生成物は論文だということ。レビュワーも当然ですが論文を読んでレビューをするので、アイデアを伝える = 論文を読む、ということになるので、逆に言えば論文に書かれていないことはアイデアとしては伝わっていないことになります・

もう一つは、文字情報は、図表に比べてそこから得られる情報量は少なくなるため曖昧さがなくなります。またwritten textはspoken textに比べて反芻できるので、これまた曖昧さがなくなります。曖昧さがなくなると、大抵の疑問が浮き彫りになるため、それに答えられているかどうかがかなり自分の中でもかなりはっきりします。例えば、この研究は他となにが違うの?とか、それ本当にできるの?とか、なにがcontributionなの?とか、そもそもなんでやるの?とか。

なので、大体2-3ヶ月前に論文のイントロダクションの骨格がほぼほぼ固まるか、というのがいい指標かと思います。もっと言えば、Related Workで、既存の研究と具体的にどこがどう違うか、まで言えればベターですが。僕らの場合も大体6月末ごろまで一つの目安として与えられて、(もちろん他の作業とも並行してですが)それまでにイントロダクションを固める作業が続きました。

HCIは特にその傾向は強いかと思いますが、技術それ自体がcontributionなtechnology-orientedな論文でも、ある程度は当てはまるかとは思います。


3. 論文に影響することだけにfocusする

もう一つのメリットとして、論文として文章にすると、なにをやるべきかという見通しが立ちます。つまり、最初に文章として何が重要で何がcontributionになるべきかの方向性がはっきりしていると、どこに注力してどこを削るのかという研究におけるdecision makingがはっきりしてきます。

特に、僕自身の失敗経験も含めて、論文のcontributionに直接関係ない技術的なことに時間をかけすぎた、というようなものがよくありがちです。要はハッカソン的な感じで、じゃあとりあえず作るか!みたいな感じで作り始めて、細かいところまで作り込んじゃうというような姿勢です。別にそれはハッカソン的なものとか、純粋に技術を学ぶという時はそれでいいんですが、研究、特に2-3ヶ月しかない中で一本トップカンファレンスにpublishするようなインターンの場合は、かなり時間的に厳しくなります。

例を使って説明しますと、僕らの論文のアイデアは、「Upworkとかにあるクラウドソーシングのタスクを使ってPaidのOn-the-job trainingをネット上でできるようにする」というものでした。この時に、僕は、ある程度固まった段階で、じゃあシステムを作ろうみたいなことを考えてました。でも、そのことをミーティングで話していると、「まぁ待て待て。そもそもこれはcrowdsourcing上のタスクを使ってon-the-job trainingができるのか、というのが論文のコアだろう。そうすると、そもそもそのモデル(仮説)が可能なのか?というのを検証するのが先決だろう」というようにアドバイスされ、実際に、Week 1からWeek 3あたりは、既存のサービスや技術を使ってで、ここらへんの仮説にケリをつけることが最初の課題になりました。当然、ここらへんのプロセスは知見として論文にも載るのでcontributionにもなります。

新しいインターフェイスやテクノロジーがcontributionの場合などだと、同じようにストップモーション・アニメーションなどを使って仮説を検証することもあると思います。

特に技術指向な人ほど、じゃあ実装するかっていう方向に突っ走っちゃう傾向があるとは思いますが、そうじゃなくてpriorityの高い順につぶしていくというが、次に学んだ点でした。


4. 締切の2週間前にはほぼ完成している

もう一個学んだ点が、彼らのwritingのrevisionの回数です。彼らはネイティブな学生が多いですが(僕の周りは全員ネイティブでした)、それでもwritingの質はrevisionの回数でしか上がらないということがわかっており、そこに相当真剣に取り組んでいました。

一つ顕著なのが、締切の2週間前にベータペーパーの締め切りを設定している点でした。ベータペーパーと言うのは、ソフトウェアでいうベータバージョン(Beta Version)のことで

アルファ(Alpha):いくつかのセクションが抜け落ちているが、論文の骨格はほぼ固まっている
ベータ(Beta):すべてのセクションが埋まっている状態。いくつかのマイナーな修正すべき点はあるが、最悪そのまま投稿できる状態
プレビュー(Release Candidate):タイポや文法のミス、引用の抜け落ちなどをなくした状態

という区分けで、そのラボでは2週間前がそのベータペーパーの締め切りに設定して、残りの2週間で、そのラボ内で論文を回して3-5人のレビュー(まさに実際に受け取るレビューそのもののような感じ)をそれぞれ送って、それをもとにreviseしてました

これは実際に論文の質を上げるのに非常に効果的で、こういうシステマチックなやり方が全体として、論文のクオリティをあげているのだなと実感しました。

そしておそろしかったのが、この2週間前の締め切りに間に合わなかった場合、submitすらさせてくれないという点です。笑(理由は、ここに間に合わない論文は、そのあとにがんばっても、通る確率が低いからとのこと。)ここらへんは鬼だなぁと思いましたが、締め切りまでのpushはいい思い出です。

ちなみに、当然ですが、彼らはネイティブなので、ベースのwriting能力は、僕のような日本人なんかより当然高いです。これはネイティブだからと言うのもありますが、英語圏はwritingが義務教育でもかなり重視されている点もあると思います。そんな彼らでさえ、何回も何回もreviseしてクオリティを上げているわけで、そこの姿勢は見習わないといけないし、同時に、研究におけるwritingの重要性を本当に痛感しました。実際、writing能力は僕もがんばって上げていますが、まだまだ全然で、これは研究者として生きていくのであれば、一生鍛錬していかないなぁと感じています。


おわりに

大体こんなところが、この時のインターンで学んだことでした。と、ここまで書いてますが、最初にアイデアが固まったり、2週間前に原稿が上がったりというように、常にうまくいくとは限らないと思います。むしろスケジュールが遅れることは世の常です。笑 ですが、一つの型としてこういうやり方も知っておくのは研究を進める上で一つの指標になるしプラスにはなると思います。

ただ、こういう情報はあまり表に出てこないですし、方法論的な部分も実際に経験しないと身につかない部分は多く、「こういうことを学べるのがインターンの意義」なんじゃないかと思います。
海外に出ることだけが全てではないとは思いますが、いろんな研究者と一緒に働くことで、その人の方法論や価値観から学べることは多いと思うので、そこらへんのことが少し伝わったら幸いです。

(なにか質問等があればお気軽にご連絡ください。 :)

コンピュータサイエンスの最新の研究(HCI、機械学習、コンピュータグラフィックス、ロボット、人工知能 など)をわかりやすく紹介します。 週一回、研究やニュースのまとめを無料で配信してます → https://www.getrevue.co/profile/HCI_Comics