強い松尾ぐみのために:研究の指導とステップアップ

どのように研究の指導をしていけばよいか

 松尾ぐみができてから今まで、10人以上の学生にアドバイスしながら一緒に研究を進めてきました。そのなかで、研究がうまくいく場合とうまくいかない場合があります。もちろん個人の資質によるところは大きいですが、成功例、失敗例にはいくつかの傾向があるように思います。典型的なパターンを類型化し、それぞれの分析と対策を行うことで、よりよい研究の指導、ひいては研究室内外と自分自身のレベルの向上にもつながるはずだと思います。

 以下では、うまくいくパターンとうまくいかないパターンの類型化を行います。まず、うまくいかないパターンから分析してみましょう。

うまくいかないパターン

研究がうまくいかないパターンとして、次のようなものが挙げられる。

  • 1. 学生が自分のやりたいことを主張して、どうかなぁと思いつつ任せているとやっぱりうまくいかないパターン。
  • 2. アドバイスして「やります」と言ってるのに、やらないパターン。話すと結構きちんとした議論になって目のつけどころはよい感じはするが、実際は手が動かない。
  • 3. だめだなあと思いつつ、こちらが声をかけてもアドバイスを求めてこないパターン。最終的に、やはりちゃんとした研究にならない。
  • 4. 研究を自主的に進めていて、適宜アドバイスも求めてくるが、細かいところに立ち入らずに任せていると、最終的な成果はそれほど出ないパターン。
  • 5. 先生からの研究の制約が悪くて、テーマ的に苦しいパターン。

