資料科學是什麼?資料分析?機器學習?還是資料工程?答案可能有很多,但也許只有直接與某個公司的資料科學家交流,才能瞭解該公司是如何看待資料科學的。由Netflix舉辦的第三屆聚焦資料科學的WiBD研討會,為我們所有人瞭解Netflix的資料科學故事提供了絕佳機會,一起來看看吧!
資料科學是一個非常抽象的概念。有些人認為它是資料分析,也有一些人認為它是機器學習,還有些認為它帶有一些資料工程的味道。
業界對資料科學這一概念難以達成一致有很多原因,其中一點就是,現在大範圍內的崗位都可能涉及資料科學,並且這些崗位的職責都不盡相同。
此外,不同公司之間的細微差別,甚至是同一公司內部的不同團隊之間的細微差別都會導致對資料科學的理解不同。因此,只有直接與某個公司的資料科學家交流才能瞭解該公司是如何看待資料科學的。
資訊不對稱是一個令人遺憾的事實,它阻礙了許多人追尋資料科學以及資料工程這一職業的道路。
如果我們投入越多的工作時間來解決這一棘手的問題,那麼這一阻礙也就能越早被突破。關於這一點,推薦一個社會教育企業——HasBrain,該企業致力於填補資訊缺口並且為想要學習並找到通往資料科學和資料工程道路的人提供幫助。
HasBrain:
http://www.hasbrain.com/
構建資料科學專案
頭腦風暴活動
現實世界的資料科學專案與理論上的有何不同,如何構建資料科學專案才能更高效?Becky在研討會上展示的資料科學專案體系對該問題總結得非常好。
以下是Becky的總結
步驟一:從瞭解業務問題開始
下面的幻燈片,是Becky就如何定義成功而列出的一系列業務問題。如果你想要很好地證明你的概念,你需要一開始要以一個簡單模型作為基準,然後從增量改善(incremental improvement)的角度來評估模型的價值。
否則,你會一直困擾於75%的準確度是否足夠好這樣的問題。擁有物理學博士學位的Becky也提到,專業學者總是會仔細檢查到最後那20%,以確保結果是無懈可擊的。所以,如果博士生們想要成為資料科學家,這一點是需要特別注意的。
步驟二:制定技術計劃
除了下面的幻燈片中列出的細節,Becky還強調了溝通的重要性,同時還提出要站在利益相關者的角度思考。因為利益相關者最關心的未必是機器學習的誤差測度,所以要學會如何將業務目標轉化為價值最佳化問題,這一點極為關鍵。
相較於“重新發明輪子”,弄明白和學會使用現有的技術可以為我們節省很多時間。現有的用於監督學習的技術,如預測建模或分類,都有很好的文件記錄。
然而,在相對更先進以及更專業的機器學習領域(例如NLP和影像分類),新文章不斷地發表,技術不斷地更新。因此,即時瞭解最新和最好的研究論文是資料科學家們需要牢記的黃金準則。
步驟三:對概念進行初步驗證 -> 不斷迭代/驗證直到成功或是無法再繼續 -> 向利益相關者傳達結果
如果你對工作流程甚至是資料科學家使用的工具或庫還有任何的疑問,都可以參考Becky在專案構建中對“doing the project”這部分的詳細描述。
步驟四:模型產品化
如果一些資料科學家告訴你必須要學會編寫產品級程式碼,那麼,他們可能需要獨立處理模型產品化,而不是交給機器學習工程師或是軟體工程師。
模型產品化本質上就是指不要在現有的模型輸出上停滯不前。你的結果輸出是產品的一部分,並且會改變使用者的實際體驗。
你的程式碼也會成為更大的產品程式碼庫的一部分,例如,如果你歸類使用者是否會在未來兩週內流失,被預測為會流失的使用者和被預測為不會流失的使用者可能會有不同的使用者介面(UI)。
實際上,你是為其他團隊建立了一個API來呼叫你的模型並獲得模型輸出。你可能需要重構你的程式碼,此時,只要API沒有中斷並且終端使用者體驗是無縫的,你就可以不斷地升級模型。
Becky自學了工作中要用到的軟體工程方面的知識,學會使程式碼模組化,以實現可重複性並提高演算法效率。甚至有時,可能會參與到軟體工程師或是資料工程師的團隊中。這不僅取決於工作的複雜性,還取決於服務等級協議(Service Level Agreement, SLA)。例如,如果你的API需要一直處於執行狀態,則可能需要更廣泛的程式碼審查或軟體工程團隊的直接參與。
溝通與問題解決
在講述了資料科學專案的構建之後,Becky更多地談到了有效溝通和解決問題的技巧的重要性。如何向非技術人員的利益相關者們解釋複雜的資料科學概念,是獲得他們買進支援的重要環節。
Becky將她在攻讀物理學博士學位期間學會的一項技能運用於此——將複雜問題分解成小塊並逐一解決。類似地,她就將利益相關者的高階問題(high level question)進行分解,並找出資料科學專案可以提供價值的地方。
如果沒有資料科學家的工作經驗,想要勝任這部分工作是不容易的,因為包括Kaggle專案在內的大多數實踐專案都是從已經定義明確的資料科學問題開始的。Becky談到,這些軟技能其實是從經驗中獲得的,當然也可以從有效的反饋中學習。
與此同時,她也會閱讀一些基礎書籍來熟悉商業中的通用概念和術語。另外,許多其他資深的資料科學家們都建議,如果想要進一步發展自己的商業頭腦,則需要閱讀一些產品管理的書籍和文章。
實踐練習
這個專案使用WDI資料來預測業務啟動成本,非常適合初學者。如果你是機器學習新人,或是剛剛完成一些監督學習的網路基礎課程,這將會是一個很好的額外練習機會。
hands-on exercise:
https://github.com/NFLX-WIBD/WIBD-Workshops-2018
現在,讓我們回到之前談論的問題解決和溝通方面,Becky就此提出了一個業務問題:“在不同的國家開展業務都有多難?”她還確立了一個專案目標,即預測在不同國家開展業務的成本。
如果這是一個實際的工作專案,對於開展業務的便利性來說,這些預測成本要如何成為整體評估決策中的一部分,我想,她可能需要與利益相關者就此問題達成一致。
最後,希望這個總結對你有幫助。祝所有資料科學愛好者們好運!並再次感謝Netflix團隊的慷慨分享!另有演示的幻燈片和錄影可供使用。