?讓碩士生活更加精彩

來源:互聯網
上載者:User

標籤:

?讓碩士生活更加精彩來源:《中國電腦學會通訊》第7期《專欄》

 

裴文哲

碩士生的生活是很多學生研究生涯的開始。與博士生不同的是,碩士生的學習和研究時間相對較短,這導致很多學生對碩士階段學習的意義產生了諸多疑惑。一方面有找工作的壓力;另一方面又有科研工作的挑戰,短短兩三年的時間似乎無論做什麼都顯得有些不夠。作為國內一名典型的“土碩士”,我也曾經有過同樣的疑惑和迷茫。不過,在我攻讀碩士學位的三年時間裡,我對如何做研究以及如何找到一份滿意的工作漸漸有了一些心得體會,在這裡與大家分享。

我的科研經曆

我的碩士學位是在北京大學資訊科學技術學院獲得的,我的研究方向為自然語言處理,通俗地講,就是研究如何讓電腦理解人類語言。第一次接觸自然語言處理是在本科三年級的時候,那時我在哈爾濱工業大學網路智能實驗室跟關毅老師做WIIME1,當時我負責做的是拼音IME的智能錯誤修正功能。在這期間瞭解了語言模型和隱馬爾科夫模型的概念。儘管當時還沒有深入地理解其深刻的原理,但我立刻就被其背後所蘊藏的智慧迷住了,從此決定這就是我的研究方向。到了大四的時候,我獲得了百度自然語言處理(Natural Language Processing, NLP)部門實習的聘用,這次實習對我的人生規劃產生了巨大的影響。儘管當時我已經被保送到北大讀研,但是和大多數同齡人一樣,我對應該繼續讀書還是直接工作猶豫不決。帶著試試看的想法,我決定先去實習感受一下。當時實習所在的部門“大牛”雲集。隨著實習的進行,我進一步感受到了自然語言處理的魅力,同時希望有一天我也能夠設計自己的模型,並使其上線,從而改變億萬人的生活。但“理想很豐滿,現實很骨感”,我開始意識到自己的知識儲備十分不足。於是我堅定了自己的決定——讀研。

既然選擇了讀研,就要為讀研做充分的準備。在本科畢業後的暑假,我沒有選擇到處旅遊,而是選擇把自己關在家裡補充各種知識。當時看了斯坦福大學教授吳恩達的公開課和Coursera的公開課,看完了大半本英文原版的《語言識別和語言處理》(SpeechRecognition and Language Processing),看了一遍《模式識別與機器學習》(PatternRecognition and Machine Learning)。當然,我第一遍看完這兩本書後也只看懂了其中30%的內容,所以讀研後又讀了多遍。直到現在,我大概讀了4遍《模式識別與機器學習》。但說實話,對於這本“聖經”,我到現在可能也只能真正理解其中60%~70%的內容。

由於實習時受到的“刺激”,我在讀研之初就躊躇滿志,決心一定要利用好研究生的三年時光,做最頂級的研究。在開學的第一天,我給導師發了一封郵件,立志要在讀碩士期間發表一篇頂級會議論文。這個目標當時對我來說簡直是癡人說夢,因為實驗室的曆史上幾乎沒有碩士生能夠在讀研期間發表頂級論文。這裡不得不提我的導師常寶寶,如果沒有他,我的目標不可能實現。在我發完那封慷慨激昂的郵件後,導師給予我極大的鼓勵。他對我們的研究內容從不做強制規定,也不要求我們去做外面的項目。相反,他鼓勵我們尋找自己的研究方向、做自己感興趣的內容。同時,他的學術水平也非常高,能在我遇到困難時給予詳細的指導。這些優良的外部條件為我後續的研究鋪平了道路。

研一上學期,因為知識儲備有限,我與導師討論了要研究的內容。導師建議做主題模型(topic model)相關的內容,原因在於相對來講主題模型比較好入門。經過幾番討論後,我形成了自己人生中第一個論文思想並很快完成了代碼的編寫,實驗效果也不錯。於是,我開始了人生中的第一次投稿,計劃將其投到2013國際計算語言學協會年會(Annual Meeting of theAssociation for Computational Linguistics, ACL)。我的英文寫作能力其實並不好,當時寫完論文後,導師幾乎全部推翻重寫了一遍。令我印象深刻的是那時候還正好趕上過年,我記得是大年初一的晚上,導師和我還在電話裡遠程討論如何修改論文。經過無數次的雕琢,我的第一篇論文“Inducing Word Sense with Automatically Learned Hidden Concepts”誕生了。我興沖沖地投了稿,滿懷期待,但最終結果是:拒稿。論文被拒,心情自然沮喪,我一直認為審稿人沒有理解這篇論文的核心思想,心中憤憤不平。但常老師教導我無論結果如何,都要以平和的心態面對,積極修改論文。就這樣,我的研一上學期以一篇被拒的論文結束了。

