文科生如何入門機器學習

作者 | Andrew Froehlich

AI技術變得越來越熱門,很多人開始轉行進入這一領域,其中當然也不乏文科生。他們在普遍缺乏大學數學知識的情況下,就不能入門機器學習了嗎?

最近有位Reddit網友David Code,他也是一名文科生,曾經在脫口秀節目《週六夜現場》工作過。

後來他經過兩年“地獄式”的自學,十幾次的挫敗,最終掌握了機器學習的知識,並把他的經驗寫成了一個長篇博客。

他說,長期以來編寫AI書籍和在線課程的都是專家,而這些人因爲專業而會忽視初學者的能力。他寫的博客跳過了專業的部分,用盡量通俗幽默的方法來展現機器學習的入門知識。

知識是“算”出來的

學習AI之前,首先就要摒棄原來文科的學習方法。

在博客開頭,David就告誡初學者,學習數學、計算機知識不像看小說,不要指望一次就能理解,可能需要反覆閱讀和推演5次才能看懂。

David說,當他學到比較難的內容時,總是會設置一個計時器,以提醒不要絕望、不要輕易言敗,而是要保持微笑、耐心和堅持。

雖然David在文中使用類比、圖片、示例等方法來傳授知識,但是這篇文章在數學上也是嚴謹的。如果你沒有立刻學會,不要輕易放棄。

理工科的知識從來不是“看”就能學會,更需要的是“算”。如果不進行練習,就無法學好博客中涉及的數學。

理解上的錯誤

全篇博客介紹了深度學習的4個基本概念:前饋、梯度下降、全局最小值、反向傳播。文中都用盡量通俗地方法介紹了這些基本概念。例如用碗中的小球來比喻梯度下降,用詳細到每一步地圖解來介紹矩陣乘法。

博客作者David作爲一名文科生,又是自學,難免會有理解上的錯誤。

有位網友就指出他文章中的一些錯誤,比如:

神經網絡不是深度學習,相反,深度學習是指使用一種神經網絡。
梯度下降不一定是朝着全局最小值發展,最終收斂到的可能是局部最小值。

文章中也缺乏一些重要概念的解釋,如監督與無監督學習、過擬合與欠擬合、模型的選擇和超參數的調整,等等。

但總體上來說,這篇博客仍不失爲一篇優秀的文章,否則也不會在Reddit機器學習板塊上一天就收穫300讚了。

數學真的不重要嗎

當然,David寫博客的目的不是宣揚沒有數學知識就能掌握機器學習。它只是一篇向文科生提供的入門通俗讀物。

如果想要更深入的學習,可能還需要投入幾百個小時的學習時間。無論你喜歡與否,都需要數學知識才能理解機器學習和統計數據,沒有數學就無法學習機器學習。

很多其他網友在激烈的討論中強調了以上幾點,David本人也表示同意。

總之無論如何,微積分、線性代數、統計學都是學習深度學習的基礎。或許你不需要太深入的瞭解,但是沒有這些知識是萬萬不行的。系統地學習數學知識,能幫你更快入門深度學習。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章