AcademiX が開催した 第1回 論文輪読会「AI論文読み方講座」に関する資料
日時:2023/02/18 発表者:大熊拓海さん
<概要> AIの最新技術を詳細までキャッチアップする為には、論文を読む事が必要不可欠である一方、普段論文を読まない方にとっては中々ハードルが高いように思われる。 本講座では、そのような論文読み初学者の為に、 ・そもそも論文とは何か ・なぜ論文を読むのか ・どの論文を読むべきなのか ・どのように論文を読むのか を順番に丁寧に説明している。
https://www.academix.jp/AcademiX 論文輪読会AI論文読み方講座AcademiX Founder大熊 拓海2023/02/18
View Slide
経歴• 2019年 3月 東京大学 工学部 計数工学科卒業• 2021年 3月 東京大学 情報理工学系研究科 創造情報学専攻 修士課程 修了(修了時に研究科長賞受賞)• 2021年 4月 同 博士課程 進学 (休学中)• 2021年 6月 Airion株式会社 創業• 2022年 7月 AI学生団体「AcademiX」設立専門分野• 画像認識(Few-shot Learning、Human Pose Estimation)その他• 東京大学 工学系研究科 講義「深層学習」講師(2020年度-)• 松尾研スプリングセミナー講義 監修 (画像認識)講師 (画像認識/生成モデル)• 2021年度未踏アドバンスト事業採択• Twitter: @shien5963 (link)大熊拓海自己紹介
本講座の対象者• AIの論文読んだこと無いけど、これからチャレンジしたい人• AIの論文を読もうとしたが、難しくて挫折した人• どの論文を読んだら良いか迷っている人本講座が皆さんのレベルアップのきっかけになれば幸いです!
多くの方が抱く「論文」のイメージ• 難しくて理解出来なさそう• 研究者の、研究者による、研究者の為の文章• 修士・博士の学生が必死で書いてる• 難解な英語が多い総じて取っつきにくそう、、、
• 難しくて理解出来なさそう• 研究者の、研究者による、研究者の為の文章• 修士・博士の学生が必死で書いてる• 難解な英語が多い総じて取っつきにくそう、、、まず、この先入観を壊そう!
そもそも論文って何?
論文とは• 論文=学問の研究成果などのあるテーマについて論理的な手法で書き記した文章(Wikipedia より引用)要するに、我々の研究により、○○であることが分かった or △△が出来るようになったを報告する文章出典 https://mainichigahakken.net/hobby/article/post-632.php
何故論文が大切なのか• 論文=研究成果に関する一次情報にアクセスする唯一の方法• 書籍や解説記事からも情報は得られるが、• メジャーな論文・研究に限られる。• いわゆる「論文の要約」なので、情報量がかなり落ちる。• (素人が書いた解説記事は)信憑性が数段落ちる。• 書籍は出版に時間がかかるので、最先端まで網羅しきれない。(AcademiX の勉強会も本をベースにしているので、最先端までは追えていない)• 最先端の理論や技術を理解する為には、論文の読解が必要不可欠。
論文=研究者の成果物!出典: https://dora-world.com/contents/2767アニメーター 小説家 研究者アニメ 小説 論文職業成果物
研究者が論文を書く意味自分の研究成果を世界に発信する為論文を通じて、自身の研究者としての価値が世の中に認められる論文通じて「自身の研究成果」を他人に理解させる必要性注)ポストや研究費の獲得に関わるので、割と人生がかかっている理解してもらえなければ評価もされないなので、研究者は頑張って理解しやすい論文を書いている!!わざわざ難解なを論文を書く研究者はいない(はず、、、)
論文を理解する為に研究者は分かりやすく論文を書いているのに、理解できないとしたら、、、• 読む順番が良くない→ 小説の様に頭から読むのが正しいという訳ではない(後述)• 論文のコンテキスト・前提条件が理解出来ていない→ イントロや関連研究をしっかり読む必要がある(後述)• 英語を読めていない→ DeepL等の翻訳を使ってみよう• 実は分かりやすい or 良い論文ではなかった→ よほど重要な研究でない限り(少なくとも初心者は)読まなくても良いかも→ しかし、読み方が分かっていないと「わかりにくいか否か」の判断すら出来ない
研究者は分かりやすく論文を書いているのに、理解できないとしたら、、、• 読む順番が良くない→ 小説の様に頭から読むのが正しいという訳ではない(後述)• 論文のコンテキストが共有出来ていない→ イントロや関連研究をしっかり読む必要がある(後述)• 英語を読めていない→ DeepL等の翻訳を使ってみよう• 実は分かりやすい or 良い論文ではなかった→ よほど重要な研究でない限り(少なくとも初心者は)読まなくても良いかも→ しかし、読み方が分かっていないと「わかりにくいか否か」の判断すら出来ないこうならない様にする為に正しい読み方を学びましょう!!
どの論文を読むべきか?
論文を読む目的• 「どの論文を読むべきか」の前に「なぜ論文を読むのか」• 読む目的によって読むべき論文は異なってくる研究者以外の方にとっての目的で多いのは、• 面白そうな or 話題になった研究を理解したいから• 特定分野の大まかな把握• 論文を読む練習 or 輪読会での発表• 実装するアルゴリズムの検討あたりだと思われるので、順番に見ていく。
面白そうな or 話題になった研究その論文を読んでください!最近では話題になったAIで論文化されている研究も多い※ 有名になるような大規模プロジェクトの論文は、かなり長かったり、形式が一般的な論文(後述)と違うことも多いので注意。Stable Diffusion論文名: High-Resolution ImageSynthesis with Latent Diffusion ModelsGPT-3論文名:Language Models are Few-Shot LearnersAlphaCode論文名: Competition-Level Code Generationwith AlphaCode
特定分野の大まかな把握分野のキーとなる論文を浅く広く抑える必要がある(論文を「浅く」読む方法は後述)。キーとなる論文を見つけるためには、1. 「サーベイ論文」を当たってどの論文が重要か(≒被引用数が多いか)を見極めるサーベイ論文は、特定分野の概要を把握する為の文章で(新規の研究ではない)、タイトルに大体 “survey” の単語が含まれている。例)”Pose Estimation survey” でGoogle検索すると、” 2D Human Pose Estimation: A Survey”というサーベイ論文がヒットする。2. 日本語の解説記事を等を当たる有名な論文は日本語の解説記事も多く出ているので、適当な単語で検索かけてみる。一からサーベイ論文で探すよりも手っ取り早いことも多い。色々読んでいくうちに、段々と分野の大まかな全体像を把握できるはずである。
輪読会での発表1. 興味のある分野で、最近出た論文(1年以内くらいが目安)・Paper with Code が便利。2. トップ学会に採択された論文・トップ学会に関しては https://research-p.com/column/1144 あたりを参考。・学会の採択には半年くらい時間がかかるので、最新論文に関しては必須ではない。3. 自分がしっかり理解でき、人に説明できる自身のある論文の3条件を満たす論文を選べるとベター初心者のうちは、もし論文を理解しきれなくてもリカバリーできるように、QiitaやAI-SCHOLAR等で日本語記事が出ている論文を選ぶと良いかもしれない。※ 上記も素人が書いた記事が多く、内容に誤りを含む場合もあるので注意。
実装するアルゴリズムの検討• 理論よりも、既存実装・学習済みモデルが存在することが重要• Paper with Code で探すのが楽• Paper with Code で該当するタスクを検索する。• ベンチマークを選択肢、精度上位の手法の一覧を見る。• GitHubのリポジトリが存在する手法はマークをクリックしてアクセスできる。• 手法の精度とリポジトリの信頼度・使いやすさを考慮して、実装するアルゴリズムを検討する。
読む論文が決まったら• ここまでは「目的に応じた読むべき論文の選び方」を説明した。• 読みたい論文が決まったら、次はいよいよ実際に読んでいく。• しかし、何も考えずに頭から読んでしまうと、理解が難しくなったり、効率が悪くなったりする恐れがある。• 次は「私がお薦めする論文の読み方」を紹介したいと思う
私がお薦めする論文の読み方
論文の構成まず、一般的な(AI分野の)論文は以下の構成で書かれている。0. 概要 (Abstract) : 論文全体の概要1. 序論 (Introduction) : 研究が行われた背景や前提知識2. 関連研究 (Related Work) : 関連する先行研究を示す3. 手法の説明 (Method) : メインとなるトピック・手法の説明4. 実験 (Experiment) : 手法の有効性等を示す為の実験・主結果5. 考察 (Discussion) : 更に理解を深めるための追加実験・考察6. 結論 (Conclusion) : 研究全体の総括
上から順番に読むのか?0. 概要 (Abstract) : 論文全体の概要1. 序論 (Introduction) : 研究が行われた背景や前提知識2. 関連研究 (Related Work) : 関連する先行研究を示す3. 手法の説明 (Method) : メインとなるトピック・手法の説明4. 実験 (Experiment) : 手法の有効性等を示す為の実験・主結果5. 考察 (Discussion) : 更に理解を深めるための追加実験・考察6. 結論 (Conclusion) : 研究全体の総括
0. 概要 (Abstract) : 論文全体の概要1. 序論 (Introduction) : 研究が行われた背景や前提知識2. 関連研究 (Related Work) : 関連する先行研究を示す3. 手法の説明 (Method) : メインとなるトピック・手法の説明4. 実験 (Experiment) : 手法の有効性等を示す為の実験・主結果5. 考察 (Discussion) : 更に理解を深めるための追加実験・考察6. 結論 (Conclusion) : 研究全体の総括素直に上から読むのはお薦め出来ないではどの順番がベストなのか?
まず概要・結論を読むべき0. 概要 (Abstract)1. 序論 (Introduction)2. 関連研究 (Related Work)3. 手法の説明 (Method)4. 実験 (Experiment)5. 考察 (Discussion)6. 結論 (Conclusion)• 概要と結論を読み、研究の大枠を把握する。• 研究の目的は何か、何故重要なのか、成果及び限界点は何処か等を理解する。• これらを読んだ結果、自分が知りたい内容とは異なると感じた場合、読むのを止める。• 一般に、論文を一本理解するにはそれなりの労力がかかるので、無駄を省ける。
次に序論・関連研究を読む0. 概要 (Abstract)1. 序論 (Introduction)2. 関連研究 (Related Work)3. 手法の説明 (Method)4. 実験 (Experiment)5. 考察 (Discussion)6. 結論 (Conclusion)• 研究目的、問題領域、研究範囲、先行研究等、研究が行われる前提条件を把握する。• 特に、殆どの研究は単体で成立するのではなく、先行研究に基づいて行われている為、関連する先行研究を把握することは非常に大切。• 読者の知識が不十分な場合、研究の前提条件が把握できない、しっくりこない場合もある。• この状態で論文を読んでも得るものは少ないので、一旦読むのをストップして、先に重要な先行研究を理解する必要がある。
(図表とその説明文)• 章立てからは外れるが、次は図表とその説明文に目を通すべき。• 図表は一番目立つ部分なので、研究者は図表を見れば提案内容や結果を大まかに把握できる様に執筆することが多い。• 「メインの図 = 論文の顔」であり、論文が有名になると図も有名になる。いかにも提案手法っぽい図 いかにも結果っぽいグラフDosovitskiy, Alexey, et al. "An imageis worth 16x16 words: Transformersfor image recognition at scale." arXivpreprint arXiv:2010.11929 (2020).より図を引用
熟読する0. 概要 (Abstract)1. 序論 (Introduction)2. 関連研究 (Related Work)3. 手法の説明 (Method)4. 実験 (Experiment)5. 考察 (Discussion)6. 結論 (Conclusion)• 研究内容を詳しく把握したい場合に読む。• 関連研究を薄く広くサーベイしている場合には読み飛ばすことも多い。• 「手法の説明」には詳しい数式等、「実験」には細かいパラメータ設定や結果等が書かれるので、納得感を得たい場合にはそれぞれを読むべき。• 読む順番はそのまま3, 4, 5で良い。• 「実験」と「考察」は分かれていないこともある。
(公開されているコードを見る)• 最近のAI研究では「再現性」が重要視されており、それを示す為に実験で使われたコードがGithubで公開されていることも多い。• 再現性: 他の人が同様の実験を行った場合でも同じ結果が得られること。• 開発等で実装するAIを検討する為に論文を当たっている場合は、コードが公開されている論文を当たるのが良い。• 更に、Githubのスター数が多い、issueが活発であるとなお良い。• 実装しない場合でも、コードを読むことで手法への理解が深まることも多い。• 論文で理解できなかった部分をコードを通じて理解できる場合も
まとめ論文は頭から読むのではなく、以下の順番をお勧めする1. 概要・結論を読み、読むべき論文か否かを把握2. 序論・関連研究を読み、研究の前提条件を把握→把握できない場合は、先に関連研究を深堀する3. 図表及びその説明を読み、提案手法や主結果を大まかに把握する4. (より詳しく知りたい場合は)手法の説明・実験・考察を順に読む5. 公開コードがある場合は、必要に応じて参照する
正しい読み方を身に着け楽しい論文ライフを!!