當前位置:
首頁 > 科技 > 小心!入門機器學習,你可能遇到這些「陷阱」!

小心!入門機器學習,你可能遇到這些「陷阱」!

說起機器學習,想必大家都很熟悉這個名詞,它是人工智慧的核心,且通常在幕後出現:Amazon通過挖掘你的點擊和購買行為來為你推薦物品;Google通過挖掘你的搜索行為來投放廣告;Facebook通過挖掘你的社交網路來選擇推送的信息。

很多同學想入門機器學習,看著網上一大堆學習資料卻不知從何下手?

今天我們就來仔細聊一聊如何入門機器學習。


自學機器學習的誤區和陷阱

不要試圖掌握所有的相關知識再開始

很多同學都會有這種感覺:劍還沒配好,出門已是江湖。於是不敢邁出第一步,因為還沒有全副武裝毫無底氣。

我們知道,傳統的機器學習教學是自下而上的:

-努力掌握數學背景知識

-努力學習機器學習理論

-努力從頭開始實現演算法

……

最後開始使用機器學習(這是你的目標)。

這種方法非常慢,而且很困難。這是為想要拓展該領域前沿的學者設計的,並不適合只是想要得到結果的實踐者。

如果你在想以下問題,你就掉入了這個陷阱:

-我需要先完成線性代數的課程;

-我需要回去先拿個博士學位;

-我必須先讀完教科書。

是的,如果硬要等到條件成熟後再行動的話,那麼,等一切都弄明白時,你也就沒有了機會。

我們來看一下大部分的機器學習課程 / 書籍都要求:

線性代數:矩陣 / 張量乘法、求逆,奇異值分解 / 特徵值分解,行列式,範數等

統計與概率:概率分布,獨立性與貝葉斯,最大似然 (MLE) 和最大後驗估計 (MAP) 等

優化:線性優化,非線性優化 (凸優化 / 非凸優化) 以及其衍生的求解方法如梯度下降、牛頓法、基因演算法和模擬退火等

微積分:偏微分,鏈式法則,矩陣求導等

資訊理論、數值理論等

如果你真的想把這些知識全都補全在開始機器學習,那豈不是黃花菜都涼了?


不要學習所有的機器學習

機器學習是一個非常大的研究領域。

它是指計算機學習過程的自動化,與人工智慧有很大的交疊。

從深奧的學習理論到機器人技術——這個領域的範圍非常廣。你不可能將它們整個拿下。

所以不妨選擇一個小方向並且保持專註,然後進一步收窄。

例如,如果你認為機器學習中最有價值的領域是預測建模——創建數據的模型以做出預測。

那麼就從這裡開始。

接下來,專註於一種與你最相關或你最感興趣的預測建模。

然後保持專註。

也許你是根據技術選擇的(比如深度學習),也許你是根據問題類型選擇的(比如推薦系統);也許你不確定,只是隨便選了一個。不管怎樣,努力掌握它或至少做到精通。

我們要知道知識是我們的工具而非我們學習的目的,我們的目標畢竟不是成為一名專業的運籌學大師。

機器學習是一門多領域交叉學科,從理論算起,這個領域真的很大。大到我們真的無法一一學習到透徹,所以我們認為機器學習只求「精」,而非「泛」。

所以,同學們在開始機器學習的過程中,要邊實踐邊補充,哪裡不會補哪裡,這樣更有目的性且耗時更短。

不要把深度學習作為入門的第一門課

雖然很多人都是沖著深度學習來的,但把深度學習作為機器學習第一課不是個好主意。

為什麼呢?

首先,我們經常在新聞中看到,深度神經網路的能力不斷提升,在圖像識別、語音識別以及玩各種遊戲的能力上,一一超越了人類。

不過,隨之而來的也是越來越複雜的架構,和越來越看不懂的決策過程。也就是所謂的「黑箱」問題。

