論文讀不懂怎麼辦?
王樹義
讀完需要
速讀僅需6分鐘
悄悄告訴你幾個竅門。
1
痛苦
做科研,不能不讀論文。
但是,我見過不少研究生,論文都讀得愁眉苦臉的。
這其中,自然有因為拖延的關係。例如教授佈置了2周後討論論文,你原本可以每天抽出時間,慢慢消化。可你非得拖到截止日期的前一天晚上才開啟看,希望畢其功於一役……這顯然是態度問題。
但是,不可忽略的,有些同學,卻真的不是態度問題,而是方法不當。
他們喜歡跟論文死磕。
讀不懂,就一遍一遍反覆讀,試圖從字裡行間,悟出精髓。
這可能是為了遵從那句古訓:
書讀百遍,其義自見。
且不說這樣是不是最終能走通。只論這個過程,就很痛苦,而且事倍功半。
有的同學對著一篇論文發奮了幾天甚至是幾周,依然看不懂。那種挫折、沮喪,別人看著都難受。
問題出在哪裡呢?
2
困難
更進一步,不斷湧現的論文,其實就是學術界的升級安裝包。
你不斷讀論文,就是為了跟學術共同體保持同步。但是,只有你跟這篇論文所依賴的那些基礎知識同步以後,安裝這個升級包才有意義,也才能水到渠成。
而對著論文犯愁的你,不管出於什麼原因,顯然不大具備這個新包兒(論文)的安裝條件。
所以,你需要做的,不是跟這篇論文自身較勁。而是應該儘快補充調整自己的知識架構,使得這篇論文對你而言,是可以相容,並且升級的。
論文羅列的參考文獻,可以作為你補充基礎知識的一個有效手段。畢竟,作者親自在這裡為你指明的路徑,如同給了你一張寫有路標的迷宮地圖。
這就是為什麼,許多優秀的博士,都是要讀數百篇文獻的。
讀過那些文獻以後,再看什麼新文獻,都會很有感覺,一下子就能找到方向,看到論文的優勢和弱點。
這時候,你就已經是個專業人士了。
但是,對於初學者而言,你得先讓自己樹立自信。而不是用一種近乎於閉卷考試的方法挑戰自己。
做買賣不怕賠錢,但是怕剛開張的時候賠錢。這是有道理的,因為“貧窮陷阱”曲線有多個均衡。
同樣,做科研也不怕面對困難。但是初始階段,還是得給自己降低一些難度。
許多時候,你要讀的論文來自陌生領域,你並沒有那麼多的時間,一篇篇文獻去啃、去挖掘。
舉個例子,假設你的研究方向,不是自然語言處理或者深度神經網路。但是你最近在學術研討會上聽說了一個神奇的東西,叫做 BERT 。
你自己學科裡面的很多人,都在談論他。他們用上了 BERT ,所以可以高精度、自動化處理很多從前只有人類才能做好的文字處理工作,例如情感分析,例如智慧問答等。
見他們發了很好的論文,你也想一探究竟。
你找到了 BERT 的原始論文,它就在預印本平臺 arxiv 上面。
但是一開啟,你就暈了。
這些術語(例如“fine-tuning”),這些圖,都是什麼意思啊?一點頭緒都沒有。
怎麼辦?
好在,要讀懂論文,是有不少竅門的。你可以善用許多從前忽視的資源,幫助自己消化和理解論文中令你感到困惑的部分。
下面我一一講給你聽。
3
幻燈
俗話說,解鈴還須繫鈴人。
如果你覺得一個作者在論文中使用了很多公式,而且表達晦澀,那是因為要發表,他只需要顧及審稿人和領域內小圈子專業人士的感覺就可以了。
為了表達效率高,他就得用術語。為了表達精準,他就得用公式。
用術語,就是壓縮;用公式,就是加密。
所以,論文其實就是一個加密壓縮包。
它安全,只有內行看得懂,不會引來很多外行抬槓。
它高效,壓縮了所有冗餘的資訊。
但這搞得你這個初學者讀不懂,很不愉快。
你得先解密再解壓縮,然後才能看懂。可你癥結在於,你不具備解密和解壓的能力。
好在,每一個作者,都要同時面對兩個問題——共識與知名度。
共識是說,別人承認他;知名度是說,別人喜歡他。
要提升知名度,他就不能只悶頭寫論文。還得出席一些會議,做做報告和講座什麼的。
面對大領域同行,他要把一個事兒說清楚,就不能再用那麼多的術語了,而必須考慮到聽眾的感受。
這時候,他可能更多使用描述性語言,生動的例子,甚至更吸引人的內容,例如視訊或者動圖。
這些會議的幻燈,很多都是公開發布的。所以你不妨搜搜看。
例如說,你在搜尋引擎裡面搜尋 BERT 那篇論文的第一作者,加上 BERT 這個關鍵詞,以及把資源型別指定為 ppt 之後,你就能看見很有趣的搜尋結果了。
點開看看?
原來是 Jacob Devlin 在史丹佛大學一次演講的幻燈。
這裡面,清晰地定義了問題,並且梳理了各種疑問的解答。
特別地,還使用了更多的圖形,來對比 BERT 和現有技術之間的差異。
通過幻燈,你可以把論文中很多沒有能夠展開的問題,或者許多作者認為小領域同行默知默會的知識點,都詳細論述。
有了這些補充資源,再回去讀論文,是不是更加清晰了?
4
部落格
如果找不到作者的演示幻燈,或者看了作者的幻燈之後,你還是沒能很好理解論文的內容,也不必氣餒。
我們前面說的,只是通則。
例如我們假定,作者面對一群不同背景的聽眾時,他的幻燈會做得更加深入淺出,以調眾口。
但是,有些學者,就是不分場合跟你展示數學功底。指著一個包含超過30個數學符號的長式子興奮地說:
看,就是那麼顯而易見……!
這種情況下,如果他的工作足夠重要,你不必擔心,會有人站出來幫忙做解密和解壓,也就是“科普”這件事兒的。
目前學術界有幾個科普文和教程聚居地。
其中我最喜歡的一個,是 medium.com 。
BERT 論文出來之後不久,你就可以在 Medium 上面查到這篇博文。
博文寫得如何?看看點贊(clap)次數也就知道了。
標紅的地方顯示,已經有超過3800人點讚了。這在 Medium 平臺的學術科普類文章裡,算是非常受歡迎了。
之後過了半個月,又有人寫了這篇。
隨後,因為許多與 BERT 類似的 Transformers 模型競相出現,所以 medium 平臺上的相關係列教程,也層出不窮。
例如釋出在 2019 年 2 月 “How the Embedding Layers in BERT Were Implemented”一文中的這張手繪圖形,就把 BERT 為什麼使用3種不同的嵌入層,講得一清二楚。
這些文章,可以讓你從一個感興趣的旁觀者角度,迅速建立相關概念。有了這些基礎之後,再去讀論文,你的感覺會輕鬆許多。
5
視訊
如果你足夠幸運的話,還能找到很好的視訊教程,作為補充資源。
其中許多視訊,還是免費的。
例如 BERT ,就有不少人一言不合發視訊給大家講講清楚。
中英文視訊都有。而且排名靠前的這些教程,往往都做得品質精良,讓你迅速瞭解 BERT 的來龍去脈。
我個人比較推薦那些大學老師做的視訊。當老師受到的最寶貴訓練,絕不是什麼師資班的培訓,而是上課的時候收穫的學生反饋。
因為總是給學生上課,他會明白學生的關注點在哪裡,會忽視或者錯誤理解什麼,從而可以有的放矢強調某些東西,讓你輕易避開很多認知誤區陷阱。
例如說李宏毅老師講的 BERT 介紹,就可稱得上是深入淺出,形象生動。
何況,還是中文的。
6
課程
有的時候,你會發現,雖然某些令許多人關注的焦點內容(例如 BERT )會有這樣多的視訊可供觀賞,但是若你想仔細瞭解一下論文裡出現的其他技術,以便對比,就未必有這麼好的運氣了。
在視訊平臺上搜尋,也許很難有收穫,甚至還會找到很多噪聲。
這時候,你也不要氣餒。雖然你想看視訊教程,但如果只在某個視訊平臺搜尋,那就如同魚在坑的東邊,你卻非得在坑西邊釣一樣。
系統化了的知識,你沒有必要東奔西走地查詢。而是可以通過線上課程來快速概覽。這樣不僅選擇成本低,而且學習效率更高。
有的同學天然把課程等同於幾大 MOOC 平臺。實際上,這也是一種誤解。
例如你打算回顧一下,自然語言處理近幾年的發展與技術應用。那麼,選擇 Coursera 或者 Udacity 課程,自然也是一種辦法。
但你如果喜歡更靈活地學習,可以直接到 fast.ai 上面。因為這裡的特點是快速迭代,緊貼前沿,而且剛好就有一門 NLP 課程,內容非常新穎。
課程內容裡,自然也包括 BERT 。
而與此同時,它也囊括了 ULMfit, GPT-2 和 XLNet 等相關技術。以寫程式碼來理解不同技術的進展,邏輯清晰,讓你一站式瞭解領域裡面最重要的內容有哪些,特別是最近發生了什麼有意思的事兒。
7
程式碼
提到了程式碼,我們們就多說幾句。
Jeremy Howard 在他的課程裡面一直強調,對於技術類的問題,程式碼比公式更重要。
描述一個演算法,你用公式當然沒有問題。但如你能把它寫成程式碼,而且正確執行,那想必你是真的懂了。
同樣,現在我們看很多論文,都配有程式碼。
如果你讀論文的時候,只閱讀公式看演算法,搞不懂究竟是怎麼回事兒,則完全可以去看看那簡單的 Python 程式碼。
例如說 BERT ,你雖然看到各種圖片,但是可能還是不知道,如果你打算做一個分類下游任務,該怎麼給你的輸入文字做編碼呢?
這時候,如果你讀程式碼,效果就大不相同了。
你完全可以去讀 PyTorch 程式碼。至少讀起來,更像是人話。
有好事者,就把 Tensorflow 上的各種 Transformer 模型,都搬到了 PyTorch 上。目前這個叫做 Transformer 2.0 專案,在 github 上已經有了16300顆星。
在論文裡, BERT 模型輸入文字的預處理,是這個樣子的。你可能會很疑惑,特殊的 token (例如論文中出現的 [CLS]
和 [SEP]
),究竟如何設定,如何起作用?
這裡,看一下程式碼示例。你會發現,原來你該這樣把它們加入進去。
而且,只有真正看了程式碼倉庫裡面的示例,你才會瞭解, transformers 這個專案,為什麼會這麼火。
因為,你可以僅僅用10幾條語句,就完成一個經典的文字分類任務。
於是,你也就明白,在自己的研究任務裡面,用上最前沿的自然語言處理技術,根本就沒有預想得那麼困難。
8
小結
本文我們以 BERT 為例,為你講述了當直接閱讀科研論文時遭遇困難的原因,以及你可以求助的免費資源和路徑,它們包括但不限於:
幻燈。作者用幻燈和聽眾溝通的時候,是要在一定程度上,放棄術語和公式的便利的。這就給你一個聽懂的機會。
部落格。對於一個大家都認為有用,但是學起來很困難的知識點。你可以在主流技術部落格平臺上找一找,很可能會有驚喜。
視訊。視訊教程的好處,是可以用更為形象生動的方式,給你展現動態的過程。而且,有時你還能直接感受到講者的幽默。
課程。如果你需要形成知識基礎,系統化的課程可以讓這一過程快捷高效。
程式碼。對於那些技術性的問題,數學描述演算法有時候會讓人有疑惑。這時候,閱讀原始碼,甚至程式設計實踐出來,會極大提升你的理解程度。
當然,這不是全部。
最好的方式,當然是與專家甚至是作者本人,做面對面的高效溝通反饋。當然,這樣的機會很稀缺。如果你遇到,一定要抓住。
9
專欄
告訴你一個好訊息。
我的第一個訂閱專欄《科研新手全面入坑指南》已經在少數派(sspai)平臺正式上線了。
我用20多篇教程,為你介紹初窺研究門徑的研究生與高年級的本科生,很需要了解的一些科研基礎知識。包括但不限於如何選題、如何讀文獻、如何快速寫初稿……
這些知識,你的導師大約會預設你已經學會,因此不會手把手教給你。但是你若做不到,導師很可能會覺得你基礎不牢,或者不用心。
你唯一能做的,就是儘快把它們補充齊備,以便減輕剛剛走上科研之路時的痛苦,保護好你的好奇心與成就感。
除了方法,我還介紹一些工具給你。例如 VosViewer 。它可以幫助你快速掃描中英文領域文獻,發現作者、主題之間的微妙關聯。由此,你就可以快速識別已有研究的盲點、盲區,甚至是盲維,從而有的放矢地找到自己研究的獨特定位與價值。
如果你正在發愁畢業論文該怎麼著手做,那麼這是個很好的入手時機。
本文釋出時,正值少數派的雙十一促銷活動,該專欄限時八折銷售。
二維碼在這裡:
你也可以點選篇末的“閱讀原文”訂閱。
願熱愛學習的你,科研之路從此走得更加紮實與順暢。
感覺有用的話,請點“在看”,並且把它轉發給你身邊有需要的朋友。
讚賞就是力量。
由於微信公眾號外部連結的限制,文中的部分連結可能無法正確開啟。如有需要,請點選文末的“閱讀原文”按鈕,訪問可以正常顯示外鏈的版本。
訂閱我的微信公眾號“玉樹芝蘭”,第一時間免費收到文章更新。別忘了加星標,以免錯過新推送提示。
如果你對 Python 與資料科學感興趣,希望能與其他熱愛學習的小夥伴一起討論切磋,答疑解惑,歡迎加入知識星球。
延伸閱讀
你可能也會對以下話題感興趣。點選連結就可以檢視。
題圖: Photo by Tim Gouw from Pexels
相關文章
- 怎樣讀論文?
- 『論文精讀』Vision Transformer(VIT)論文解讀ORM
- NeurIPS 今年共收錄1900篇論文,我該怎麼閱讀?
- 如何讀論文
- 論文閱讀:SiameseFC
- DeepSort論文解讀
- 論文閱讀20241117
- GeoChat論文閱讀
- AlexNet論文解讀
- 讀不懂NeurIPS 2018的艱深論文?我們已經為你劃好了重點
- 近期有哪些值得讀的QA論文?| 專題論文解讀
- 論文提綱寫作怎麼寫
- 寫作論文怎麼查詢文獻資料
- 阿里DMR論文閱讀阿里
- 論文研讀Unet++
- PointNet系列論文解讀
- 暑假讀論文總結
- VGG Net 論文細讀
- EfficientNet & EfficientDet 論文解讀
- [論文閱讀] Hector MappingAPP
- 並行多工學習論文閱讀(五):論文閱讀總結並行
- 不懂茶葉怎麼進貨
- 怎樣修改論文?
- 遇到慢查詢怎麼辦?一文解讀MySQL 8.0查詢分析工具MySql
- 讀論文《Toward Controlled Generation of Text》
- Raft論文讀書筆記Raft筆記
- XGBoost論文閱讀及其原理
- Q-REG論文閱讀
- MapReduce 論文閱讀筆記筆記
- 「DNN for YouTube Recommendations」- 論文閱讀DNN
- G-FRNet論文閱讀
- 《The Google File System》論文研讀Go
- 論文速讀紀錄 - 202408
- 論文速讀記錄 - 202409
- 9/12讀論文筆記筆記
- AutoEmbedding論文閱讀筆記筆記
- 論文解讀《Cauchy Graph Embedding》
- 論文閱讀——Deformable Convolutional NetworksORM