1. 程式人生 > >從零開始,如何閱讀一篇論文

從零開始,如何閱讀一篇論文

轉自:https://blog.csdn.net/GitChat/article/details/78019743

這裡的從零開始,指的是我們要從零瞭解這篇文章做了什麼事情、使用了什麼方法、得到什麼結果,這樣的方法和結果對我有沒有什麼借鑑。

而不是說,接觸到一個全新的領域,從讀論文開始入手。對於沒有過接觸的陌生領域。我的方法是,先看中文綜述,中文博士論文,而後是英文綜述。通過中文綜述,可以首先了解這個領域的基本名詞、實驗常用方法。

否則直接從論文入手的話,作者站的高度和我們的水平不一致,很容易想當然的理解或者根本看不下去。因此,在閱讀這篇文章之前,對於這篇文章中涉及到的基礎知識,對應中文基礎都理解透徹。

這時,迴歸到從零開始理解這篇文章的狀態。

對一篇文章的閱讀往往有3個遞增的層次:

層次1. 讀懂這篇文章的概要資訊(5-10分鐘)

認真讀懂標題、摘要、簡介(title, abstract, and introduction)。

只讀各個部分和子部分(section and sub-section)的標題,跳過具體內容。

讀懂結論和討論(作者通常會在這裡論述本研究的不足和缺失,為未來的研究提供建議,指明方向)。

瀏覽參考文獻,記下哪些文獻是你已經讀過的。

因此,在第一層次過後,應該能回答出以下5個問題:

文章分類:關於實現方法的文章?對於已有系統的分析文章?對於研究理論的描述文章?

內容:有沒有對應的相關paper?這篇文章是基於什麼樣的基礎理論?(theoretical bases)

文章的假設(assumptions)是真的正確麼?

貢獻:這篇文章是在效果上(state of art)有了明顯進步?還是方法上有了創新?還是完善了基礎理論?

清晰度:是一篇描述清晰的文章麼?

第一個層次完成你就可以覺得是否要深入第二個層次,它足夠做你的某天想用到時的知識儲備,而不是現在立刻入手。

層次2. 抓住文章的內容,忽略文章細節(1個小時)

第二個層次需要認真讀,抓住重點:

對圖、表的含義以及他們支援的結論弄懂。

記下參考文獻中你認為重要的未讀文獻,它能讓你對這篇文章的背景有深刻理解。

完成第2個層次,要達到知道文章用了哪些證據,如何證明了一個什麼樣的結論。

尤其在這個層次中,如果遇到讀不懂(原因有很多:公式太多、對術語不理解、對實驗手段不熟悉、參考文獻的文獻過多)。說明我們還沒有和作者在一個基礎上,建議先從幾篇重要的參考文獻入手,補充背景知識。

層次3. 深入細節理解文章(5-6小時)

如果這個文章是你想應用到目前工程中的,則需要第3個層次。目標是能夠在相同的假設條件下,重現(re-implement)論文。

同時,要注重論文在GitHub上的對應程式碼,跳到程式中能加速理解。

比較你重現的結果和原論文,就能真正理解一篇文章的創新點,以及它的隱含前提或假設。並且你能從重現過程中得到一些你未來工作的方向。

做這三個層次的好處就是,能夠讓你對讀一篇文章的時間有合理的估計,甚至可以根據時間和你的工作需要調整掌握一篇文章的深度。