現在,每次提到深度學習,「黑箱」這個詞似乎如影隨形。怎麼打開這個黑箱,成了研究界關注的一大問題。深度學習的黑箱性更加明顯,很容易學得囫圇吞棗。

其次,深度學習的理論、模型架構、技巧還在一直變化當中,並未塵埃落定。而且深度學習實驗對硬體要求高,不太適合自學或者使用個人電腦進行學習。

不要收集過多的資料 & 分辨資料的時效性

現在各種渠道中關於機器學習的資料天花亂墜數不勝數,動輒就有幾個 G 的材料可以下載或者觀看。

很多同學唯恐錯失什麼寶典秘籍,無論看不看都得收藏以來,還有很多同學在看到有推薦書單時,一下子購買十幾本書。

同學們求知若渴的心態是十分積極的,對知識的焦慮也是可以理解的。但我們需要清楚的是,機器學習的發展和變化速度很快。在入門期間,建議 「小而精」 的選擇資料,選擇近期出版的且口碑良好的書籍。

在很多深度學習的教科書中,尤其是 10 年以前的教科書中都還依然把 Sigmoid 當作默認的激活函數。但事實上,整流函數 (ReLu) 以及其拓展變形函數,如 Leaky ReLu 早就成為了主流的深度學習激活函數。但因為知識的滯後性,很多課程/ 書籍甚至都沒有介紹 ReLu 的章節。

一般來說,比較推薦近 5 年內出版的書籍,或者 10 年以後出版的書籍。有些書籍雖然是經典,比如 Tom Mitchell 的《機器學習》,但因為其出版已經超過 20 年,還是不建議大家購買。


機器學習的一些前期準備

硬體選擇

同學們經常詢問的一個問題就是:是否可以用自己的筆記本電腦進行機器學習?

答案是肯定的,大部分市面上的數據集都可以放到你的內存中運行。在入門階段,我們很少會用到非常大的數據集,一般最大也就是 MNIST,完全可以使用個人筆記本電腦進行運行。

所以,請不要打著學習的名義重新購買機器。


軟體選擇

如果要做深度學習,Linux 還是首選,因為其對很多學習模型支持比較好(主要是深度學習的Library)。但即使你使用的是 Windows 系統,也可以用虛擬機裝 Ubuntu 來進行學習。小型的深度學習模型足夠了,大型的深度學習我們很少在本地 / 個人計算機上運行。

至於編程語言,首推Python,因為其良好的拓展支持性,主流的工具包都有 Python 版本。在特定情況下,選擇 R 作為編程語言也是可以的。其他可能的語言還包括 C++、Java 和 Matlab,但不大推薦。


語言能力

過硬的英語能力是你進行機器學習的有力武器。

當然,如果你的英語能力並不是很理想,至少打下閱讀和聽力的基礎。

雖然人工智慧領域中國現在已經做得很不錯,但主流的書籍、期刊和會議,資料都是英文的。我們可以接受翻譯版,但最好的方法還是自己有能力直接閱讀。即使你將來不做機器學習,英文閱讀能力還是會有很大的幫助。


機器學習課程表

第一階段:基礎入門 (3-6 個月)

入門的第一步是學習一些經典課程並配套經典書籍,一般來說這個過程在半年之內比較合適。

1、吳恩達 Cousera 機器學習課程

相信大家對這個課程多少都有所耳聞吧。Andrew Ng 的機器學習課程(Machine Learning | Coursera)是很多人的啟蒙課程,難度適中且完全免費。

Coursera 上總共有 49285 個人給出了評分,平均得分 4.9 分,滿分 5 分。這可以說是很高的評分了,以為大部分 Coursera 上的課程評分處於 4-4.5 分之間,能做到 4.9 分的課程寥寥無幾。

另一個值得關注的是,這門課有接近五萬人給出評分,統計學知識告訴我們這個樣本較大所以評分應該趨近於其真實值,比較可信。

根據 Freecodecamp 的統計,這門課是所有在線 Machine Learning 課程中最受到大家好評的課程。

