そもそも研究アイディアをどう見つけるか、そしてどう解くか
研究をするうえでは(博士後期課程、Ph.Dを目指す場合は特に)、問題解決力はもちろん、問題発見力が重要になります。既存研究のサーベイももちろん重要ですが、どうすれば問題の解決力や発見力が身につくのかについても理解しておくと、論文の読み方等も変わってくると思います。
問題解決力・発見力を身につけるためのTipsとしては、以下の本が秀逸です。自分も折に触れて読んでいます。
- いかにして問題をとくか
- イシューからはじめよ―知的生産の「シンプルな本質」
- 独創はひらめかない―「素人発想、玄人実行」の法則 (金出先生の講演動画)
- アイデアのヒント
- 問題発見プロフェッショナル―「構想力と分析力」
- 東大物理学者が教える「考える力」の鍛え方
- イノベーションシンキング
- 思考力を鍛える30の習慣
- 独創的研究とは
- 研究法(暦本先生の動画)
- 妄想する頭 思考する手 想像を超えるアイデアのつくり方
初めて研究をする場合や、新しいトピックに取り組むときなど、いきなり問題発見力なんて言われても、、、というケースもあるでしょう。そのようなときは「牛馬的研究、銅鉄的研究も悪くない」と思います。
論文を「読む」
何がともあれ、こちらのHow to Read a Technical Paperは必読です。また、国際会議論文の読み方・書き方も大事なことが書かれており、オススメです。
また、論文を読みながら、あるいは読んだ後にbibtexにメモやサマリーをまとめると何かと便利です。自分の場合は、Summary, Comments, Reviewというフィールドを追加しています。ReviewはNLP分野の査読時の項目でそれぞれ5段階評価にしています。Reviewerの気持ちで論文が読めるようになります。Reviewは日本語でも良いですが、英語で書いたほうが良い練習になる思います。また、BibtexはJabrefやBibdesk等でPDFと一緒に管理するとさらに便利です。
Summary = {
Task:
Dataset:
Key idea/technique:
Evaluation metric:
Result:
},
Comments = {
},
Review = {
Appropriateness:
Clarity:
Originality:
Soundness/Correctness:
Impact of Ideas/Results:
Meaningful Comparison:
Substance:
Replicability:
Recommendation:
Reviewer Confidence:
}
論文を「書く」
日本人の多くにとって英語で論文を書くことは、たくさんの時間と労力がかかりますので、できるだけ効率良く読みやすい論文を(たくさん)書けるようにしたいところです。日本語・英語に限らず良い論文を書くためのヒントについては、多くの先達が書いてくださっていますので、一通り読んで頭に入れておくと良いと思います。特に自分が気に入っているものについてリストアップしています。
- Write the paper first.
- Writing Well [in NLP & ML]
- 良い論文を書くために知っておくべき5つのこと
- 論文執筆のためのチェックリスト
- どう書くか―理科系のための論文作法
- Style (by Prof. Jordan Boyd-Graber)
- How to Write a Lot: A Practical Guide to Productive Academic Writing
- (上の日本語版)できる研究者の論文生産術 どうすれば「たくさん」書けるのか
- How to write a great research paper
- CMU教授直伝の論文の書き方
- 松尾ぐみの論文の書き方(&英語論文編)
- 国際会議論文の読み方・書き方
- Tips for paper writing
- SIGIR writing paper tips
- How to write a good CVPRsubmission
- 言語学における修士論文・博士論文執筆の手引き
- good citizen of the CVPR
- Tips for Writing Technical Papers (和訳)
- How to Choose Appropriate Articles 90% of the Time
- Novelist Cormac McCarthy’s tips on how to write a great science paper
- How to write a strong discussion section for your journal article
- AI系トップカンファレンスへの 論文採択に向けた試験対策
- トップカンファレンスへの論文採択に向けて(NLP研究分野版)
- 簡潔で分かりやすい英文を書くためのコツを整理した
上のTipsにもありますが、実験結果のまとめやサーベイなどを最初からTeXで書いておくと効率的です。
なお、「英語」で効率的に質の高い論文を書くためには英語力(リーディング&ライティング)の底上げも重要です。論文を書く上で必要になる英語力については、以下の本やサイトが個人的なおススメです。少なくともネイティブチェックに出す前に以下の本やサイトを駆使して論文を書き上げると、校正の効率が格段にあがります。またコロケーションディクショナリーやシソーラスを使ったり、普段論文を読んでいて見つけたフレーズをストックしていくこともおススメです。その際に、ぜひ発音練習も一緒に行ってください。発音練習はスピーキング力だけでなくリスニング力向上にも効果があることが知られています。
- CasualConc
- 科学技術英語表現辞典(第3版)
- 科学技術英語動詞活用辞典
- 英語ライティングルールブック
- 数学版 これを英語で言えますか?
- 英語論文の書き方
- The Chicago Manual of Style
- Logical Skill Lab
- Handouts at The Writing Center at UNC-Chapel Hill
- UNC ESL Guides
- Online Collocation Dictionary
- Thesaurus.com
- Hyper collocation
- Common Mistakes and Tricky Choices
- Academic Phrasebank
- The Art of Writing Scientific Papers
- 科学論文における時制の使い分け
- Writing for Computer Science
その他、NLPや機械学習系の論文を書く上で、特に押さえておきたいTeXに関するツールやパッケージ、Referenceとしては以下のようなものがあります。
- TikZ-dependnecy
- FSA generator
- Algorithm2e
- LaTeX for Logicians
- LaTeX Mathematical Symbols
- Wikibooks (LaTeX Mathematics)
- Short Math Guide for LaTeX
- Mathcha.io
- Python Graph Gallery
- https://mathpix.com/
- 早く知っておきたかったmatplotlibの基礎知識
- matplotlibでジャーナルに投稿可能な図を作るためのメモ
- Matplotlib 3.1 cheat sheet
- Deep Learning Visuals
- O-DAN
- IconBox
- PNGTree
最近では、デモやLeaderboard, 実際のアプリケーション等を作成する必要性も増えてきている用に思います。デザインに関する知識を知っておくと便利でしょう。
論文を「発表」する
スライドデザインについては、
- 伝わるデザイン
- やってはいけないデザイン
- ノンデザイナーズ・デザインブック
- 誰も教えてくれない「分かりやすく美しい図の作り方」超具体的な20のテクニック
- 見やすいプレゼン資料の作り方
- Design notes
- Secrets for Successful Slides
- わかりやすい研究発表をするための3つの手順
- color brewer (カラーパレット)
- Designing the nteract Data Explorer
- 海外で爆流行りのフリー素材サイトの一覧
- パワポのコネタ「ポネタ」
スライドが一通り完成したらプラクティストークです。以下の資料は目を通して実践したいところです。
- How to give a great research talk
- How to Prepare a Talk
- Suggestions For Giving Talks
- Mastering Science Presentations Seminar
中でも特に重要なのは、プラクティストークを録画して自分の発音やスピードを確認するということです。とてもembarassingな方法ですが、効果は抜群です。
英語の発音(スピーキング)も重要です。せっかく良い論文なのに、発表者の英語発音がわかりにくく残念だった、という経験がある人は多いと思います。英語の発音練習は軽視されがちですが、一度身につけてしまえばその後の(研究者)人生を支えてくれるという意味でも費用対効果が高いです。
発音がわからない単語はYouglishやForvoで実際のネイティブの発音を聞くことができます。ノンネイティブスピーカーが意識すべき大切な点は「ゆっくりと、正しいアクセントで、抑揚をつけて話す」ということです。これだけでだいぶ違います。また、事前に準備したスクリプトをnaturalreadersに読み上げてもらい、練習するのもオススメです。
自分が気に入っているアカデミックプレゼンテーションを挙げておきます。
論文を査読する・される
大学院(留学)生活について
- Interactive Machine Learning: How Machines Learn Best from Humans by Charles Isbell
- 今まで出会った中でダントツに面白く、しかも緻密に計算されたプレゼン(招待講演?)です。通常の論文のプレゼンには使えないスタイルかもしれませんが…。
論文を査読する・される
- 査読コメントの書き方(英語)
- 英語論文の査読表現集
- ピアレビューの査読レポートを書くときに使える英語表現
- How to Write Good Reviews for CVPR
- Mistakes Reviewers Make
- How we write rebuttals
- Patterns for Research in Machine Learning
- 研究者流コーディングの極意
- 工学系研究者のための 心理学的研究手法ガイド: 研究計画から実施,成果公表まで
- A Research to Engineering Workflow
- The Machine Learning Reproducibility Checklist
- How-to for AAAI Reproducibility Guidelines
- General Guidelines for Making Empirical AI Research Reproducible
- プログラマが知るべき97のこと
- 忙しい研究者のためのテストコードとドキュメントの書き方
大学院(留学)生活について
- The illustrated guide to a Ph.D.
- そもそもPh.D.とは何か。
- A Survival Guide to a PhD
- これを読まずしてPh.D.生活を送ることなかれ。
- 10 easy ways to fail a Ph.D.
- Ph.D.取得のための「べからず」集。
- 大学院・研究者を目指す人へ
- アメリカの(生態学系の)大学院生向けのアドバイスですが、他の分野にも共通する点が多いです。
- How to Be a Successful PhD Student (in Computer Science (in NLP/ML))
- コンピュータサイエンス(自然言語処理・機械学習)でPh.Dを目指す人向け
- The Ph.D. Grind
- Ph.Dを取得するまでのリアルが詰まっています。
- How to be a Good Grad Student
- 充実したPh.Dライフを送るためのTipsがまとまっています。
- Don’t prematurely obsess on a single “big problem” or “big theory”
- 研究には戦略もとても重要です。
- Ph.D Commics
- あるあるネタが満載。(全体的にネガティブですが。)
- Time Management
- 個人的に大好きな動画です。
- Productivity tips, tricks and hacks for academics
- 他のエントリーもとても参考になります。
- How can PhD students establish good relationships with their advisors?
- 週次進捗報告の仕方(指導教官との関係の築きかた)
- レンガを積むがごとく
- 留学先の環境に慣れるのは予想以上に大変だと思います。特に日本人が少ない街であればあるほど大変だと思います。
- 研究者を目指す普通の学生諸君に
- 天才ではない『普通の人』が,研究者としてやっていくためのマニュアル。
- 一流の研究者になるには?
- 学生の皆さんへ
- Calendar. Not to-do lists.
- ToDoをどのように管理するか、目からウロコです。
- Do married Ph.D. students graduate faster than other Ph.D. students?
- How I Fail?
- Lessons from my phd
- A problem well put is half-solved.
- If I had an hour to solve a problem, I’d spend 55 minutes thinking about the problem and 5 minutes thinking about solutions.
- We want to think big, but start small. And then scale fast.