研一下學期,我繼續修改這篇論文,並且隨著上課和平常讀論文的積累,知識量有了進一步的提升,自己也有了想法,而且實驗效果不錯。鑒於上次投稿被拒,我決定先從國內的會議試試,導師也表示支援。於是投稿到全國計算語言學學術會議(China National Conference on Computational Linguistics, CCL)。同時和大四保研的師弟一起對那篇被拒的論文進行改進,增加了新的模型,將其投到自然語言處理實證方法會議(Conference on Empirical Methods in Natural Language Processing,EMNLP)。結果是CCL的論文被錄用,EMNLP的論文又被拒了。我迎來了自己人生中第一篇論文的錄用,很開心,但由於離自己心中頂級會議的目標還差很遠,自然心有不甘。論文連續兩次被拒讓我懷疑自己的思路是不是真的有問題,以至於我開始漸漸對這篇論文失去了信心,所以也沒有再進一步修改它。研一眼看著就要結束了,自己還沒有一個獨特的研究方向,於是我開始廣泛閱讀各種文獻。這時,我看到了深度學習的一些內容,不過當時深度學習的研究並沒有像今天這麼全面爆發。我覺得這應該是一次千載難逢的機會,於是開始專註於閱讀與深度學習相關的文獻。

研二上學期是歡樂的一學期。我師兄的一篇論文被自然語言處理國際會議(the International Joint Conference on Natural Language Processing,IJCNLP)錄用,但師兄已經畢業不能參會,於是導師決定派我參加。這是我第一次參加國際會議並且第一次做口頭報告(oralpresentation)。會議在日本召開,令我感觸最深的是與同行老師、同學們的交流。我感受到出國參會並和領域的“大牛”們交流思想是件多麼令人愉快的事情。這次會議促使我再次下定決心發表一篇屬於自己的頂級會議論文。參會回來後,我趁著興奮勁兒產生了自己在深度學習方面的第一個想法——基於深度學習的分詞模型。在當時(即使現在),深度學習在結構化模型中的應用還很少。所謂的結構化模型是指模型的輸出不是簡單的分類,而是一個具體的結構,例如序列標註模型、句法分析。當時,我閱讀了大量這方面的文獻,覺得既然最大熵可以擴充為條件隨機場(Conditional Random Field, CRF),普通感知機模型可以擴充為結構化感知機模型,那麼神經網路也一定可以擴充為結構化的神經網路模型。分詞當然是最簡單的序列標註模型,受深度學習界著名學者理查德·索切(RichardSocher)的啟發,我針對序列模型的特點,提出了最大間隔的張量神經網路(Max Margin TensorNeural Network)。有了研一寫文章的經驗,這篇文章很快就完成了,之後又是幾經修改。最後在截稿之前,我將此篇論文與之前那篇屢投屢被拒的文章一起投到ACL 2014。

研二下學期是豐收的一學期。我終於有了自己第一篇ACL論文《基於最大間隔張量神經網路的中文分詞》(Max Margin TensorNeural Network for Chinese Word Segmentation),論文成果的來之不易可能只有投過稿的人才能體會到吧。從寫論文、改論文、投稿、初審,到揣測審稿人心思,到回複,再到焦慮地等待。當開啟郵件,看到論文錄用的一刹那,我高興得眼淚都流出來了,趕緊嚮導師報喜。至於另一篇論文依舊是被拒??導師和我基本上已經放棄了希望,於是改也沒改就投了計算語言學國際會議(International Conference onComputational Linguistics, COLING),沒想到居然錄用了。在這學期,我還和師弟一起做了一個無監督分詞的模型,後來投到EMNLP也被錄用了。之後,我參加了ACL和COLING會議。剛開始,我不敢說話,後來鼓起勇氣與那些領域的“大牛”們交流時,我發現他們非常和藹,而且都熱情鼓勵我們這些年輕的研究者。這些會議不僅讓我大開眼界,也極大地提高了我的交流能力。

