CMU 王贇上個月博士畢業,在卡內基梅隆大學(CMU)語言技術研究所(LTI)經歷了兩年碩士、六年博士之後,他有話想說。
學術篇
下週一我就要開始在 Facebook 上班了。趁入職之前,我想寫一寫我博士生涯的感悟;再不寫就要涼啦。
從 2010 年 8 月到 2018 年 10 月,我把我最好的青春年華都獻給了卡內基梅隆大學(CMU)的語言技術研究所(LTI)。其中前兩年是碩士,但由於 LTI 的碩士生活跟博士並沒有太大區別,都要做研究,所以說是八年博士也並不過分吧。單從長度就能看出,我的博士生涯並不是一帆風順的;之所以讀了這麼久,主要原因是換了兩次研究專案。這三個研究專案,各自給了我不同的體驗和感悟。
從入學到 2012 年春天,我跟隨金琴教授研究說話人識別。在這將近兩年的時間裡,我用 Matlab 語言親自實現了十幾種語音特徵的提取,以及基於 GMM、GMM-UBM、SVM、JFA 等技術的多種說話人識別系統。然而,我在這段時間裡的研究進展十分緩慢,最終並沒有追上當時的前沿;我的研究結果也並沒能寫成論文發表出來,而只是形成了一篇技術報告。這裡面的原因,大概是因為我還沒能從「學習者」的心態轉換成「研究者」的心態。我總是想著把基礎打紮實,從而在理解和復現已有的技術上花了太多的時間——2011 年的夏天,我曾經花了一個多星期來推導 JFA 裡那些複雜的矩陣運算。在實驗設計上,我也沒能做到「抓大放小」,而是曾經拘泥於一些小細節,比如訓練資料和測試資料的劃分。這些原因,導致我還沒來得及走到「創新」這一步,研究專案就結束了。
金琴教授於 2012 年春天調到了中國人民大學,於是我就轉到了同一個實驗室的 Florian Metze 教授名下讀博士。Florian 是一位高高胖胖的德國教授,在中文語境裡,我通常稱他為「花哥」。我在花哥手下做的第一個專案叫 Babel,其任務是在多種小語種語音裡檢索關鍵詞。與之前的我一個人做的說話人識別專案不同,Babel 專案是由全美國乃至全世界許多大學和公司共同參與的。若干個大學或公司透過合作關係結成隊伍,而隊伍與隊伍之間則是競爭關係。我在這個專案中的體驗,與其說是像科研,不如說是像工作,因為專案前期的主要任務,是要先搭建出一個還能用的系統,之後才能在此基礎上慢慢地創新。一個關鍵詞檢索系統通常由兩個模組組成:前端模組是語音識別,負責給出多種可能的識別結果;後端模組是檢索,負責在識別結果中搜尋關鍵詞並對其可靠性打分。我在這個專案中承擔了很多工程性的工作:整個後端模組基本上都由我來維護;我還開發了一些視覺化工具,用來分析系統犯的錯誤。但是,從科研的角度來講,我的工作的科技含量並不高:檢索模組使用的技術,說白了只是一個倒排索引而已。直到 2014 年,我們實驗室才脫離純工程性的開發,開始研究一些有科研價值的問題,比如如何更準確地給檢索到的每個關鍵詞的可靠性打分,以儘量減少漏報和誤報;比如如何檢索像專有名詞這樣詞典裡並沒有的關鍵詞。然而,2014 年 6 月,當我在韓國臨津閣的觀光隊伍中排隊的時候,我從 Facebook 上收到了實驗室的同學發來的噩耗:由於 CMU 所在的隊伍開發的系統在年度測評中表現不佳,我們的隊伍被淘汰了。到此時為止,我只發出了一篇一作論文;另一篇一作論文在此後經歷了五次拒稿,終於被我塵封。知乎上有一個這樣的問題:博士第三年還沒有發論文是一種怎樣的體驗?我想我是適合回答的,但終究沒有勇氣回答。
2014 年的下半年,算是我博士生涯的一段過渡期,這段時間我沒有什麼科研產出,而是把精力用在了給自己充電上。憑藉著唯一的一篇一作論文,我參加了 2014 年 9 月在新加坡舉行的 Interspeech 會議。在會上,我嗅到了深度學習正在崛起的訊號。整個秋季學期,我閱讀了會議上的近百篇論文,還在 Coursera 上學習了 Geoffrey Hinton 的深度學習課程。這讓我的博士生涯柳暗花明又一村。
關於博士生涯最終的研究課題,花哥當時給了我三個選擇。我已經不記得另外兩個選擇是什麼了;我選擇了「事件檢測」,只是因為它有去 Facebook 實習的機會。我在 2015 年 1 月至 4 月在 Facebook 進行了一次實習,這也是我唯一一次實習。由於版權的限制,我在 Facebook 並沒能使用 CMU 的資料真正進行「事件檢測」的研究,而只是改進了 Facebook 原有的語音/噪音分辨系統。從科研上來說,這次實習只是我對深度學習的一次練手;但它讓我在灣區交到了好多朋友,讓我覺得灣區是個好地方,從而產生了去 Facebook 工作的理想。這個理想,現在就要實現了。
回到 CMU 以後,我才真正開始研究「事件檢測」。在研究的初期,我對「事件」還沒有明確的定義,既想檢測比較底層的事件,比如貓叫、狗叫、開門、關門,又想檢測比較高層的事件,比如球賽、婚禮、聚會等等。這些高層事件的檢測,是當時 CMU 正在參與的另一個研究專案 Aladdin 的目標;直到 2016 年 Aladdin 專案漸漸收尾,我才把研究的焦點集中到底層事件的檢測上來。之所以選擇研究底層事件,是因為它們是檢測高層事件的基礎,在還檢測不了底層事件時就去檢測高層事件,步子就邁得有點兒太大了。而隨著深度學習用於語音識別的最後一滴水漸漸被榨乾,人們自然會開始嘗試把深度學習用於別的東西的識別,底層事件檢測的研究條件已經成熟了:在 2016 年 3 月的 ICASSP 會議上,芬蘭 Tempere 理工大學的研究組與我同時發表了用深度學習做底層事件檢測的論文。
2016 年,我的研究一直被一個困難所困擾,就是資料太少。我使用的資料,是實驗室裡的工作人員手工標註的,總共只有十幾個小時,根本無法用於深度學習。2017 年 3 月,Google 釋出了 Audio Set 資料集,它拯救了我的研究,讓我畢業的事情終於有了眉目。Audio Set 這個資料集的特點首先就是「大」。它含有 200 萬條長度為 10 秒的 YouTube 影片選段,我光是下載這些資料就用了整整一個月。這樣的大資料,正適合深度學習。但 Audio Set 還有一個重要的特點,就是「弱標註」:它沒有標註每一個事件的起止時間,而只標註了每段音訊中的事件種類。這種標註,直接帶火了一個研究領域——「弱標註下的音訊事件檢測」,這也幾乎就是我的博士論文標題。從此,我的博士論文課題就明確了:爭取在已有的、利用弱標註做事件檢測的方法的基礎上進行創新,做到比已有方法更好。
剩下的事情,就是與預期的博士畢業時間爭分奪秒了。這段時間過得十分刺激。我原定於 2017 年 9 月博士開題,實際開題時間是 10 月 9 日,還算勉強趕上。今年 2、3 月的時候,我又一次鑽進了一個細節的牛角尖(PyTorch 與 Theano 的效能差距),浪費了兩個月的時間。到了 4 月份,我注意到英國 Surrey 大學的孔秋強同學已經做出了一種基於注意力機制的、利用弱標註做事件檢測的新方法。這讓我幡然醒悟,跳出牛角尖,回到研究的主線上來。我的論文中最重要的兩章之一,就是比較了若干種利用弱標註做事件檢測的方法的優劣,並深入剖析效能差距產生的原因。這一章是 2018 年 6 月底完成的,與計劃的時間完全一致;而另一章的核心問題,則是 8 月 16 號在散步時才想出解決辦法的。9 月,我一邊繼續跑著一點兒本該在 8 月就跑完的實驗,一邊撰寫畢業論文的文字;而 10 月 5 號答辯用的幻燈片,則是 9 月 30 號才做完初稿的。這場賽跑,直到 10 月 26 日晚上,我把畢業論文最終定稿、把程式碼整理好才結束。而此時,距離我爸媽來美國看我已經只剩 5 天了。
縱覽八年的博士生涯,不難發現,我由於自身及外界的各種因素,走了不少彎路。在三個研究專案中,只有最後一個,才有博士研究的樣子。偶爾,我也會想:如果從一開始就做第三個專案就好了,這樣我就可以在四年之內畢業了。但我不會沉浸在這種情緒中。正如吃完第三個包子飽了不代表前兩個包子就白吃了一樣,我並不覺得我在 CMU 的前四年是荒廢了的。整整八年的學習,讓我對語音識別、深度學習等各個領域的理論基礎有了紮實的掌握。花哥開了一門語音識別課,其中說話人識別那一講固定由我來講,學生們紛紛反饋說我講得比花哥清楚多了。同時,正是因為我涉獵過多個研究專案,我對與語音相關的多個研究領域都有了解並抱有興趣。開學術會議的時候,我總能挑出許多想聽的報告,馬不停蹄地輾轉於各個會場之間。而這種深度與廣度,則是不付出時間不可兼得的。
娛樂篇
CMU LTI 網站上的學生名單,曾經列出了每個博士生的年級。有一屆「CMU 好聲音」的一張非官方宣傳海報,就把一二年級新生和七八年級老博士的名單並列在一起,並配上了這樣一句廣告詞:「Sing while you can」。一說起我博士讀了八年,可能大多數人心裡想到的第一個字就是「苦」。在漫長的博士生涯中,總會有實驗不順利、論文被拒等遭受挫折的時候;到了後期,也會常常為畢業而發愁。不過,認識我的人大概會知道,我的身上似乎從來沒有散發出一種「苦」的氣息,而是整天樂呵呵的。八年下來,我身邊的朋友們換了一撥又一撥,有人戲稱為「流水的 CMU,鐵打的 Maigo」。我跟朋友們把匹茲堡以及美國東北地區玩得有滋有味,跟他們在一起,我很少感到寂寞。這些朋友又以碩士生居多,他們身上的朝氣,讓我保持了心理上的年輕。
我在匹茲堡的第一年,就加入了三個組織。第一個,是 CMU 的中國學生學者聯誼會(CSSA)。CSSA 每年中秋的時候會舉辦一場才藝比賽,隨著「中國好聲音」的開播,這個比賽也改名為「CMU 好聲音」;每年春節的時候,還會舉辦一場春節晚會。第一年的中秋,我就默默無聞地當了一個吃瓜觀眾。春晚徵集節目的時候,我帶著吉他去打了一次醬油,沒想到我彈唱的《老男孩》獲得了一致好評。我在春晚現場與韓吉鵬同學一同彈唱了這首《老男孩》,這讓我一炮走紅。我也順勢加入了 CSSA,擔任網管;不過我更重要的角色,就是每年春晚的固定演員了。我也參加過幾屆 CMU 好聲音,其中跟 @Gus 夏 合作的《The Sound of Silence》受到了最多的歡迎。
《The Sound of Silence》表演現場
第二個組織,叫做 Pittsburgh pLayboycLub。這是 CMU 和隔壁匹大的幾個學生組建的,最初就是打打狼人殺之類的桌遊。那時候狼人殺還沒有發展出那麼多術語和套路,一群小白在一起玩還是挺有意思的。除了狼人殺,我們後來還在一起做飯、滑冰、逛博物館,還坐灰狗巴士去華盛頓看了櫻花。我的知乎頭像,就是在華盛頓看櫻花時拍的。後來,組織中的男生和女生兩兩結成了對,活動就漸漸減少了;而我因為當時在國內還有一個女朋友,就成了剩下的那一個。
第三個組織,是 Carnegie Library of Pittsburgh(我一般稱這個圖書館為「恐龍圖書館」,因為館門口有一架恐龍雕塑)的日語角。日語角每兩週活動一次,參加者有日本人,也有像我這樣學習日語的外國人。我在這裡找回了在清華參加日語角的感覺。恐龍圖書館有英、西、法、德、意、俄、日、漢等多種語言角(對,還有漢語角!)。除了日語角以外,我還曾在西語角和法語角跟外國人談笑風生。
2012 年「世界末日」的時候,我在一位小夥伴的號召下,跟他一起去歐洲旅了一次遊。這是我到當時為止少有的純粹的(即沒有比賽或者學術會議等目的的)出國旅遊。我們在西班牙和義大利各呆了一週時間,玩了巴塞羅那、馬德里、羅馬、佛羅倫薩四個城市。這次旅遊點燃了我出國旅遊的興趣。在後來的幾年裡,我跟小夥伴們一起或者獨自訪問了波多黎各、韓國、新加坡、夏威夷、坎昆、阿根廷等地(嘛,雖然有些並不算出國)。最初幾次旅遊,我都給世界各地的朋友們寄了明信片,最多的一次是在韓國寄了 38 張。起初,我還堅持每天(用當地語言)寫日記,到最後終於堅持不下去了。想到寫出來的日記也沒有人看,我轉而開始寫遊記,這篇坎昆遊記我覺得寫得還是不錯噠。
我在波多黎各、韓國、新加坡寫的日記
2013 年夏天,我認識了我在美國最神奇的一位朋友——韓國大叔 Jason。Jason 大約應該是個 65 後,然而至今未婚;他的職業是碼農,但跟我一樣愛好廣泛。我跟 Jason 相識就是在恐龍圖書館的日語角,除了日語以外,他還喜歡騎車、保齡球、網球、滑雪等多種運動,以及做飯、唱歌和旅遊。這些專案,除了網球以外,也都是我喜歡甚至擅長的,我倆很快就打成了一片。Jason 還有很廣的朋友圈。他在來匹茲堡之前,還曾經在德州的奧斯汀和弗吉尼亞州北部華盛頓附近住過。不管在哪裡,只要他一在 meetup.com 上組織活動,總能一呼百應。這些朋友來自世界各地,年齡也從 20 歲到 70 歲不等,單是跟他們聊天,都很長見識。我在 CMU 的中國學生中,可以算是跟非中國人交往較多的了;其中很大一部分,都來自 Jason 的朋友圈。
我從 2013 年秋天起,跟 Jason 和朋友們一起在匹茲堡的多條腳踏車小路上騎車。此前,我在匹茲堡騎過的最遠距離是 34 英里,這是從松鼠山往返北公園(那裡也有櫻花)的距離。跟 Jason 在一起,我開始挑戰更遠的距離,用了一年多的時間,達到了一天之內騎 80 英里的水平。2015 年 5 月,我跟 Jason、室友 @ 鍾音 和一個印度小哥挑戰了從華盛頓到匹茲堡的整條腳踏車道,全長約 335 英里,我們用了四天時間挑戰成功。騎這條腳踏車道,成了我一年一度的保留專案;而 Jason 則可能一年騎多次,甚至在 2016 年用 9 天時間騎了一次往返。
初次挑戰全程,在「山頂洞」合影留念
Jason 在 2017 年初因為工作變動,又搬回了弗吉尼亞州。不過他的各種活動,依然在匹茲堡延續。我跟朋友們在匹茲堡依然每週打一次保齡球;我還曾經帶著許多 CMU 的小夥伴去弗吉尼亞州北部的韓國城大快朵頤。這個月初,我帶爸媽在美國東北部旅遊的時候,請 Jason 吃了一頓晚飯。我爸媽說,很感謝 Jason 帶我探索了許多新玩法,大大開闊了我的眼界。
我跟我的妹子 @ 機器熊 的緣分,就開始於 2017 年 4 月一同去韓國城遊玩。她跟我一樣享受「讀萬卷書,行萬里路」的體驗。我們一起坐灰狗巴士去過紐約,還曾駕車穿越過死亡谷的沙漠;更厲害的是,她在僅僅訓練了一個多月之後,就跟我一起騎車從匹茲堡到了華盛頓。我在匹茲堡的最後兩年,我們常常跟一群以數學系博士生為主的小夥伴們一起玩。這群小夥伴裡有一位野營達人,我們跟著他又開發了不少新去處。
我現在搬到灣區來了,在這裡我永遠不會缺朋友。跟我同時期入學 CMU 的碩士生們,有許多都在這裡工作了,甚至還有許多清華校友也在這裡。2015 年春天,我在 Facebook 實習的時候,還參加了一個「週日早起登山」群,又認識了不少人。等到 12 月,我在灣區這邊安頓下來之後,就又可以約起來啦!
週日早起登山
我在跟妹子交流人生的時候,曾經說出過這樣一段「名言」。我說,博士生涯(乃至整個人生),就像是在波濤洶湧的大海上航行。大海的基調是悲苦的,但我們卻是在一條遊輪上。我們的角色,既是掌舵人,又是乘客。固然,在關鍵的時刻,我們需要掌控遊輪的航向,直面洶湧的波濤;但在平時,我們不妨就做一名乘客,在平穩的甲板上悠閒地曬曬太陽,不必擔心船底下的海浪。正是這樣的一種樂觀的心態,支撐著我度過了精彩的八年博士時光。
原文連結: