如果是個窮光蛋:如何從零開始學習成為一個數據科學家?
去年,我自學了數據科學,搜集了幾百個在線資源,每天學 6~8 個小時。與此同時,我白天還在日托中心上班,拿著***的薪資水平。
盡管我資金不足,但我的目標是從事自己熱愛的職業。
因此,我在過去幾個月中取得了一些成就。我發布了自己的網站,主流的在線數據科學網站 KDnuggets 也對我進行了報道,我還在***競爭力的計算機科學研究生課程中獲得了獎學金。
網站地址:https://harrisonjansma.com/
我在本文中提供了一些指導和建議,以便你自行學習數據科學課程。我還提供了一些參考工具,希望能給想要學習的人一些幫助,讓他們可以在數據科學領域中從事更有激情的職業。
快速說明:我說的「數據科學」,指的是將數據轉化為現實行為的工具集合,包括機器學習、數據庫技術、統計、編程以及特定領域的技術。
開啟學習之旅的一些資源
互聯網上亂七八糟混亂一片。要從中學習就像是從消防水帶的末端喝水一樣。
有一些更簡單的替代方法可以為你從中理出頭緒。
像 Dataquest、DataCamp 和 Udacity 這樣的網站會教你一些數據科學的技巧。這些網站每一個都創建了一個教育計劃,以便你按主題學習,而你幾乎不用做什么課程計劃。
問題在于這些網站都付費不低,而且它們無法教你如何在工作環境中應用這些概念,而且它們也會妨礙你繼續探索自己的興趣和激情所在。
而像 edX 和 coursera 這樣的替代品則無需付費,它們會提供關于某個特定話題的一次性課程。如果你可以在視頻環境或課堂環境中好好學習的話,這些都是學習數據科學的***方法。
你可以從***個網址中獲得一些數據科學課程,也可以從 David Venturi 的博客或 Open Source DS Master 上找到一些免費的課程。
- 地址:https://www.class-central.com/subject/data-science
- David Venturi:https://medium.com/@davidventuri/i-dropped-out-of-school-to-create-my-own-data-science-master-s-here-s-my-curriculum-1b400dcee412
- Open Source DS Master:http://datasciencemasters.org/
如果你只需要閱讀就可以學得不錯的話,推薦你看《Data Science From Scratch》。這本書是一個完整的學習方案,可以作為在線資源的補充。你可以在線免費獲取這本書的 pdf 版,也可以在 Amazon 上買到紙質版。
在線 PDF:
http://math.ecnu.edu.cn/~lfzhou/seminar/[Joel_Grus]_Data_Science_from_Scratch_First_Princ.pdf
這只是一小部分學習數據科學的免費資源,還有更多。為了更好地理解你在學習中需要獲取的技能,我將在下文詳細敘述更廣泛的學習指南。這些內容不僅僅是課程列表或者書單,而是一些更加高級的內容。
課程指南
數據科學課程指南
1. Python 編程
編程是數據科學的基本技能。熟悉 Python 的語法,了解如何用不同的方式(Jupyter botebook、命令行以及 IDE)運行 Python 程序。
我花了大概一個月的時間復習 Python 文檔、Hitchhiker 的 Python 指南以及 CodeSignal 上的代碼問題。
- Python 文檔:https://docs.python.org/3/tutorial/
- Hitchhiker 的 Python 指南:https://docs.python-guide.org/intro/learning/
- CodeSignal:https://codesignal.com/
提示:留意程序員解決問題的常用技巧(即「算法」)。
2. 統計&線性代數
這是機器學習和數據分析的先決條件。如果你已經對此有了充分的了解,那么請用一到兩周復習一下重點概念。
尤其要注意描述性統計。理解統計數據是一項非常重要的技能。
3. Numpy、Pandas&Matplotlib
學習如何加載、操作和可視化數據。掌握這些庫對你的個人項目而言至關重要。
快速提示:你無需記住每種方法或每個函數的名字,記住這些東西需要實踐。忘了的話 Google 一下好了。
瀏覽以下三個文檔:
- Pandas 文檔:http://pandas.pydata.org/pandas-docs/stable/
- Numpy 文檔:https://docs.scipy.org/doc/numpy/user/index.html
- Matplotlib 教程:https://matplotlib.org/tutorials/index.html
記住,實踐出真知!
4. 機器學習
學習機器學習算法的理論和應用。然后將所學的概念用到現實世界中你關心的數據上。
大多數初學者是從處理 UCI ML Repository 中的小數據集開始的。他們對這些數據進行處理,并在這些數據上實踐 ML 教程。
Scikit-learn 文檔中有一些關于常用算法應用的優秀教程。我還發現一個不錯的 podcast 教學資源,是關于 ML 背后的理論。你可以在鍛煉的時候或者上下班途中收聽。
地址:http://ocdevel.com/mlg
5. 生產系統
工作意味著能夠獲取真實世界的數據并對其進行分析。為此你需要學習如何使用商業計算資源,來獲取、轉化以及處理數據。
AWS、Google Cloud 以及 Microsoft Azure
這是數據科學課程中教的最少的部分,因為你要用的特定工具主要取決于你日后要進入的行業。但數據庫操作是一項必需的技能。你可以在 ModeAnalytics 或 Codecademy 上學會用代碼操作數據庫。你還可以在 DigitalOcean 上實現你自己的數據庫。
另一個常用技能是版本控制。你可以創建 GitHub 賬戶,每天使用命令行提交代碼,輕松獲取這項技能。在學習其它技能時,一定要考慮到自己的興趣和激情。舉個例子,如果你對 web 開發感興趣,那么就要看一下這個行業中的公司所使用的工具。
執行課程的建議
1. 你獲取概念的速度要比你學習概念的速度更快
事實上,有成千上萬的網頁和論壇在解釋常用數據科學工具的用法。因此在線學習時很容易轉移注意力。當你開始研究某個主題時,要將自己的目的牢記于心。如果你沒有記住的話,你可能會被任何抓人眼球的內容吸引過去。
解決方案:建一個收藏夾把你感興趣的網頁資源都存起來。這樣你可以晚點再看保存好的材料,先將注意力集中在你現在關心的主題上。
如果你這么做了,你就會得到一個有序的學習路徑,它會告訴你你應該關注什么內容。注意,當你探索感興趣的新主題時,你的閱讀列表會很快增長到數百個之多。別急,請看第二條建議。
2. 別擔心,這是一場馬拉松,而不是一段沖刺
如果你想在數據科學領域取得成功,就要把學習視為一個貫穿整個生命的過程。
要記住,學習的過程就是你所獲得的獎勵。
在整個學習過程中,你將探索自己的興趣點,并發現更多驅動你學習的東西。學得越多,你從中獲得的愉悅感就更多。
3. 學習->應用->重復
不要只是學習一個概念,然后就轉向下一件事。學習過程直到你將其應用到真實世界中才停止。
不是每個概念都要在你的研究中占有一席之地。重要的是要堅持下去,要記得你在學習,這樣你才會對這個世界產生影響。
4. 建一個作品集,它可以告訴別人你值得信任。
談到作品集,懷疑主義是你在學習數據科學時面臨的***困境之一。這種懷疑可能來自于他人,也可能來自你自己。你的作品集是向世界表示你有能力并對自己的能力充滿信心的一種方式。
因此,在研究數據科學時,建一個作品集是你要做的最重要的事。一個好的作品集可以帶給你一份不錯的工作,并讓你成為更自信的數據科學家。
你從零開始構建了自己的 web 應用程序嗎?建立了自己的 IMDB 數據庫嗎?撰寫過有趣的醫療保健數據分析嗎?將它們放到你的作品集中去吧。
注意,寫入的東西要可讀性強、很好地記錄了代碼,作品集本身也要看起來不錯。
這是我的作品集。公開作品集的簡便方法是創建一個 GitHub 庫,這個庫中要有很好的 ReadMe(總結頁)以及相關的項目文件。
GitHub 作品集要既美觀又簡單。想要更高級的作品集的話,請查看 GitHub-IO 來托管你的免費網站(示例:https://alexisbcook.github.io/#blog)
5. 數據科學 + _______ = 富有激情的職業
數據科學是旨在改變世界的工具集合。有一些數據科學家構建了計算機可視化系統來診斷醫學圖像,還有一些數據科學家遍歷了數十億的數據來找到網站用戶偏好的行為模式。
數據科學的應用是永無止境的,這也是為什么找到自己感興趣的應用領域很重要。如果你找到感興趣的主題,就會更投入地做出很好的項目。所以,學習的時候,要注意那些讓你感到興奮的項目或想法。
一旦你花時間學習了,試著將點連接起來。找出令你著迷的項目之間的相似之處,然后花一些時間研究一下涉及到這類項目的行業。一旦找到了感興趣的行業,可以把獲得該行業所需的技能和專業知識作為你的目標。
如果你能做到這一點,你就已經準備好將在學習上的辛勤努力轉變為充滿激情和成功的事業了。
總結
如果你喜歡發現世界,如果你為人工智能著迷不已,無論你現在的處境如何,你都可以投身于數據科學行業。
為了激勵你的學習之旅,你要堅持不懈,還要自律。如果你是那種可以促進自己提升的人,你就可以自己掌握這些技能。畢竟,這就是數據科學家的意義所在。好奇、自我推動、并熱衷于尋找答案。
原文地址:
https://towardsdatascience.com/how-to-learn-data-science-if-youre-broke-7ecc408b53c7
【本文是51CTO專欄機構“機器之心”的原創譯文,微信公眾號“機器之心( id: almosthuman2014)”】