天天看點

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

用 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通常被應用統計技術或者資料分析人員當做工作中的首選語言。資料科學家也會用python作為連接配接自身工作與WEB 應用程式/生産環境內建中。

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

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

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

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

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

  Scikit-learn   經典的ML算法

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

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

他基于兩個python庫:Numpy 和 Scipy 。 他為常見的機器學習和資料挖掘提供了一組算法:聚類,回歸和分類。甚至像資料轉換,特征選擇,內建學習這樣的任務也可與通過簡短幾行代碼實作。

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

  Tensorflow for Deep Learning 深度學習

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

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

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

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

  Theano is also for Deep Learning

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

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

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

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

  Pandas  資料提取與預處理

panda是一個非常流行的庫,它提供了簡單易用且直覺的進階資料結構。

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

panda可以輕松地從SQL資料庫、CSV、Excel、JSON檔案等不同來源擷取資料,并對資料進行操作。圖書館有兩個主要結構:

Series“級數”---- 一維 。

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

Data Frames“資料幀”---- 二維。

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

如果想得知關于如何使用序列和資料看架構的更多細節,請檢視的我的其他文章。

  Matplotlib用于資料可視化

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

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

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

這就是Matplotlib發揮作用的地方。它是每個資料科學家用于建立2D圖形和圖形的标準Python庫。它是指令行簡單,這意味着它需要更多的指令來生成好看的圖形和數字,而不是使用一些進階庫。

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

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

  Seaborn是另一個資料可視化庫

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

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

  最後

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

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

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

想要繼續檢視該篇文章相關連結和參考文獻?

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

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

AI研習社每日更新精彩内容,觀看更多精彩内容:雷鋒網雷鋒網雷鋒網(公衆号:雷鋒網)

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

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

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

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

等你來譯:

對混亂的資料進行聚類

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

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

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