零基礎入門「資料科學」,這些網站值得你收藏
先做一個簡單的自我介紹:某 985 大學自動化在讀,即將本科畢業去美國就讀金融科技碩士。一年以前我還是一個連機器學習是什麼都不知道的小白,只上過 C 語言和資料結構兩門程式設計基礎課,通過下面的網站一步步自學 Python、SQL 以及機器學習的各種方法,成功入門資料科學。下面是我在學習過程中使用的和了解的有關資料科學的網站,每個網站都配有自己的經歷或者相應的介紹,每個網站也給出了相應的價格,希望可以幫你快速入門資料科學,從容應對這波資料浪潮。
為什麼要學習資料科學
在今天,只要你身處網際網路,就一定能頻繁聽到大資料、機器學習、人工智慧等字眼。資料科學已經深入產業界,銀行、保險、零售行業等都在使用機器學習方法為自己的商業運作賦能,機器學習等資料科學方法代替人的新聞也層出不窮,即使我們應該保持冷靜、剋制焦慮,但科技的大趨勢我們也不能視而不見。
從職業發展來說,學習資料科學或許可以讓你在今後的發展中佔得先機,在這波科技浪潮中取得優勢;從個人角度來說,未來資料分析是必不可少的,將來明白如何利用資料可能就和今天明白如何使用電腦一樣稀鬆平常,掌握資料分析的一些技能或許可以讓你生活地更有效率。

為什麼用 MOOC
儘管資料科學炒的火熱,想要入門一門學科絕非一件容易事。縱使有些網站有著系統的培訓班,動輒 1000 大洋以上的報班費真的傷不起;而對著網上的免費資料自學,從各種公眾號免費獲取到 10 個 G 的資料,但大多資料凌亂且沒有體系,永遠都是放在硬盤裡「吃灰」;對著各種工具書學,雖然系統但難免概念的堆砌,有時候看完所有基礎操作也做不完一個完整的專案。
我個人覺得學習資料科學這類需要實際操作的學科,最好的方式是 learning by doing ,即在學完了一個方法後要立馬實際操作並感受,哪怕不報錯地完成一個最簡單的專案也會有極大地自信心。所以我認為,網站和 MOOC 類學習是學習資料科學最好的方式。在看完或者閱讀完教程後,這些課程也會留有相對的作業,通過一個一個章節的學習,會不斷鞏固基礎,也完成一個一個的專案。
入門資料科學網站推薦
下面這些 MOOC 類網站都是英文網站,按推薦順序排序。我經過對比之後,發現相比於國內的學習網站,這些英文網站課程質量會更好,有些完全免費,有些需要付費但價格著實不貴,價效比都比較高。
別擔心,這些課程的英文難度都不會太高,很多都配有字幕,有些網站甚至有中文翻譯。利用英文網站學習,一方面可以學到質量更高的課程,另一方面還能潛移默化地鍛鍊英語,何樂而不為呢。(但有些可能科學上網速度會更快。)
DataCamp.com
DataCamp 是一個互動性的 MOOC 網站,視訊類的講解偏少,更多的是文字直接指導你進入實戰專案。同時 DataCamp 也是我最推薦的資料科學入門網站,從 Python 與 R 的基礎講解到資料處理流程,從機器學習到深度學習,它都有涉及。如果沒有時間嘗試不同的 MOOC,認真刷完它的一個 Career Track 就夠用了。

DataCamp 有以下三個特點:
-
直接開始上手做:不像通常的 MOOC 是視訊講解後課下留作業,DataCamp 確實做到了讓你在做的過程中學習,如下圖:左邊是指導性文字,右邊是你需要填寫的 code。這樣做可以說把 learning by doing 做到了極致。
DataCamp 學習介面 -
不用在自己電腦上安裝 Python或 R的環境:網站上有云端的執行環境,寫完程式碼後直接提交就可以看到結果了,可以說非常省心省力。作為經歷了小白階段的我,可以說非常理解裝環境的痛苦。程式碼還沒寫一行,裝環境就費了半天勁。有例如 Anaconda 的整合包順利安裝完還好說,要是出了什麼問題網上一搜全是用命令列,很多寫的又不詳細,完全不知道每個命令是幹嘛的,還沒入門就已經放棄。但在這個網站學習完全不用擔心這些事,先學習程式碼如何寫,完整地寫一個專案入門,那些裝環境的瑣碎事情等到深入瞭解了再做也不遲。
-
幫你預先安排好了課程列表:網站將一個個課程打包為 Skill Tracks 和 Career Tracks ,如下圖。不論你是想學 Python 還是 R,想成為資料分析員還是資料科學家,只用找到相應的 Track 點進去跟著學就好了,不用再糾結下一步學什麼技能。當然,這些列表是靈活的,你完全可以跳過某個 Track 的一些課程。

