用 Python 做機器學習不得不收藏的重要庫

本文為 AI 研習社編譯的技術博客,原標題 :

Essential libraries for Machine Learning in Python

作者 | Shubhi Asthana

翻譯 | 就2

校對 | 就2        整理 | 菠蘿妹

原文鏈接:

https://medium.freecodecamp.org/essential-libraries-for-machine-learning-in-python-82a9ada57aeb


用 Python 做機器學習不得不收藏的重要庫

Python通常被應用統計技術或者數據分析人員當做工作中的首選語言。數據科學家也會用python作為連接自身工作與WEB 應用程序/生產環境集成中。

Python在機器學習領域非常出色。它具有一致的語法、更短的開發時間和靈活性,非常適合開發能夠直接插入生產系統的複雜模型和預測引擎。

Python的一個最大的資產是其廣泛的庫。

庫是一組用給定語言編寫的程序和功能的集合。一組健壯的庫可以使開發人員更容易執行複雜的任務,而無需重寫許多代碼。

機器學習很大程度上是基於數學。具體來說就是數學優化、統計和概率。Python庫幫助那些不具備開發人員知識的研究人員/數學家輕鬆地「進行機器學習」。

以下是機器學習中最常用的一些庫:


  Scikit-learn   經典的ML算法

Scikit-learn 是最流行的ML 庫之一,他支持很多監督學習和非監督學習算法。例如:線性回歸,邏輯回歸,決策樹,聚類 ,k-means等。

他基於兩個python庫:Numpy 和 Scipy 。 他為常見的機器學習和數據挖掘提供了一組算法:聚類,回歸和分類。甚至像數據轉換,特徵選擇,集成學習這樣的任務也可與通過簡短几行代碼實現。

對於機器學習的新手來說,Scikit-learn 是一個夠用的工具,直到你自己開始實現更複雜的算法。


  Tensorflow for Deep Learning 深度學習

如果你在機器學習的世界裡,你可能聽過,嘗試過或者實現過某種形式的深度學習的算法。但是他們是必要的嗎?回答可能是不必要。但是完成他們后感覺很酷對嗎? 回答是:對的!酷斃了。

Tensorflow 有趣的地方在於,當你使用python 編寫代碼,你可以編譯和運行在你的CPU 或者GPU 上,而且你不需要寫 c++或者 CUDA 的代碼,就可以運行在GPUs 集群上。

他使用一個多層節點的系統,允許你快速的簡歷,訓練,部署具有大量數據集的人工神經網絡。這讓谷歌能夠識別照片中的物體,通過語音識別程序理解在口語中的單詞。


  Theano is also for Deep Learning

Theano 是另一個用於數值計算的優秀類庫,有點類似於Numpy。Theano 允許你高效的定義,優化和評估涉及多維數組的數學表達式。

使Theano 與眾不同的是它利用了計算機的GPU。這使得它能夠比單獨在CPU上運行時快100倍進行數據密集型計算。Theano的速度使得它對於深度學習和其他複雜的計算任務特別有價值。

Theano 庫的最終發佈是在去年——2017年,版本1.0.0包含了許多新特性、界面更改和改進。


  Pandas  數據提取與預處理

panda是一個非常流行的庫,它提供了簡單易用且直觀的高級數據結構。

它有許多內建的方法來分組、組合數據和過濾以及執行時間序列分析。

panda可以輕鬆地從SQL數據庫、CSV、Excel、JSON文件等不同來源獲取數據,並對數據進行操作。圖書館有兩個主要結構:

  • Series「級數」---- 一維 。

  • Data Frames「數據幀」---- 二維。

如果想得知關於如何使用序列和數據看框架的更多細節,請查看的我的其他文章。


  Matplotlib用於數據可視化

如果你不能很好的與其他人交流,那麼最好的,最複雜的機器學習就顯得沒有意義。

那麼如何從這些數據中轉換出價值呢?你如何激勵你的業務分析師,告訴他們充滿「洞察力」的「故事」?

這就是Matplotlib發揮作用的地方。它是每個數據科學家用於創建2D圖形和圖形的標準Python庫。它是命令行簡單,這意味着它需要更多的命令來生成好看的圖形和數字,而不是使用一些高級庫。

然而,這也帶來了靈活性。有了足夠的命令,您可以使用Matplotlib製作任何您想要的圖形。您可以構建不同的圖表,從直方圖和散點圖到非笛卡爾坐標圖。

它支持所有操作系統上的不同GUI後端,還可以將圖形導出到通用矢量和圖形格式,如PDF、SVG、JPG、PNG、BMP、GIF等。


  Seaborn是另一個數據可視化庫

Seaborn是一個流行的可視化庫,它建立在Matplotlib的基礎之上。它是一個高級庫,這意味着更容易生成某些類型的圖,包括熱圖、時間序列和小提琴圖。


  最後

這是機器學習中最重要的Python庫的集合。如果您打算使用Python和數據科學,那麼這些庫是值得一看的,同時也值得您熟悉。

我是否錯過了任何重要的Python ML庫?如果是,請務必在下面的評論中提到它。儘管我試圖介紹最有用的庫,但可能仍然沒有介紹其他一些值得研究的庫。

問題或建議嗎?我很想聽聽你的意見——請隨意留言。


想要繼續查看該篇文章相關鏈接和參考文獻?

長按鏈接點擊打開或點擊底部【用python做機器學習不得不收藏的重要庫】:

https://ai.yanxishe.com/page/TextTranslation/1119


AI研習社每日更新精彩內容,觀看更多精彩內容:雷鋒網雷鋒網雷鋒網

AI/機器學習年度2018年度進展綜述

算法基礎:五大排序算法Python實戰教程

手把手:用PyTorch實現圖像分類器(第一部分)

手把手:用PyTorch實現圖像分類器(第二部分)


等你來譯:

對混亂的數據進行聚類

初學者怎樣使用Keras進行遷移學習 

強化學習:通往基於情感的行為系統 

一文帶你讀懂 WaveNet:谷歌助手的聲音合成器



想在手機閱讀更多程式設計資訊?下載【香港矽谷】Android應用
分享到Facebook
技術平台: Nasthon Systems