2、《Python 機器學習》 &《Introduction to StatisticalLearning with R》

在學習吳恩達的在線課程時,推薦同時閱讀相關的機器學習書籍補充理論知識。

《Python 機器學習》:閱讀本書可以快速對如何使用 Python 機器學習框架 Sklearn 有一個基本的了解,可以很快上手開始工作。本書涉及的內容很廣泛,雖然只有 400 多頁,但內容涉及了數據預處理,維度壓縮和核函數,評估方法如交叉驗證,集成學習,情感分析,聚類,甚至還包括了神經網路和 Theano。

《Introduction to StatisticalLearning with R(ISL)》:相信正在機器學習苦海中遨遊的朋友們肯定都聽過大名鼎鼎的 The Element of Statistical Learning, 這本頻率學派的統計學習 「聖經」 被大家叫做 ESL。而 ISL 正是基於滿足更廣大閱讀人群的目的而推出的;ISL 是 ESL 的入門版,不僅大量的去除了繁複的數學推導,還加入了 R 編程的部分,方便大家可以儘快上手。

3、周志華《機器學習》

周志華老師的《機器學習》也被大家親切的叫做 「西瓜書」。

雖然只有幾百頁,但內容涵蓋比較廣泛。建議把西瓜書作為參考書而不是主力閱讀書。西瓜書因為篇幅的限制,涵蓋了很多的內容但無法詳細的展看來講,對於初學者自學來說實際閱讀很大。這本書更適合作為學校的教材或者中階讀者自學使用,入門時學習這本書籍難度稍微偏高了一些。

同學們可以在學習網課和閱讀 ISL 遇到疑惑時可以參考西瓜書的相關章節,但入門階段沒有必要一章一章的閱讀,建議在這個階段只閱讀前十章即可。


第二階段:進階學習 (3-6 個月)

在這個階段,你已經對機器學習有了基本的了解。如果你認真的閱讀了 ISL 並上完了吳恩達的課程,我相信你已經在理論上明白了什麼是線性回歸,什麼是數據壓縮,對特徵工程以及簡單的回歸 / 預測問題有了理論上的基礎。這個時候最重要的就是進行實踐!

1、Kaggle挑戰賽 / 練習

Kaggle(Your Home for Data Science)在數據分析領域早已大名鼎鼎,甚至可以說是數據分析第一社區。

Kaggle 上有很多很好的數據集和挑戰賽,你可以嘗試這些挑戰取得名次,甚至拿到獎金,對於將來找工作也非常有幫助。而且 Kaggle 的另一大優勢是網友會分享他們的經驗和看法,你也可以提出問題讓大家來幫你提出一些修正方法。

國內也有類似的平台,比如天池大數據競賽,其他類似的平台還包括 DataCastle。

使用 Kaggle 的目的主要是將技能落在實處,防止練就一身屠龍之技。機器學習最大的幻覺就是覺得自己什麼都懂了,但等到真的使用時發現並不奏效,而 Kaggle 是一個低成本的應用機器學習的機會。

2、Sklearn文檔學習

Sklearn(scikit-learn: machinelearning in Python) 是 Python 上最流行的機器學習 / 數據科學工具包,上文介紹的 Python Machine Learning 書中就大量使用 Sklearn 的 API。和使用Kaggle 的目的一致,學習的 Sklearn 的文檔也是一種實踐過程。比較推薦的方法是把主流機器學習模型 Sklearn 中的例子都看一遍。

3、周志華《機器學習》

再次提到周老師是因為西瓜書是值得常常翻看的一本書,在 kaggle 挑戰和閱讀 Sklearn 文檔的過程中你還會時不時的遇到一些新的名詞,比如流形學習(manifold learning) 等。這個時候你會發現西瓜書真的是一本中級階段大而全的書籍。


第三階段:深度學習 (3-6 個月)