同時,DataCamp 還提供了一些語言(如 Python)、工具(如 Jupyter Notebook)以及各種包(如 NumPy、Pandas、Matplotlib)的 cheatsheet (小抄) ,簡潔而美觀。
價格:一些課程免費,解鎖全部課程 $25 / 月。
Coursera | Machine Learning Specialization - University of Washington
Machine Learning Specialization - University of Washington 是入門機器學習的優質課程,由華盛頓大學兩位教授主講。此課程是一個系列,原本總共有 6 個 course,分別講解機器學習基礎(Machine Learning Foundations)、迴歸(Regression)、分類(Classification)、聚類(Clustering)、矩陣分解(Matrix Factorization)、深度學習(Deep Learning)。每個 Course 大約 6 個章節,每個章節學習時間大約 3 小時。

此課程最有特色的地方,是用第一個 Course:Machine Learning Foundations 統領接下來 5 個 Course,每個章節對應著接下來 5 個 Course,用最簡單的案例和現成的工具,利用上述的 5 種機器學習方法分別完成 5 個專案。也就是說,在第一課裡你就完整地利用機器學習解決了一個個現實的問題,然後再在接下來的 5 個課中深入學習每一個機器學習的方法。我對這種自頂向下的學習方式的方式完全贊同,因為一開始我就巨集觀瞭解了該用什麼方法解決什麼問題,而不是學了一堆命令卻不知道解決問題的流程;而且經過第一個 Course 的學習,會有極大地成就感,因為每次都成功完成了一個專案,接下來會更想了解這個現成工具是怎麼製作的,也就更想深入剖析機器學習的各種方法。

但是為什麼說是 原本 有 6 個 Course 呢,因為現在這個系列只有 4 個 Course 了…… 教授老爺子課程開發到一半跳票了,據說是因為他開發的 Trui 軟體包被蘋果收購以後忙得沒時間開發完課程了。不過別擔心,即使只有前四個課程,迴歸、分類和聚類依舊是機器學習的重頭,學完四個課程會掌握絕大部分的機器學習技術。如果時間有限想快速入門,建議學習第一個課程,同樣會比較全面地瞭解機器學習的各種方法,同時也能利用軟體包解決一定的問題。
對比大名鼎鼎的吳恩達的機器學習課程,這個機器學習可能更適合小白,同時課程內使用 Python 這一對新手更加友好的語言,而吳恩達的課程用的是 MATLAB,所以華盛頓大學的課程更適合入門機器學習。依託於 Coursera 這一大平臺,課程每個視訊都配有英文文稿,部分視訊有中文字幕,相信學習起來更易上手。
價格:免費旁聽(選擇課程時點 Audit),上完課後拿證書要付費。
Udemy | Complete Python Bootcamp
Complete Python Bootcamp: Go from zero to hero in Python 3 是入門 Python 比較推薦的課程,導師講解很細緻,邊程式設計邊講,從 Python 最基礎的資料結構、到函式和方法,再到模組和類,內容安排很合理,且每章都有作業可以檢測自己的學習。

不過此課程是關於 Python 語言的課程,將 Python 作為開發語言完全講解,實際上應用到資料科學的 Python,只用上到此課程的 Module & Package 就足夠了,剩下的有興趣也可以繼續學習,但在資料科學中可能應用不大。
價格:RMB 100 元左右。

Khan Academy (可汗學院)

我在 Khan Academy 上學的 SQL 基礎用法。同 DataCamp 一樣,程式碼可以直接在這個網站上執行,無需本地安裝環境。上課過程中互動性也很強,同時運用積分制讓你每完成一個專案都會有成就感。
可汗學院對於資料科學的課程較少。但其本身有著非常全面的課程,從電腦科學到人文社科都有。在電腦科學的門類中也有不少基礎課,課程也比較通俗易懂,適合複習基礎或拓展知識面。
價格:完全免費。