このパターンの背後にある要因とその対策としては次のようなことが考えられる。

 1のパターンに陥る学生のタイプを、ここでは[知識不足タイプ]と呼ぶ。主に研究分野に関する知識不足が原因になっているためである。卒論生や修士の学生にはある程度しょうがないことではあるが、知識不足の状態でテーマとして何をやればいいかを一生懸命考えても、なかなかよい研究の方向性に気づくことはできない。また、土台がないために、こちらが示す方向の重要性も理解できない。自分のやりたいことをやるというのは重要だが、かといって、いけてない方向性で頑張ってもやはりよい研究はできない。こういったタイプの人には、向こうが納得しなくても、こちらが納得するテーマを与えてやらせることが必要である。やってるうちに何が重要で何が重要でないかを理解するようになる。つまり、ボトルネックが知識不足というところにあるので、方向性に関しては強引にもっていきながら研究を進める必要がある。あと、文献をいろいろ与えてあげることも重要である。(なお、英語が苦手とか、文献を読むこと自体が苦手など、より深い原因がある場合もある。)

 また、1のパターンでよくある例が、「理論的な研究をしたい」というものである。特に比較的優秀でやる気がある人に多い。理論は現象の抽象化なので、現象を蓄積しないと理論はできない。最初から理論を作ろうというのは、少なくとも情報系の研究ではあり得ないと思う。問題の解決をしているうちにそれらをまとめる形での理論ができる場合があり、もし理論ができればラッキーということだろう。(「素人のように考え玄人として行動する」参照)したがって、これを説明して納得させ、具体的なテーマをきめた方がよいだろう。なお、理論的な勉強をするのは必要であるし、後々、抽象化する能力として重要になるので、勉強はもちろんするべきである。

 2のパターンを[実装力不足タイプ]と呼ぶ。研究の方向性に関するセンスはよい、もしくは人当たりがいいのでいい感じで研究の方向は定められるのだが、プログラミングに関する能力不足が原因で、研究を進められない。さくっと結果を出すべきところでつまづいている。したがって、実装能力を向上させるような指示、プログラムを実際に作って結果を出させるという経緯をたどっていくことが重要である。研究者がごまんといる中で、よい結果を出していくには、思いついたことを実装してみる、結果を見て考えるといった過程を繰り返すことが必要不可欠である。

 3のパターンを[議論不足タイプ]と呼ぶ。自分の殻に閉じこもって、干渉されるのを避け、他の人の意見を聞こうとしない。ある程度声をかけながら、よい研究をやろうという雰囲気を作っていくことが重要だろう。

 4は、比較的やっかいなタイプである。研究の方向性もそこそこいいし、自分がやるべきことと研究のポイントをある程度理解している。話をしてもどういう方向性で進めればいいか理解してるので、進めるままに任せていると、最終的にそこそこのとこまではいくが、すばらしい研究にまでは至らない。これを[方法論の理解不足タイプ]と呼ぶ。つまり、ある程度欠点がないためにその人に任せてしまうことが原因で、実験方法、論文の論旨展開、ゴールの設定など、細かい研究の指導がきちんと行き届いていない状態である。

 4のタイプでうまくいかないのは、主に研究のアドバイスをする側の責任である。きちんと内容を把握した上で、論文を書くまでの経過を一緒にたどっていくことが必要である。特に、よい研究は、最初のアイディアでやってみてうまくいかず、試行錯誤を繰り返すうちに、新しい現象に気づき、それがもとで生まれる場合が多い。最初の目論見どおりの評価結果を無理やり出して完結してしまうような研究に対しては、きちんと理解した上でアドバイスし、改善を促していくことが重要だろう。また、研究をなかなか論文にまとめられないというパターンもよくある。研究は常に進化していくものであるから、完成するのを待っていたら論文は書けない。したがって、とりあえずのところでまとめて論文として出すことが研究の過程として必要なことである。論文には、研究の全てを詰め込むのではなく、読者に知らせたいある発見や手法について、それを分かりやすく説明し、それを支持する評価実験を載せることが重要である。不必要なものは載せる必要はない。(松尾ぐみの論文執筆 参照。)このような研究の進め方の指導をしていくことが、よい研究をして成果として出していくためには重要だろう。

 最後に、5のパターンを[悪テーマタイプ]と呼ぼう。先生からの方向付けや外的な要因がその人にあっておらず、研究の方向性がよくない場合である。しかし、方向性が悪くてもちゃんとした研究はできる。これ自体が原因で研究ができないということは、ほとんどないのではないかと思う。他の問題との複合になると、例えば、知識も不足しているしテーマ自体も悪いという、どうしようもない状態になる。逆にいうと、テーマの方向性が良ければ他の要素に少しくらい難があっても少しはカバーできる。そういった意味でテーマはもちろん重要だが、テーマが悪いことが致命的なことはほとんどないし、やる気があればそこからいずれ抜け出してくるはずである。

 研究は、文献調査、実装、議論という段階を繰り返すことで進む(松尾ぐみのページ参照)。それと照らし合わせて考えると、文献調査が不足するのが1、実装力が不足するのが2、議論が不足するのが3のパターンである。また、このサイクルの進め方の理解不足が4のパターンである。外的な要因が悪いのは5であるが、根本的な問題ではない。

 ここでは挙げていないが、研究のモチベーションが低いという根本原因がある場合がある。これは大きな問題で、なかなかどうしようもないが、できるだけよい研究をしていこうという雰囲気、きちんと研究をしていないと恥ずかしいという雰囲気を作っていくことは重要だろう。幸い、東大生はほとんどの場合、「どうせやるのならよい研究をやろう」という意見に対して肯定的である。うまく動機付けながら研究の楽しさを伝えることができれば、その後長く研究をする人も、人生のほんの一時期だけ研究をする人も、よい経験を得ることになるのではないだろうか。

うまくいくパターン

次に研究がうまくいくパターンを見てみよう。

  • 1. アドバイスを素直に聞く性格で、それを真面目に反映していった結果、うまくいくパターン。
  • 2. バイト形式でこちらがイニシアチブを取った結果、うまくいくパターン。

 1を[体育会系タイプ]と呼ぼう。1の形でうまくいくには、人のアドバイスを聞くという性格的な要素が大きい。特に体育会系度が高いことは、1のパターンでうまくいくために重要な要素である。つまり、先輩の言うことは間違っていることもあると理解したうえで、自分よりよく知っているのだから、とりあえず従う。逆に、体育会系度が低い場合は、とりあえずはアドバイスに従えばよいことを納得させるまでの過程に時間がかかってしまい、それまでの期間がたいていは無駄になる。考えてみると、よい研究者は、多かれ少なかれスポーツの経験があり体育会系度が高い、もしくは体育会系度が高い人に鍛えられたという傾向があるように思う。

 2を[バイト成功タイプ]と呼ぼう。体育会系度がそれほど高くない人でも、バイト形式ということでこちらの指示に従う体制になれば、割り切って進めているうちに、研究がうまくいくという場合がある。私自身も、バイト代をもらいながらプロジェクトに参加し研究をやったことはよい経験だったと思う。

 ここでは挙げていないが、よいライバルがいる人は伸びるように思う。2人で切磋琢磨するような状況は、両方にとって理想的だろう。他にもいろいろなタイプがあると思うが、私が指導してきた学生の範囲内では、うまくいくパターンは上のいずれかの場合が多い。