因為深度學習是當下的熱點,很多公司都在尋找深度學習人才。雖然深度學習只是機器學習的一個子集,但有興趣朝這個方向發展的朋友可以在完成以上學習後單獨學習一下深度學習。

1、吳恩達深度學習課程

吳恩達在八月份的時候通過 Deeplearning.ai 和 Coursera 平台推出了最新系列的五門深度學習課程(deeplearning.ai)。有條件的朋友可以通過 Coursera 學習獲得證書,最近網易雲課堂也上線了這門課的翻譯版。

2、DeepLearning - by IanGoodFellow

深度學習這本書是由當下深度學習領域的幾位領軍人物所著,包含三大巨頭之一的Bengio,還有教父 Hinton 來作序推薦。這本書的中文本翻譯由張志華教授團隊負責,在 github 上免費放出了翻譯版本,印刷版也可以從亞馬遜中國上買到。


第四階段:深入研究

恭喜你!如果你已經完成了上面的計劃表,代表你已經有了相當的機器學習能力。這個階段,最重要的就是不要貪多嚼不爛。

在你有了一定的基礎知識後,相信你已經知道自己需要接著做什麼了也有了志同道合的朋友,這時候要把選擇權握在自己的手中,不要繼續看推薦成堆的課程和書籍。

當然,如果你希望繼續深入的話,中文可以繼續閱讀周志華老師的《機器學習》和李航老師的《統計學習基礎》,英文可以入手《Elements of Statistical Learning》。在這個階段,重點要形成成體系的知識脈絡,切記貪多嚼不爛,切記!

從閱讀論文角度來說,訂閱 Arxiv,關注機器學習的頂級會議,如 ICML/NIPS 等。


實踐經驗

研究經歷

強烈建議同學們嘗試儘早接觸科研,進實驗室。一般來說,大三的時候你應該已經有了基本的機器學習知識,儘管還比較淺。這個時候可以向老師 / 學長 / 學姐毛遂自薦進實驗室,即使是無償勞動和做基本的苦力活。

進實驗室有兩個明顯的好處:

對某個小方向會有比較深入的了解。一般實驗室做純理論的不大需要本科生,做機器視覺或者自然語言處理 (NLP) 等小方向的比較需要本科生,所以這是很好的深入了解一個方向的機會。

補充了研究經歷也可以明白自己是否適合這個領域。如果運氣好的話,你也有可能成為論文的作者之一,甚至可以去開會 (公款旅遊順道見一下業內大佬)。這對於繼續深造和去國外繼續學習都很有幫助,有科研經歷和論文是很大的籌碼,對於找工作來說也絕對有利無害。


企業實習

機器學習光說不練假把式,最好的方法還是要實踐。

因此,應該先試著做科研,再嘗試工業界實習。對待科研機會,有則就上,沒有也不是太大的遺憾。我建議大部分做機器學習的朋友儘早實習。


讀芯君開扒

機器學習並沒有大家想像當中的那麼不可捉摸,掌握一定方法是可以輕鬆入門的,機器學習領域的大門正迅速敞開,那些人為製造的知識壁壘在同學們不斷的學習中會逐漸瓦解。

讓更多的人都可以嘗試將機器學習知識應用於他們原本的領域,唯有這樣,機器學習技術才能在更多的不同領域落地生根,剝掉神秘的外衣,從而反哺機器學習研究本身。

同時,同學們也可以多多關注國內各大科技公司的機器學習發展動態,緊跟科技發展勢態。目前我國人工智慧產業發展已處於世界領先水平,眾多科技公司大力加碼人工智慧技術研發,招攬吸納國內外技術人才。比如近期,百度2018年春季實習生招聘就正在進行中,招聘職位中不乏機器學習相關崗位。將知識儲備應用到實際操作,與業績領軍人物共事學習,也是對同學們在機器學習領域有所進益的一大助力。


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 讀芯術 的精彩文章:

機器狗都會撩妹了,你該怎麼辦?
AI挑大樑,妹紙不如男?我呸!

TAG:讀芯術 |