更多的學習網站
上述四個網站是我親身體驗過並用來入門資料科學的網站。在學習過程中也同樣蒐集了別人推薦的網站,但還沒來得及體驗,以下列出來供感興趣的朋友們點選。
Dataquest
Dataquest 是以文字教程為主的網站,也是邊看邊學,與 DataCamp 很相似,有興趣的朋友可以探索一下。
價格:$29 / 每月。

Udacity (優達學城)
Udacity 內所有的課程都是和 IT 有關的,更 Geek 一點,不像 edX 或者 Coursera 還有人文社科類的課程。Udacity 優點是課程有體系化,有針對某個職位的專項課程,對職業發展比較友好;但價格真的不便宜,一般一個奈米學位都要上千大洋。網站內也有免費的課程,同時大多數課程都有中文版。
價格:課程費用不等,都在幾千左右。

edX
edX 由麻省理工學院和哈佛大學共同建立,與 Coursera、Udacity 並稱為 MOOC 三巨頭。其實光看 edX 開課的大學列表就挺震撼的了,可以說足不出戶也可以享受頂級大學的課程。關於資料科學,根據網上的評價推薦下面的課程系列:

Data Science - Harvard University
哈佛大學推出的資料科學系列課程 Data Science - Harvard University ,共包含 9 個課程,主要使用的是 R 語言。順便提一下,哈佛大學才新增了 Data Science 的碩士學位,2018 年秋季是第一批學生入學,從側面也可見資料科學的發展。

Microsoft Professional Program in Data Science
微軟推出的資料科學課程 Microsoft Professional Program in Data Science ,課程內容比較全面,有 Python 和 R 語言兩條支線,可以任選一條完成課程,當然也可以都掌握。同時也將 Excel 以及自家雲平臺 Azure 融合進課程,用微軟系的朋友可以更多關注一下。

價格:edX 所有課程都是免費的,不過上完課程要獲取證書需要付費。
Coursera
Applied Data Science with Python Specialization
密歇根大學的系列課程 Applied Data Science with Python Specialization ,據說對新手比較友好,共 5 個 Course,從基礎到機器學習以及深度學習都有介紹,比較全面。

Machine Learning - Stanford University
這門課程 由大名鼎鼎的斯坦福教授吳恩達主講,很多人就是衝著這個名號去學習這門課程的。此課程很全面的講解了機器學習的各個部分,也會有很多案例應用。但是課程全程用的是 Matlab,並不是用現在資料科學最主流的 Python 和 R,從這方面來講對新手來說可能不是很友好,建議有了一定機器學習基礎後再用這門課補課。

Deep Learning Specialization
同樣是吳恩達領銜的深度學習課程 Deep Learning Specialization ,共有 5 個 Course,包括神經網路和卷積神經網路。

價格:所有課程均可免費旁聽(點 Audit),獲取證書需付費。
Brilliant.org
Brilliant.org 是我偶然間從 Instagram 推薦的廣告上發現的網站,網站製作精良,多是數學與科學的主體。網站試圖以最簡單的方法出傳達科學知識,絕對是不可多得的好網站。同時也有人工智慧與機器學習的主體,但應該更偏重理論,有興趣的朋友可以瞭解一下。同時這個網站還有同名 app:Brilliant。

價格:基礎課程免費,其他需要付費
結語
以上就是我用來入門資料科學的網站以及在學習過程中搜集到的感興趣的網站,分享出來供想要入門的朋友參考。資料分析是一個趨勢,且不說忽視它會不會被淘汰,但掌握它絕不是一件壞事,畢竟技多不壓身。在入門資料科學時,看書或許有點沉悶,上線下的培訓課或許又太花時間,而這些 MOOC 課程既讓你可以自由安排時間學習,也更好地發揮了多媒體的優勢,讓你 Learning by doing。你只需要靜下心來沉浸於英語的環境,並加上一點耐心,挑出自己喜歡的課程系列並持續學下去,相信你會在未來擁有更高的起點。