考察

 ここまで見てきて気づくのが、アイディアが出るとか出ないなどの要素が、うまくいくパターン、うまくいかないパターンのどちらにも関係ないことである。基本的に、たくさんの知識を得て、思いついたことを実装して、結果をいろんな人と議論すれば、自分自身のアイディアというのは重要ではない。アイディアは思いつくのではなく、そこまで進んでいけば自然に見えてくるものだし、多くの人がいろいろと面白いアイディアを提供してくれる。

 うまくいくパターンとして挙がっているのは、結局のところ、周りの意見を聞いて真面目に進めていくという場合しかない。つまり、よい研究をする学生とできない学生の最も大きな差異は、アドバイスを聞いて地道に研究を進めることができるかどうかである。スポーツで例えると、コーチや先輩の言うことを聞いて地道に練習をするというのがまず一番重要な要因である。きっちり練習をした上で、次の段階として、どのような方向に研究を進めていけばいいのか、何を勉強すればよいのか、誰と話をすればいいのかといった、個人個人の能力や努力の違いが出てくることになる。

 うまく研究を進めながら、最終的には、次のような状態になることが目標となる。

  • 研究の過程を理解しており、また、自主的に課題を見つけ、自分で進捗を管理し、努力することができる。

この状態を[上がり状態]と呼ぼう。上がり状態になるには、2つの必要条件がある。一つ目は、研究テーマ周辺の知識、実装力、議論する力を身につけるとともに、研究の過程を理解していることである。もうひとつは、自分で自主的に研究を進めていけるようになることである。中小路先生は、研究者に必要な要件として、セルフモチベーション、セルフオーガニゼーション、セルフコントロールの3つができることを挙げておられた。自分で研究を行う動機を作り出し、自分で研究の計画をして、その通りに自分を管理することが、継続的に研究を進めていく力となる。

 上がり状態は、独り立ちする研究者としての要件である。ここでいう上がり状態は、おそらく外国の大学で博士号を取る際に求められる要件に近いのだと思う。(日本の過程博士はそれよりずっと甘い。)もちろんその後には、研究費を取ってくる、プロジェクトを構成する、研究分野自体を作るなど、研究者としてもっと多くの過程が待っている。(「研究者人生双六講義」参照)しかし、上がり状態になれば、少なくとも独り立ちできる研究者として、自分の好きな研究をしていくことができる。

 できるだけ早く上がり状態になり、自分自身の好きなテーマで研究ができる期間を長くするための方針のひとつとして、ジャーナル論文を早い時期にひとつ書くことを目標にするとよいと思う。そうすると研究の過程について一通り理解することができるし、また文献調査、実装、議論の重要性も身をもって体感することができるだろう。目安としては、M1の冬までに日本語のジャーナルに投稿すると同時に国際会議に投稿する、M2で国際会議で発表するというペースが達成できれば、修士で卒業する人も研究の面白さを実感できるのではないかと思う。そのためには、卒論の段階、M1の春の段階から、強くイニシアチブをとって研究を進めていく、文献を渡す、実装能力を上げるなどの指導をしていくことが重要になるだろう。

チェック項目