幸福來得太快,我有些飄飄然。這時導師找我談話,希望能再接再厲,不要驕傲,繼續在深度學習領域前行。研三上學期,我開始嘗試許多想法,但大多數都夭折了。後來我決定在依存句法分析(dependency parsing)領域嘗試深度學習模型的效果。這也是我當初給自己選擇的方向中一個重要的分支——基於樹結構的結構化模型。當時,我對依存句法分析只瞭解一些基本的概念,對很多前人的工作並沒有深入研究。於是,我找來大量文獻,每天把自己紮在文獻堆裡,瞭解他人的方法以及各種演算法,實現前人的模型;後來逐步形成了自己的初始想法,通過實現發現效果確實不錯,就這樣我的第二篇ACL文章《基於圖的有效神經網路依存句法分析模型》(An EffectiveNeural Network Model for Graph-based Dependency Parsing)誕生了。

我的科研心得

做科研的第一要素是知識的積累,無論我們從事的是什麼方向的研究,都必須掌握所研究領域已有的工作和最新的動態。在三年的碩士生學習生活中,我的體會如下:

1.首先要補充研究方向的基礎知識。我們很幸運地處在互連網時代,知識的傳播和分享都比十幾年前方便很多。我們可以很容易地下載相關的書籍、講義以及國外名校的公開課。隨著MOOC(Massive Open Online Course,大規模開放線上課程)的興起,還可以在Coursera、edX、網易公開課等網站上找到自己研究方向的基礎課程。所以,在開始深入研究之前,我們可以先上一些公開課並閱讀一些與研究方向有關的經典教材,為後續的研究打好基礎。

2.在有了一定的基礎知識後,就需要閱讀領域內的一些經典學術論文。這些論文的數量通常不會很多,它們支撐了整個研究領域的研究架構,閱讀這些論文能夠對整個研究領域有一個宏觀的瞭解。當然,大家更關心的是如何擷取這些論文。首先,我們在閱讀教材時,教材裡會給出很多經典的文獻;其次,可以嚮導師諮詢,由導師提供一些好的論文;第三,從網上可下載很多名校的講義,講義後面通常會列出參考文獻。這些文獻基本上都是領域內的經典論文。

3.上述兩個步驟通常在研一階段就能完成了,如果比較上進的話,甚至可以在大四階段完成。在瞭解了領域內的基本知識結構之後,我們就要開始緊跟學術前沿的動態了。這裡沒有特別好的辦法,只能搜集大量的論文來閱讀。與大部分同學一樣,我開始在讀這些論文的時候也看不懂,久而久之就產生了厭煩感。但我們千萬不要放棄,古人云“書讀百遍,其義自見”。很多時候我們會發現一篇論文在讀了十遍甚至幾十遍之後,會突然有一天領悟了論文的思想。另外,如果實在是缺乏一定的背景知識,那我們可以根據論文的參考文獻先閱讀一些前人的論文,做好鋪墊之後,再回頭繼續讀這篇論文。

4.無論我們對基礎知識、領域架構、前沿動態有多少瞭解,那些都是別人的工作。既然是“研究”生,我們當然要開展自己的研究工作。在閱讀文獻時,我們要有科學工作者應該有的批判式思維。批判式思維的含義是,不要把前人的工作當作“聖經”,在接納新思想的同時,也要儘力找到論文的缺點、局限,甚至錯誤。這些往往是我們研究的突破口。

5.文章不是寫得越高深就越容易被錄用,相反,能夠被錄用的論文通常都講得通俗易懂。在最初投稿的時候,我追求一些“高大上”的詞彙,羅列的公式盡量顯得進階。但事實證明,審稿人是不可能有時間細細地去看公式、揣測模型的。所以我們寫論文時一定要用最通俗的語言,解釋清楚我們的動機,解釋為什麼我們的模型更好。

6.對於我們這些經驗尚淺的研究人員,創新點的來源通常有兩種:老方法新任務,老任務新方法。我採用的是老任務新方法的策略。自己很幸運能夠很早就趕上深度學習這個大潮,並抓住了機會。

7.永遠不要覺得自己的想法不夠新穎就放棄。其實大部分的工作都是在已有的工作上做些改進,很少有能夠產生顛覆性影響的模型。只要有一定的改進思路,我們就可以嘗試去做,並寫成文章。很多時候,覺得自己的想法不好是因為我們太瞭解自己的研究領域,以至於覺得自己的想法應該是顯而易見的。然而實際上,對於圈外人而言,這些想法很可能是有其自身價值的。

8.要多讀英文的參考資料。一方面,大部分的資料都是直接用英語撰寫的,看翻譯過來的內容難免會有資訊的丟失;另一方面,大量閱讀英文的資料對我們的語感會有很大協助,這樣寫論文時才能做到下筆有神、表意清晰。

9.審稿人的水平是有差異的,很多時候審稿人的確會提一些比較奇怪的問題。即使這樣,在回複的時候也不要言辭激烈,一定要不卑不亢、平心靜氣,認真回答審稿人提出的問題。一般來講,審稿人都是刀子嘴豆腐心,最終的結果可能沒有我們想象的那麼糟糕。

