資料科學中的開源軟體工具

2022-07-31 06:33:13 字數 2897 閱讀 9066

本文在creative commons許可證下發布。

寫此系列文的目的是**資料領域全棧的解決方案,借助於開源軟體來擺脫傳統廠商的綁架,而放眼國內的討論也不是非常多,人云亦云的比較多。

資料科學,「data scientist」自2023年dj patial和 jeff hammerbacher把他們在linkedin和facebook的工作職責定義為「資料科學家」的那段時期開始,資料科學開始在業界流行起來。她涉及到三個主要的領域即統計學、電腦科學、行業知識及這三個領域交叉產生的三個領域。

(1)、統計學

資料分析最重要的目的是研究過去和推斷未來,所有對於未知的推斷都基於歷史資料和各種假設,統計之所以在這個框架中處於核心的位置,就在於統計學的思維方式:統計學建模的前提是對真實的世界提出假設,然後通過模型來描述,通過資料來支援或者否定,一旦有新的模型能取代舊的模型,就能更好的分析這個真實的世界。如果脫離資料或者真實的世界去單純的研究統計的模型,實質上就成了數學的分支,並不是統計學的目的。數學的方法和數學公式是統計學科學性的保證,但是,只有來自於資料,基於歸納來模擬真實世界的統計學才是和人靠經驗做決策是相似的。在這個領域目前最專業的統計軟體是sas,如果不考慮成本那麼作為統計軟體來說沒有任何其他的缺點。雖然其程式設計方式非常古老而且不靈活,但傳統的統計不需要程式設計。

(2)、電腦科學

電腦科學最主要的研究物件不是資料,在行業中最重要的目的也不是資料分析。電腦科學對於資料分析領域最大的幫助是提供了分析的工具。不論是統計軟體還是各類分析系統,都是通過計算機程式設計實現的。所以,實際上,資料科學最核心的思想基礎來自於統計學,而資料科學中最重要的技能來自於計算機。在計算機應用到資料分析領域時,最好的選擇是fortran,不僅是效能的原因,很多分析和計算的庫都是用fortran編寫。

(3)、行業知識

這裡指的是行業裡的分析經驗,專指不依賴於電腦程式和統計模型的分析經驗。很多傳統的分析師,比如:商務分析師和財務分析師,在對領域深入理解的基礎上,也能深入的理解資料發現規律。當然,沒有計算機和統計背景,淪為平庸的可能性比較大。

在這裡,打個比方來形容三者的關係:統計學好比武俠**中內功,決定了乙個習武者的上限。計算機技術就好比武功招式,決定了此時的你有多強,而行業知識就好比實戰經驗,決定了與人掐架時能不能贏。

在這個領域最好的軟體工具是excel,在不需要專業的計算機技能和統計背景的條件下將能實現的的工作做到極致,如果掌握了vba語言甚至可以直接成為資料科學家。

(4)、機器學習

統計與計算機的結合產生了乙個領域是機器學習。之所以有這樣的局面出現,傳統的統計學界比較保守,過於關注模型本身,對於模型的理論性要求又過於嚴格,這樣就導致很多基於演算法的模型很難發表在統計學的期刊上,更多的是發表在工程、計算機等非統計的應用期刊上。她同時要求強大的程式設計能力和深厚的數學和統計背景,但是應用模型會非常簡單,不需要象使用統計模型那樣需要理解所有引數的含義和檢驗結果。(實際上機器學習的模型中很多引數也沒有辦法理解)。

在這個領域目前最好的工具是python,作為計算機語言比r要完美許多,除了統計分析和圖形視覺化以外,r能做的python可以做的更好,但是,它最大的缺點是非計算機背景的人不容易上手,而機器學習恰好不看重行業知識,重視計算機技能,工程應用中弱化數學和統計的能力。

(5)、傳統資料分析

傳統資料分析就是統計學和行業知識的結合。這是資料分析最廣闊的應用領域,也是早期統計學專業的畢業生的主要就職空間。主流的職位就叫「資料分析師」。如果我們非要在我文中提到的6個領域找出乙個最能接替資料科學家的類別,那麼非「資料分析師」莫屬,因為傳統的資料分析師除了程式設計能力有所欠缺外,最重要的特徵與資料科學家是沒有分別的,可以直接使用統計軟體的圖形化介面也可以進行很多分析,不具備程式設計能力只是在一些新的領域和對於一些新的方法難以處理,容易受制約,但是對於傳統的分析領域是不存在任何問題的。

在這個領域目前來說,最方便的工具軟體還是spss,使用者也是眾多,其圖形化操作的方式非常容易上手。

(6)、商業智慧型

商業智慧型就是電腦科學與行業知識的結合。有個笑話就是直指這個領域的弱點。

「…我是搞資料分析的,學會了如何從dw中用sql對於資料etl並建立了cube。然後算啊算,得出結論:今年2月營業收入遠遠小於其他月份。我試圖用spss、sas中的資料探勘模型找出原因但至今無果。掃地阿姨弱弱的說「2月份是春節,所有公司半個月無人上班」….」

可以看出這個領域會被認為是「危險領域」,傳統bi的思維容易忽視應用背景而只關注方法的實現。

這個領域是商業解決方案扎堆的地方,最流行的bi工具主要是sap、oracle、ibm等大廠商旗下的產品。

回到資料科學工具的選擇,資料科學最重要的目的是資料分析和建模,需要掌握一門程式語言,筆者認為最好的工具是r。r中最寶貴的是它的統計思維和資料思維,雖然很多其他的語言也擅長分析和處理資料,甚至效能更好、語法更清晰。但是,r直指統計的核心,可以很方便的從模型的角度來思考資料,在各行各業分析師(而不是程式設計師)的貢獻下,其包含的分析方法也是幾乎是無窮無盡的。r非常容易入門,尤其是適合傳統統計背景的資料分析師學習,如果目標是資料科學家而不是電腦程式專家的話,r是乙個最好的選擇。

開源軟體測試工具 開源軟體更新工具

開源軟體測試工具 將軟體安裝在使用者系統上後,如何保持更新?雖然linux使用者通常具有乙個程式包管理系統來從他們選擇的儲存庫中提取最新版本,但其他系統的使用者卻不太幸運。我們已基於google的稱為omaha的開源協議,開發了一種開源工具來協助此過程。幾年前,作為chromium專案的一部分,go...

開源資料探索工具 使用開源工具探索氣候資料

開源資料探索工具 這些天,您無法在任何地方看東西,而看不到地球上不斷變化的天氣模式的證據。每個月,我們面臨著指向地球正在變暖的事實和資料。氣候科學家警告我們,不採取行動可能會危害我們這裡的未來。五角大樓的軍事戰略家最近警告當選 川普,對氣候變化的不作為可能給我們的 帶來災難,因為水 的減少和降雨不足...

開源軟體 商業軟體 從開源軟體中謀生

開源軟體 商業軟體 接下來,nitish根據以下標準比較了開源內容管理中的三大巨頭 drupal,joomla和wordpress 安裝時間和複雜性,外掛程式和主題可用性,易用性以及定製和公升級。最後 目前 nitish分享了他對andriod通過開放源 在百萬人心中逐漸流行的想法。我們很高興nit...