1.熟悉基礎的數據科學術語git
在你開始學習以前,第一步是什麼,確定是理解什麼是數據科學!github
讓咱們花點時間回答這個問題,看一下數據科學中的不一樣角色,並熟悉這個領域的經常使用術語。面試
首先最重要的是要知道你將要作的是什麼,那麼咱們首先回答這個問題 - 爲何你想從事數據科學工做?是由於你喜歡編程,數學,統計和他們提供工做的機會嗎?或者是你正在順應潮流,由於'數據科學'和'機器學習'是目前有關將來的發展潮流?算法
1.1什麼是數據科學?編程
目前天天生成的數據量呈指數級增加!在過去十年中,數據的來源以及收集和存儲數據的能力已經取得了很大的進步。公司正在使用各類工具和技術來挖掘數據中的模式並收集有用的信息。簡而言之,這就是數據科學的所有意義所在。安全
「數據確實爲咱們所作的一切提供了支持。」 - LinkedIn首席執行官Jeff Weiner網絡
簡單的說,數據科學涉及使用各類技術來理解數據並構建預測模型以作出業務決策。數據科學的一些流行應用包括欺詐檢測,體育分析,航空公司航線規劃等。機器學習
所以,若是數據科學是關於從數據中獲取洞察力和發現信息的模式,那麼數據科學家和統計學家之間有什麼區別?這是一個很是好的問題!讓咱們來看看他們之間有什麼區別。編程語言
1.2數據科學家與統計學家函數
數據科學家和統計學家都使用這些數據從中得到有用的信息。統計學家專一於識別數據中的關係,而數據科學家則致力於使用關係並創建模型來預測將來的結果。數據科學家的目標是創建一個高精度的通用模型。
統計學家常用R,Excel或MATLAB等工具,由於它們有許多用於數據分析的庫。另外一方面,數據科學家主要使用Python,Apache Spark等來探索數據和構建模型。
1.3數據科學中的通用術語
數據科學是一個複雜而廣闊的領域。讓咱們理解它的不一樣的組成部分,這樣就能夠縮小你長期須要關注的領域。
機器學習:機器學習是利用算法(如線性迴歸,邏輯迴歸,決策樹等)從數據中學習並作出明智的決策。例如,使用已經得到貸款的人的數據,並試圖預測他們是否會再次貸款。
深度學習:深度學習是機器學習的一個子集,旨在模仿人類的決策能力。例如,識別給定圖像中的對象,或將圖像分類爲貓或狗。
天然語言處理(NLP):NLP是數據科學的一個分支,負責分析,理解和從文本數據中獲取信息。你在亞馬遜上看到的全部評論,或者你天天瀏覽的全部推文,都是由NLP技術用於解析它們並理解用戶的情緒。NLP是目前數據科學領域中最熱門的領域之一。
計算機視覺:顧名思義,計算機視覺擁有使機器可以看到和理解周圍環境的能力。有沒有注意到Facebook如何自動推薦圖片中的標籤的?或者自動駕駛汽車如何檢測道路上的物體?這些都是計算機視覺的主要例子。這是另外一個將在將來幾年內出現大量工做的領域。
推薦引擎: 曾經使用過Flipkart或Amazon的任何人都是推薦引擎的一部分。這部分包括了分析過去的用戶行爲,以提供相關的建議或推薦。「購買此產品的客戶也購買了」或「根據你過去的購買狀況推薦給你」都是推薦引擎在起做用。
2.開始你的數據科學之旅
因此當你決定冒險嘗試成爲一名數據科學家時,那麼沒有什麼能夠阻止你了。首先,恭喜你選擇了業內最熱門的領域!
若是你是一個沒有行業經驗的應屆生,那麼實習是在數據科學中發揮做用的最佳方式。他們爲你提供了一個得到行業經驗的機,同時與經驗豐富的退伍軍人一塊兒工做。在這幾個月裏,你有不少東西須要學習,而且這將影響你的職業生涯。
在接下來的幾節中,咱們將介紹第一次數據科學實習所需的基本技能。
2.1瞭解統計學和機率論
統計學和機率論是數據科學所需的基本核心技能。若是沒有對這二者的充分理解,你將不會在這個領域(或面試過程當中)取得很大進展!從分析數據並作出有價值的推論到理解模型的工做原理,統計和機率的基本概念都被整合到數據科學生態系統中。
咱們能夠利用許多統計技術和機率分佈來理解給定數據的結構。如下是在處理數據科學問題時將要使用的一些重要的知識點:
2.2良好的編程技巧(選擇一種編程語言)
是的,你須要瞭解編程才能成爲數據科學家。這是沒法逃避的。AutoML(自動機器學習)正在逐漸被業界接受,可是如今,除了冰冷的編碼技能以外別無選擇。
目前用於數據科學的兩種最流行的編程工具是Python和R.你必須熟悉二者中的至少一種。這些都是開源編程語言,都擁有一個日益增加的大型活躍社區。
R主要用於探索性工做,是統計分析任務的首選。它有一個相對較大的統計軟件包庫。另外一方面,Python是機器學習和深度學習任務的首選。它有許多機器學習和深度學習庫和包。
現在,Python在業界確定更受歡迎。若是你傾向於學習高級機器學習主題,固然還有深度學習,這是一個簡單的選擇。Python提供的靈活性在這些任務中是無與倫比的。R是一個很是熟練的工具,用於進行探索性分析,包括產生一些很是有洞察力和審美愉悅的情節。
2.3基本的機器學習算法
若是你已經掌握了統計學和機率的基礎知識,而且已經掌握了編碼技能,那麼下一步就是學習機器學習算法的基礎知識。熟悉常見的機器學習算法,如線性迴歸,邏輯迴歸,決策樹,隨機森林,樸素貝葉斯,k近鄰和支持向量機。
嘗試一次只關注一種算法,並瞭解每種技術背後的直覺。擁有算法的理論知識及其工做方式與可以實現算法一樣重要。若是你知道算法的工做原理,你將更容易理解算法的各類參數,調整這些參數以及決定使用哪一種算法與哪一種類型的數據。
3.構建你的數字產品組合(在線資料)
當你正在努力學習全部的這些新概念時。那麼你應該試着展現本身的技能,從而補充全部這些努力。
僅依靠統計,編程和機器學習可能不會讓你得到實習的機會。你須要創建本身的數字形象。展現你巨大的潛力,展現你在數據科學之旅中得到的技能。讓全世界都知道!
在本節中,咱們將介紹可用於構建重要文件的不一樣方法。
3.1項目工做
我相信學習任何東西的最好方法是將你的知識付諸實踐。沒有什麼比在項目中展現它更能說明「我知道這種技術」了。構建端到端的項目可以讓你瞭解數據科學家在平常角色中可能面臨的各類可能性和挑戰。
你能夠尋找與你感興趣的領域相關的開源項目。相信我,互聯網上並不缺少數據。若是我是一個小說的忠實粉絲,那麼我能夠用NLP來分析我最喜歡的做家的做品。這代表了對數據科學的熱情,並讓你在將來的僱主眼中得到優點
如下是一些實踐問題(數據連接在文章的最後會放出),能夠得到一些寶貴的實踐經驗:
3.2建立GitHub配置文件
你還應該在此階段開始建立一個GitHub帳戶並使用它。這本質上是你的數據科學簡歷,世界上任何人均可以看到它。
大多數數據科學招聘人員和麪試官都會查看求職者的GitHub資料,以評估他/她的潛力。在處理項目時,能夠同時列出GitHub上的問題語句和代碼。我整理了一個小清單,你能夠在下次將代碼添加到GitHub時遵循:
3.3寫博客
我會告訴你一個推進我數據科學事業發展的重要祕訣 - 那就是撰寫文章。每當我學習一個新概念時,我都養成了記筆記的習慣。而後很容易的將其轉換爲文章。這有助於我以更加清晰的方式理解該技術。
你也應該這樣作!社區很樂意跟你分析他們的想法和反饋。而當你將文章公開發表時,人們也會分享他們的觀點 - 例如「添加實際與預測的可視化可能會有所幫助」,這能夠幫助你改進技術。
Quora能夠被視爲寫博客的另外一種選擇(這是我第一次開始寫做的地方)。將複雜的主題分解爲易於理解的單詞,有助於你掌握主題並精細調整你的結構化思惟的技能。
首先,你能夠寫一些基本的主題,例如使用matplotlib庫的進行數據探索、實踐問題的方法和解決方案,完成的MOOC的總結或筆記等。
3.4建立和優化你招聘網站的我的資料
LinkedIn是世界上最大的職業社交網站。即便你是一名大一的新生或着即將完成學業的研究生,均可以嘗試參加一下。
招聘人員常用招聘網站中的信息來驗證你的我的資料,或在有機會的狀況下與你聯繫。你能夠將其視爲你的第二份簡歷或紙質簡歷的電子版。若是你想找一份實習的工做可是你的我的資料未更新(或不存在),那麼你可能會錯過這份工做。
根據你申請的實習職業優化你的我的資料。更新你過去的經驗(若是有的話),教育水平,項目和興趣。若是你還沒有建立你的我的資料,那麼請快速的去建立我的資料。 你還應該經過與數據科學領域的人員創建聯繫來開始構建你的關係網絡。
有不少人,包括不少有影響力的人,他們按期發佈有用的開發成果,我認爲去認識他們對你來講應該是強制性的。
4.制定數據科學簡歷的作法和注意事項
你的簡歷本質上是你職業生涯的亮點。這是招聘人員/招聘經理看到的第一件事,因此製做完美的簡歷絕對是你實現尋找一份實習工做的關鍵。
即便你擁有實習要求部分列出的全部技能,但若是你的簡歷未達標,那麼你極可能得不到面試的機會。
你必須,絕對必須,花費大量時間來創造和完善你的簡歷。
那麼在作這件事時要記住哪些關鍵的事情呢?
確保你的簡歷是最新的,而且沒有任何拼寫錯誤。檢查兩次甚至三次。讓你的同事或朋友從招聘人員的角度對其進行審覈。
在建立或更新簡歷時,請始終牢記這一點:
寫下你所知道的,知道你寫的。
還記得你在大學的第一年作的項目嘛?那多是2-3年前的事了,若是你不記得的細節了?要麼研究一些它,要麼就不在簡歷上寫它。有10個你沒法談論的項目對招聘人員是一個危險的信號!你寫下的全部技術和技能也是如此。
5.準備你的數據科學實習面試
得到一份數據科學有關的實習的最大挑戰無疑是面試過程。鑑於你以前沒有此領域的工做經驗,招聘人員會看你簡歷的哪些方面?那麼你應該在簡歷和實際面試中展現哪些技能?
這是一個大問題!知道如何駕馭這些棘手的領域可能會影響你得到實習的成敗。
固然,你確定會提到你參與過的(或正在進行中)的項目。但除此以外,不管你有什麼背景,面試官都會熱衷於一些特定的話題。本節將介紹你須要關注並準備面試的關鍵問題。
5.1結構化思惟
在複雜的數據科學世界中,構建思想的能力是一項寶貴的技能。面試官會判斷你是否有能力將問題陳述分解爲更小的步驟。而且你會怎麼作,這就是這項能力的寶貴所在。
對於任何給定的問題陳述,有必要肯定最終目標是什麼。下一步是理解提供的數據,並寫下實現最終目標所須要的流程。全部這一切都發生在有限的時間範圍內(面試官沒有一成天的時間去面試你!)。你明白爲何有條理的思惟方式這麼重要了麼?
爲告終構化思惟技巧,你會獲得一個問題 - 目前有多少封郵件正在發送?那是我在面試時被問到的問題。或者班加羅爾的道路上有多少輛紅色汽車?印度天天會邁出多少支香菸?
例如,若是我想了解上個月信用卡投資組合中的收費忽然增長的緣由,我會將其放在相似於如下的結構中:
這些問題沒有精確的解決辦法。那你怎麼解決它們呢?首先要明白的是,面試官並不指望獲得確切的數字答案。相反,他們試圖瞭解你如何看待問題以及你得到最終答案的方法。要求使用筆和紙(或白板)是一個好主意,這樣你就能夠逐步展現本身的想法。
5.2瞭解你申請的公司
你可能會以爲這一點與討論的無關。這並非什麼須要說起的事情,由於每一個人在申請以前都要看一遍公司的職業描述。但這是一個有用的觀點。
但僅僅只是瀏覽描述是不夠的。
咱們常常聽到招聘人員說有的求職者在沒有讀過他們公司正在面試的職位的狀況下就進來面試了。我我的看到一些人由於不喜歡將來的工做而在實習的幾周內就離開了。
在你決定申請工做以前,你必須知道公司是作什麼的和公司的願景是什麼。關於這一點,沒有第二條路能夠走
個人建議是研究一下公司,瞭解他們的工做。你以爲本身是否能夠適應?你能直接看到你的技能能夠對公司產生影響嗎?你還必須完全的查看職位描述並在面試中提出問題,以瞭解你是否適應這家公司。這將節省你的時間和公司的時間。
6.增長你被選擇的機會
到目前爲止咱們看到的指針能夠安全地放在「必須擁有」的類別下。若是不確保檢查每個選項,你就沒法作到。可是,你能夠進一步提升你現有的技能,從競爭中脫穎而出。誰不想那樣作?!
在本節中,我借鑑了本身的實習經驗,爲你提供了一些額外的建議和技巧,以提升你被選中的機會。
6.1高級機器學習
沒有什麼比看着你自信地回答先進的機器學習問題更能打動面試官了。他們採訪的大多數人都能解決基本問題。掌握先進的ML知識確定會給你帶來優點。
確保你已經覆蓋了咱們以前討論過的基本機器學習主題(統計數據,機率,迴歸,樹算法等)。而後,你能夠安全地跳轉到高級ML算法,推薦系統,時間序列預測算法等。
在你職業生涯的這個階段,我沒有必要詳細瞭解全部算法。我相信你會發現3-4種很是有用的技巧,因此要好好學習它們 - 並在面試中喋喋不休。你應該對算法及其背後的數學有一個公平的理解。你能夠根據本身的興趣選擇特定字段,並探索該領域中的各類技術。
舉個例子,若是你對時間序列感興趣,你能夠開始探索不一樣的預測技術,平穩性的概念,甚至選擇一個關於時間序列的項目並進行研究。或者,若是NLP是你感興趣的字段,你能夠了解如何從基於文本的數據中提取特徵,能夠在文本數據上使用哪些算法等等。
6.2參加數據科學競賽
這會爲你的簡歷添加了推進力,增長了得到實習的機會。完成或完成一個項目後,證實你的知識不只僅侷限於書籍。很明顯的,你已經嘗試將你的理論學習轉化爲現實世界的數據集 - 這是你的好奇心,熱情和學習意願很是高的一個跡象。
首先,我很是鼓勵你參加數據科學競賽。從AV的DataHack平臺或Kaggle上列出的黑客馬拉松開始。這些平臺提供了模仿真實場景的問題陳述,從而爲你提供了對行業生活感覺的寶貴機會。
你還能夠與來自世界各地的頂級數據科學家競爭(並向他們學習)。這能夠做爲你自身進步的晴雨表。堅持練習,你會發現你在排行榜排名上升得會有多快。實踐就是數據科學之王。
7.在實習期間你會學到什麼?
實習能夠爲你提供哪些教科書,MOOC和視頻不能提供給你的?
實踐經驗。
這是招聘經理在瀏覽你的我的資料時最看重的一件事。我意識到我在Analytics Vidhya的實習經歷是多麼有用。
若是你以開放的心態,願意天天學習,那麼你能夠從實習中學到不少東西。這正是你在數據科學方面取得成功的方式!
在本節中,我會描述我在數據科學實習期間的主要收穫
7.1如何解決實際項目
在實習期間,你將參與一個真實的項目。這是很是寶貴的經驗。一旦你加入了這個項目,你可能會發現本身已經陷入端到端的數據科學生命週期,包括定義問題語句和構建模型。
若是你以前參加過數據科學競賽,你將對數據科學家遇到的不一樣挑戰有一個概念。但須要注意的是。
這些競賽中提供的問題描述和數據集與現實場景很是不一樣。數據集在行業中是混亂和非結構化的。在構建任何模型以前,須要進行大量的數據清理工做。
事實上,若是70-80%的任務涉及數據清理,請不要對此感到驚訝。
你將學習如何構造問題語句,理解解決問題所需的域和數據,而後找出提取數據的來源。下一步是深刻研究。瞭解其餘數據科學家爲解決相似問題所採起的方法。
這將給你一個公平的想法,什麼工做應該作得好,什麼工做不值得花費時間。雖然數據科學鼓勵進行實驗,但你從經理那裏得到的創做自由度是有限的。過濾掉那些你事先知道不會起做用的方面。
7.2講述數據故事的方法(探索性數據分析)
人們一般花費更多時間來構建模型而不是理解數據。我本身曾經這麼作過很長時間。正是在個人實習期間,當我在作一個項目的時候,我意識到個人方法是多麼的錯誤,沒有之一。
我再怎麼強調讓你瞭解你所擁有的數據的重要性也不爲過。數據集中存在着不少層次和隱藏的方面,咱們常常在匆忙構建模型時忽略它們。這是你應該在實習期間學會的東西(但要提早作好準備)。
花盡量多的時間探索數據!繪製圖表,尋找模式,而後就像它是世界上最好的做品同樣投入其中(由於它的確是!)嘗試着理解分佈,查找影響目標變量的因素並進行推斷。創建一個假設,可視化數據,找到看法,最重要的是,與你的隊友討論你的發現。
7.3團隊合做
數據科學實習的一個好處是與很是聰明和支持你的人合做。當你朝着最終目標努力時,數據科學項目須要同事之間的協做和協調。我認爲本身很幸運能成爲這樣一支偉大團隊的一員。
在團隊中工做的最好的部分是老是有人討論你的想法(並澄清你的疑慮)。例如,在我在Analytics Vidhya的實習期間,咱們做爲一個團隊參與了一個大型的黑客馬拉松。數據集有多個文件,所以咱們劃分了任務,咱們每一個人都在理解特定的文件,並與團隊的其餘成員分享咱們的知識。
這是一次了不得的經歷。
在這些討論中,我學習了不一樣的方法來解決問題和改進/優化個人代碼。團隊合做不只能夠幫助你創建本身的軟技能,還能夠磨練你的技術技能。這是一個共贏的組合!
7.4得到該領域的實踐經驗
當你開始你的數據科學求職時,你極可能會發現大多數公司都要求在這個領域中得到一些經驗。你應該瞭解公司正在處理的問題,並考慮您能夠爲公司作出貢獻的方式。與正在從事這個項目的人討論你的想法。
你還應該嘗試瞭解公司中其餘人的角色。你能夠與不一樣團隊的人員進行交流和討論。例如,與營銷團隊交談,瞭解你是否可以想出一個數據驅動的方案來解決他們的問題。充分利用你的機會。保持好奇心,問相關的問題,向你的團隊學習。
7 Steps to crack your first Data Science Internship (Tips, Tricks and Resources!)