數據科學家應該掌握的5個工具
即使是知識淵博的數據科學家也能提升他們的技術水平。當談及到分析你編纂的數據時,有大量的工具可以幫助你更好的理解數據。我們與我們的數據科學指導者探討了很久,最后總結出了一個包括5個數據科學工具的列表,同時這也是你在當今的社會形勢下應該掌握的5個數據科學工具。
dedup
dedup是一個Python庫,使用機器學習快速的對結構化數據進行重復數據刪除和實體解析。
數據科學家發現他們經常需要使用SELECT DISTINCT * FROM my_messy_dataset;不幸的是,現實世界中的數據集往往更加復雜。無論你是去對多個數據源進行匯總,還是簡單的數據收集,開始你都需要對重復數據的刪除做一個有意義的分析。
如你所想,有取之不盡的方法可以用來合并數據和用之不竭的規則來定義你數據的等價意義。有相同地址的兩家餐館是屬于一個公司么?名和姓都相同的兩條記錄就是同一個人么?
你很幸運,dedup可以讓你轉危為安!基于創新的 計算機科學研究 ,dedup使用機器學習(更確切地說,應該是 主動學習 )去學習,通過合并人類的反饋對兩個可能的模棱兩可的記錄進行研究,并尋找究竟是什么構成了兩者的“相似”。更方便的是,它有一個圖形用戶界面( GUI ),任何人都可以使用它。
貢獻者Jonathan Dinu,Galvanize的Academic Excellence的副總裁。
Theano
Theano是一個Python庫,你可以有效地定義、優化以及評估包含多維數組的數學表達式。
Theano的特點:
- 和Numpy緊密結合——在Theano編譯的函數中使用numpy.ndaaray。
- GPU的透明使用——在執行密集型數據計算時,相比于CPU,速度提升了140倍。(使用float32進行測試)
- 速度和穩定性優化——對log(1+x)得到正確的答案,即使x真的很小。
- C語言代碼動態生成——加速評估表達式。
- 廣泛的單元測試和自我驗證——發現和診斷不同種類的錯誤。
貢獻者 Mike Tamir ,Galvanize首席科學官。
StarCluster
StarCluster已經開始在Amazon的EC2云服務器中設計虛擬機創建、配置和管理集群的自動和簡化程序。StarCluster允許所有人在面向分布式和并行計算的應用和系統的云服務器中輕松的創建一個集群計算環境。這允許你在無限制的數據上做交互程序。
貢獻者 Alessandro Gagliardi ,Galvanize數據科學指導者。
graph-tool
在python網絡和圖形分析庫與日俱增的情況下,圖形工具給了不少希望。盡管像 NetworkX 和 Gephi 這樣的工具在不斷成長的工具中仍然還有它們的一席之地,但是對于那些想要做大圖像高級分析的人來說——無論是社會網絡、道路網絡、還是生物網絡——這兩者往往會顯得力不從心。
NetworkX一直是用于網絡分析的最流行的Python工具,因為它有著 豐富的API 并且使用的門檻很低,但是一旦你開始處理更大的圖形,純python實現的弊端才 真正開始凸顯 。而Gephi是一個極好的 交互式可視化 和開發新圖像的圖形化工具,但是有一個麻煩的腳本接口,使得它很難使用編程方式去控制。
圖形工具嘗試從它前輩中吸取經驗教訓并給數據科學家最好的結果。它使用C++實現(可并行執行)并用Python來武裝,綁定了一個易于使用的API,同 時獲得了超快的速度,而且不影響使用性。為了弄懂一個網絡,它的功能不僅包括繪制和可視化圖像,還要和動畫圖像進項交流并給圖像賦予生命。
貢獻者 Jonathan Dinu , Galvanize的Academic Excellence的副總裁。
Plotly
Plotly是一個面向R,Python,MATLAB,JavaScript和Excel的交互式圖形庫。Plotly也是一個用于分析和分享數據和圖像的平臺。
Plotly是如何與眾不同的呢?與Google Docs和GitHub一樣,你可以協調和 控制你的數據 ;可以將文件設置成公有的、私有的、秘密文件或是分享的。如果你使用plotly的免費公共云, 脫機Plotly ,或是 現場部署 ,下面的選項很多都是可以獲得的。
在你的工作流中可以使用Plotly,這里有三種可用方式:
為數據科學家整合其它工具。 Plotly的R,Python和MATLAB的API可以讓你做交互、更新 儀表面板 和圖像。Plotly整合了 IPython Notebooks , NetworkX , Shiny , ggplot2 , matplotlib , pandas ,reporting tools和數據庫。例如,下面的圖是 使用ggplot2制作 的,然后嵌入到這個博客中。將鼠標懸停后看看數據變化,然后單擊拖動放大。
創建交互式地圖。 Plotly的圖形庫建立在D3.js之上。對于地理數據,Plotly支持分級統計圖、散點圖、氣泡圖、分塊圖和線圖。你可以制作類似下面這樣的地圖,像R和Python一樣把它們嵌入到博客,應用程序和儀表板。
2014 全球 GDP( 來源: CIA世界概況 )
建立全方位的可視化。 你可以為使用Plotly滿足任意的可視化需求:地圖、2D、3D以及流圖。點擊并移動你的鼠標來旋轉這個圖,懸停并觀察數據變化,或切換放大。
參數圖
貢獻者: Matt Sundquist ,Plotly的CCO,兼聯合創始人。
還想尋求更多的工具么?去閱讀“數據科學家應該掌握的七個Python工具”這篇文章。
原文鏈接: 5 More Tools All Data Scientists Should Know How to Use (譯者/劉帝偉 審校/趙屹華、朱正貴、李子健 責編/周建丁)
譯者簡介:劉帝偉,中南大學軟件學院在讀研究生,關注機器學習、數據挖掘及生物信息領域。