因為求職遭拒而讀機器學習碩士:到底值不值?
- 2020 年 2 月 3 日
- 資訊
就因為少了個機器學習碩士學位,求職數據科學的崗位遭拒?
這是本文作者 Richmond Alake 的親身經歷,也是讓他從一位全職員工到成為一位機器學習碩士生的原因。
然而,機器學習的學習之路並不平坦,作者此前也寫了一篇文章介紹自己的這段經歷,不少網友向他發出了靈魂拷問:值不值得?
這篇文章便是作者給出的回答:
事實上我對碩士專業的具體名稱撒了個小謊(倒吸一口冷氣),這裡必須說明一下,我的碩士學位名稱並不是機器學習,而是「電腦視覺,機器學習與空間機器人」。
也許明確說明課程名稱會加深對這個學位難度的理解……當然也可能不會。天才們可能會覺得:哈,讀這個學位聽起來就像是在公園裡散步一樣!但我向你保證事實不是這樣的。
一、背景故事
我在 12 月寫了一篇文章,著重強調了我申請數據科學崗位被拒的經歷,文章鏈接如下:
https://towardsdatascience.com/rejected-from-my-first-data-science-interview-c9784dd65296
這篇文章在 Medium 上四處傳播,甚至有幾個人通過 LinkedIn 與我取得聯繫,詢問我就讀機器學習碩士學位的經歷怎麼樣,更重要的是,這值得嗎?
在這裡我會為你節省很多時間和麻煩,直截了當的告訴你:在機器學習等有發展前途的領域取得高級資格證明或學位證明,絕對值得!
目前為止,依我的經驗看,我注意到僱主不僅需要應聘者具備某個領域的專業知識,還需要他們具備相關的資質證明。
如果你對神經網路的理論實踐知識或對反向傳播的相關工作有詳細的了解,這就可以幫你在競爭者之中脫穎而出。
下面我將跟大家分享下針對讀機器學習碩士,我沒有做好萬全之策的準備的地方以及碰了那些壁。
二、機器學習碩士期間碰了哪些壁?
1、過度自信
對於過度自信,我們知道它有多種表現形式。而對我來說,它具體表現為以下兩種:
首先,我對自己在軟體工程專業(BSc)本科學位上的出色表現過於自信。
那時,有關軟體開發生命周期的所有事情似乎可以通過簡單的點擊來實現。隨著我一遍又一遍地重複實現該過程,設計、實施和測試應用軟體成為了我的一個老習慣。
這種軟體開發的便捷性隨後使我順利度過了四年作為 Web 開發人員的職業生涯。我知道如何開發一個網站的用戶介面,該介面由一個完善的帶有 API 的後端系統和一個與之相連的資料庫系統(由 Amazon 等託管平台運營)支援。這些聽起來十分容易實現對吧?
我錯誤地認為機器學習和 Web 開發一樣容易實現。
朋友們,很顯然我錯了。機器學習對我來說一點都不容易。
我第二種過度自信的表現形式是低估了機器學習領域的整體複雜性。
我之前了解機器學習難度的渠道過於天真,一部分原因是我無意間看到這樣一篇浮誇的新聞報道,文中提到「一名工作 10 年的執業律師如何在三個月內迅速成為了數據科學家」。
你始終無法逃避人工智慧的炒作。
2、「三個月」就學會機器學習?
我的近期目標是在三個月內學會機器學習。因此,我購買了下面這本書:
對於那些不熟悉這本書的人來說,介紹這本書就像給小學生講一本有關微積分的書;或類似於通過讀一本關於火箭飛船的書來學習如何修理自行車——也許會有誇大其詞的成分,但我想你應該明白我想表達的意思了。
在我看來,本書中的術語和方程式對我來說似乎像是一種與我完全不通的語言。直到今天,其中一部分內容仍然看起來如此。
老實說,這本書的內容使我感到恐懼,因此,我將學習機器學習視作地球上最具挑戰性的事物之一。
到現在為止,我不得不承認這本書對於任何希望認真對待機器學習的人來說都是必不可少的。本書適用於那些希望拋開框架,API 和庫的限制來學習的讀者。
我以為機器學習小菜一碟,但事實證明它更像是一場龍捲風。
小提示:如果您打算學習機器學習,請從頭開始。這是供初學者使用的一些資源:
3、準備不充分
我極端的過度自信導致缺乏為該學位所需的基礎知識做儲備。
首先是數學,然後是論文,最後是密集學習——指那種睡在圖書館以及從圖書館醒來的很高的學習強度。
不幸的是,數學從未成為我學術生涯中眷顧我的好朋友,攻讀碩士學位也沒有使它發生什麼變化。然而,如果你在高中或本科的學習中具備了很強的數學或統計學基礎,那麼機器學習中的數學將完全不會令你感到畏懼。
而對我而言,情況恰恰相反。我很享受反向傳播的學習過程,但發現其中涉及到函數的偏導部分在我看來十分枯燥,這本應該是有趣的。
經過三年的工作,我已經習慣了只需連續坐幾個小時就可以完成工作任務並且在截止日期前發布出來。
但是這明顯滿足不了碩士學位的需求。
我必須將之前的專註力與注意力水平提高四倍。這是具有挑戰性的,至少在攻讀學位的前半段里,我一直陷於這個困境。
當我沉浸在小組學習,圖書館安靜的環境以及學會利用一些幫助我提高學習效率的軟體之後,專註對我來說就變成了一種更加舒適的體驗。
小提示:如果你發現很難放下手機並遠離社交媒體平台,請使用 Forest 軟體,鏈接如下:
https://www.forestapp.cc/
4、從教科書學習與在 StackOverflow 上尋找解決方案有很大不同
在碩士課程的學習中表現欠佳之後,我才意識到其實身在大學,周圍可以接觸到很多資源。
於是,我與一些我見過的最聰明的人進行了一對一的溝通交流。我也上網並發現了一個可以幫助我學習的 YouTube 頻道——許多機器學習工程師和數據科學家都很熟悉的頻道「3Blue1Brown」:
https://www.youtube.com/channel/UCYO_jab_esuFRV4b17AJtAw
最後來談一談論文寫作。論文寫作本身就是一種技能,而這個技能正是我嚴重缺乏的。當然,我大可花數小時洋洋洒洒在筆記型電腦電腦上敲鍵盤,但這僅限於程式碼調試或實現的時候。寫論文對我而言是完全不同的,我很可能半天連一句話都憋不出。
論文寫作是我必須通過定期訓練來學習的技能。我沒有在網上找到可以幫助你特別針對獲得機器學習論文寫作技能的資源。
小提示: 你可以通過練習寫作以及通過在媒體上發表對機器學習話題和概念進行解釋的文章,來提高論文寫作水平。因為從某種意義上來說,這與論文的撰寫非常相似——必須通過展開調研並且都需要一定的口才。以下是此類文章的示例:
https://towardsdatascience.com/understanding-gradient-descent-and-its-variants-cf0df5c45478
三、所得教訓
1、不要低估機器學習學位(或任何專業的學位)
簡單來說,機器學習這個專業需要嚴肅對待!
很多人一輩子致力於開發探索機器學習的不同細節和領域的,因此,當我告訴你三個月內無法學習掌握機器學習時,請一定相信我!三個月里,你充其量可以認識一些常見的、在很短的時間內就可以理解的概念。
2、不要低估自己的能力
在整篇文章中,我都指出了我的缺點。然而,儘管困難重重,我還是設法拿到了機器學習的碩士學位,對此我必須要給自己一些表揚。
如果你以前曾克服過某些時候你認為不可能做到的事情,則你也應該相信你自己的能力。
3、不要高估自己的能力
既然我們已經為自己拍拍肩膀打足氣,那現在就到了該謙虛的時候了。如果我僅僅在之前做足充分的準備,就不會在碩士就讀期間經歷各種令我感到不安的困難了。軟體開發方面的技能使我蒙蔽了雙眼,並錯誤地將學習機器學習的難度等同於學習一個新 Web 框架或庫的開發難度。
即使你在某個領域取得了成功,這並不能保證你在其他相關領域一樣取得成功。我知道這似乎非常顯而易見,但是我還是必須說明一下。
4、永遠在學習時做到完全沉浸其中
老實說,保持長時間全神貫注的能力應被視為一種超能力。在當今數字時代,時間和注意力對於人們而言,就是一種新黃金,並且移動設備上的軟體無時不刻不在為吸引人們更多的注意力而在持續優化。
你需要重獲自控力,並能夠斷開與互聯網的連接。從長遠來看,斷開網路一個小時左右就可以使你利用這段時間專註於某一項特定任務,這對你來說可能是一件富有成果的事。
注意力集中是一項需要培養的技能,因此要有耐心並從小事做起。
四、結論
如果你都將文章讀到這裡了,那麼我現在告訴大家,讀機器學習碩士的投入和收穫是非常對等的。我通過了碩士學位的考試,並且收穫了人工智慧各領域有用的知識。
從我這個特定的碩士課程設置(因此這可能不是一般情況)安排來看,它不會教你那些比較實用的技能,例如 ML 模型的部署,資料庫的搭建。因此我沒有學習過例如 Sci-Kit Learn,Numpy 和 Pandas 等標準數據科學庫。但是你完全可以自學這些知識。
要獲得機器學習或其相關領域的工作可能不是非要有碩士學位,但這確實可以幫你敲開工作的大門。
而且,如果你擁有 ML 的碩士學位,並且擁有一些很棒的項目或作品集,那你將具有其他人所不具備的競爭優勢。
最後附上另一位 AI 專業的畢業生 David Chong 寫的一篇有趣的文章,他在文中對比了機器學習和數據科學的預期與實際情況之間的差距,剛興趣的同學可前往以下地址閱讀:
https://towardsdatascience.com/i-have-a-masters-in-artificial-intelligence-now-what-a71a92b4c51