次のようなチェック項目を作ってみた。「実装」「知識」「英語」「論文」「オーガナイズ」「プロジェクト」の全6項目あり、内容は特に松尾ぐみの研究テーマに即している。 卒論レベルだと各項目0から1が並ぶ状態が普通だろう。修士修了時点で2か3が並ぶ状態になれば望ましい。 2か3が並べば、研究チームにとっては十分な戦力になる。(それまでは逆に指導の負荷の方が大きいマイナスの状態である。) 博士修了時点で少なくとも全項目3、多くの項目は4になっている状態が望ましく、いずれかの項目で5があれば、それを武器にして戦っていける。 全項目で3か4が並べば、他の学生の指導も十分に可能である。

  • 実装面 (I)
    • 1: [準備段階] Perlでテキストを扱うプログラムが書ける。Webにアクセスできる。
    • 2: [基礎技能]
      • a: n-gram、TFIDFのプログラムを書ける。
      • b: Googleにアクセスして結果をパースするプログラムが書ける。
      • 2c: Graphvizが扱える。SVGが扱える。
    • 3: [研究に差し障りないレベル] 研究に必要な一通りの実装ができる。
    • 4: [望ましいレベル] Java、C++その他が使える。DBアクセスができる。Flashが扱える。
    • 5: [すごいレベル] 大規模な実装ができる。オープンソースの公開をしたことがある。
  • 知識面(K)
    • 1: [準備段階]
        • a: 情報検索と言語処理を読んでいる。人工知能と高速推論を読んでいる。
        • b: 自然言語処理を読んでいる。自然言語処理の一応の知識がある。
        • c: (ネットワーク系) 社会ネットワーク分析の本、新ネットワーク思考を呼んでいる。
    • 2: [基礎経験]
      • a: 日本語の関連論文を10篇以上読んでいる。
      • b: 論文の探し方が分かって、自分で関連文献を入手することができる。
      • c: 研究会に参加したことがある。
    • 3: [研究に差し障りないレベル] 研究テーマに対して、主要な関連学会、研究会、研究組織、研究グループを理解しており、一般的な手法や新しい方法を理解している。
    • 4: [望ましいレベル] 研究分野に関する十分な知識があり、自分の研究テーマに関して石塚研の誰よりも知識がある。
    • 5: [すごいレベル] 自分の研究テーマに関して、他の専門家と比肩しうる知識がある。
  • 英語面(E)
    • 1: [準備] 英語の論文を数本は読んでいる。
    • 2: [基礎経験] 英語の論文を書いたことがある。英語の論文の概要をつかむ力がある。
    • 3: [研究に差し障りないレベル] 海外で発表したことがある。
    • 4: [望ましいレベル] 主張する論旨を整理して英語の論文を書ける。
    • 5: [すごいレベル] 高いべレベルの国際会議に通すことができる。
  • 論文執筆(J)
    • 1: [準備] 卒論、全国大会の論文を書き、発表したことがある。LaTeXが使える。
    • 2: [基礎経験] 研究会の論文を書いたことがある。理科系の作文技術を読んでいる。素人のように考え玄人として実行するを読んでいる。
    • 3: [研究に差し障り内レベル] ジャーナル論文を書いたことがある。
    • 4: [望ましいレベル] ジャーナル論文を通したことがある。
    • 5: [すごいレベル] 主張する論旨を自分で構成し、ほぼ自分だけでジャーナル論文を書くことができる。
  • 研究のオーガナイズ(R)
    • 1: [準備] 自分の研究テーマの位置づけと方向性を理解している。
    • 2: [基礎経験] 積極的に内部で議論することができる。
    • 3: [研究に差し障りないレベル] 積極的に外に情報を求めていくことができる。
    • 4: [望ましいレベル] 研究の立ち上げからシステム構成、論文執筆までオーガナイズすることができる。研究費の申請書を書くことができる。
    • 5: [すごいレベル] 他の人を巻き込んだ研究グループや協力体制の立ち上げができる。研究費を取ることができる。
  • プロジェクトマネジメント(P)
    • 1: [基礎経験] プロジェクトに参加し、貢献していくことができる。
    • 2: [差し障りないレベル] 抽象的な指示を理解し、判断しながら進めていくことができる。
    • 3: [望ましいレベル] 自分の下の人を使って、工程管理しながら作業を進めることができる。
    • 4: [すごいレベル] 研究費の管理や効率的な人材管理ができる。
    • 5: [その上] ビジョンの設定、人材獲得、動機付け、臨機応変な判断など高度なマネジメントができる。
Getting Started!

松尾ぐみスターターキットは以下です。まずはこの本を全部読みましょう。

【スターターキット】

【Advancedキット】

【AIの教養本(もし興味があれば)】

  • 心の社会
  • ゲーデル・エッシャー・バッハ
  • 皇帝の新しい心
  • 知の創成

2005.3 執筆