回首自己三年的研究生生活,能夠完成個人目標除了上面的客觀因素外,還有兩個不可或缺的因素:導師無私的支援以及運氣。

以我的觀察,不可否認,國內研究生導師的研究水平參差不齊,同時還有部分導師並沒有盡到應盡的義務,有些導師甚至有著“碩士生就是幹活的,沒必要搞科研”這種偏頗的思想。正是這種原因導致很多碩士生淪落為導師在外面接項目幹活的免費勞動力。所以,在呼籲同學們攻讀碩士階段努力搞科研、提升技術水平的同時,也衷心希望導師們不要將碩士生當作苦力來培養。任何一個學生只要在伯樂的栽培下都有希望成為一匹千裡馬。我相信,國內的導師們只要端正態度,就會成為伯樂。

要想實現自己的目標,努力是不可或缺的必要條件,想不努力就獲得成功幾乎是不可能的。但努力不是充分條件,很多時候論文是否被錄用,找工作是否能夠拿到錄用函取決於“天時地利人和”。所以即使我們被拒了也不要氣餒,很可能就是這次運氣稍稍差一點。我認為“越努力,越幸運”,即所謂厚積薄發。

科研與找工作

碩士生的壓力,除了來自科研以外,還有一個就是找工作。大部分碩士生可能並沒有長期從事科學研究的打算,之所以讀碩士是想多學習一些技術和知識,為自己找到一份好工作增加籌碼。正因為如此,很多同學認為碩士生搞科研是徒勞的,多在外面實習、做項目才是王道。不可否認,出去實習當然是一種提高技術水平的有效手段,但從我自身的經驗來看,如果把時間都用在實習上而不在碩士階段真正培養一些獨特的能力,就不如不讀研。做好科研其實比實習更重要。

如果把找工作比作“相親”,那麼學曆、獲獎、項目經驗等就是我們的臉,而自身的技術水平則是我們的內在修養。

從“內在修養”的角度來看,一個人只有一張漂亮帥氣的臉是不足以在“相親”中獲得青睞的,比“臉”更重要的是我們的內涵。有些同學可能擔心如果做科研,自己的工程能力就會退化,不能在面試中取得好成績。其實,從我的經驗來看,科研不僅沒有降低我的工程能力,反而還提升了我在其他方面的能力。

首先,一篇頂級論文的發表意味著我們需要實現大量的模型。在這個過程中,我們自然會用到很多演算法和資料結構,如果能夠高效地實現這些模型,那我們自然也能從容應對那些複雜的面試題。以我個人為例,由於我的研究方向是自然語言處理,因此我在很早的時候就接觸了維特比演算法用於序列標註模型的解碼,這裡面涉及了很多演算法和知識點,例如動態規划算法、避免浮點數下溢的處理等。而恰好在我到臉譜(Facebook)面試的時候,面試官出了一道同樣思想的題,當時我很快便給出了答案。面試官看後非常滿意,告訴我:我是他當天面試的所有人中唯一考慮到所有邊界情況的人。我相信,如果沒有做科研時自己實現模型的那些經驗,我是不可能答得如此好的。 

其次,科研還意味著“推銷”自己的工作。由於我多次參加國內外的頂級會議,並在會上介紹自己的工作、與同行交流,這使我的表達能力得到了很大的提高。找工作的面試不是考試,把面試題做對不等於被聘用,面試考察的還有面試者和面試官進行溝通的能力,考察面試者是否能夠把自己的思想講清楚。尤其在進行英文面試時,英文表達能力就顯得尤為重要。多次國際會議的經驗讓我在英文面試時能從容應對,清晰地表達自己的想法,甚至在一次面試中我還成功地“推銷”了我的論文,面試官表示回去要好好讀一讀,這顯然給我的面試結果增了很多分。

綜上所述,科研不會給找工作拖後腿,反而會成為我們找工作的重要籌碼。相信只要利用好碩士階段的時間,每個人都能在科研和找工作兩方面獲得豐收。■

腳註:

1WIIME是哈爾濱工業大學電腦學院語言技術研究中心網路智能研究室開發的iPhone/iPad/iPod Touch/Android平台上的智能拼音語句IME。它支援語句輸入、全拼智能按鍵錯誤修正、模糊音輸入、簡拼輸入以及多種雙拼輸入方式。

 裴文哲

北京大學碩士生。主要研究方向為深度學習在自然語言處理中的應用。

 

?讓碩士生活更加精彩

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.