繼:攻克大數據——「數據科學家」的八種技能(上)
基本工具
無論哪一類公司,統計程式語言如 R 或 Python,以及數據庫查詢工具像 SQL 大概都是數據科學家必備的常識。
基礎統計學
對統計起碼要有基本認識,才稱得上及格的數據科學家,一名擁有許多面試經驗的人資說,很多他曾面試的人連 p-value 的定義都講得不清不楚。你應該熟悉統計測試、分布、最大似然法則(maximum likelihood estimators)等等。機器學習也很重要,但更關鍵的能力,是你能否判斷不同狀況該用什么不同的技術。統計學適用於所有類型的公司,但對那些主要產品并非數據、卻大幅依賴數據的公司來說尤為必備能力,老板需要的是你能不能利用數據幫助他們進行決策,以及設計、評估實驗與結果。
機器學習
假如你是在握有大量數據的大型企業,或是產品本身就是以數據為賣點的公司工作,機器學習就是你用來吃飯的家伙。雖然 KNN 演算法(k-nearest neighbors)、隨機森林(random forest)、集成學習(ensemble methods)這類機器學習的流行術語好像不懂不行,不過因為事實上很多技術都可以用 R、Python 程式庫解決,所以即使你不是演算法的世界頂尖專家,并不代表就毫無希望。比較重要的是,能夠縱觀全局,每種狀況出現都能找出最契合的技術。
多變量微積分、線性代數
就算你即將面試的公司并未要求機器學習或統計學知識,基礎多變量微積分與線性代數問題十之八九都是逃避不了的必考題,因為數據科學就是由這些技術型塑而成。盡管很多事情可以交給 sklearn 或 R 自動執行,但是未來如果公司想要建立自有的方案,這些基本知識就變得很重要了。如果你置身於「數據就是產品」,或者預測績效僅因小小進步或演算法優化就能帶來驚人效益的公司里面,微積分、線性代數等數學概念都需了解通透。
清理數據
Data Munging 是最容易令人不耐的過程,你面對的是亂七八糟的數據。這些數據包含消失的數值、不一致的字串格式(比如「New York」與「new york」與「ny」)、數據格式(「2015-03-26」、「03/26/2015」,「unix time」、「timestamps」等等),必須勞心費神梳理這些龐雜的數據。雖然這工作吃力不討好,但只要是數據科學家,大概都避免不了,而如果你是某家小公司的先遣數據科學家,或是在一家產品非與數據相關,但是數據卻扮演重要角色的公司里工作,清理數據的任務格外重要。
數據視覺化與溝通
把枯燥繁瑣的數據轉成圖像,以及向外界溝通的技能愈來愈重要,尤其是在年輕的公司制定由數據驅動的決策,或者協助其他組織進行數據決策的公司。「溝通」二字的真諦在於,面對技術人或一般人,你都能準確的傳達研究發現,并能讓他們輕易理解。至於視覺化,如果可以熟悉 ggplot、d3.js 等軟體的運用,會有很大的助益,當然工具只是表象,能否參透數據視覺化的原則,才是最需費心的地方。
軟件工程
如果你是公司數據科學團隊的草創元老,擁有強悍的軟體工程背景十分重要,你會負責處理很多數據登錄(data logging),也有可能需要參與開發以數據為本的產品。
像個數據科學家般思考
所謂數據科學家,就是你解決問題的方法奠基於數據數據。在面試過程中,主考官可能會出一些比較艱澀的問題,比如公司想要執行的某個測試,或者計劃開發的數據產品。判斷事情的輕重緩急、作為數據科學家如何與工程師和產品經理互動、知道該用什么方式解決問題,都是你該培養的能力。
原文鏈接:http://www.thebigdata.cn/YeJieDongTai/14260.html