自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

2019年你不可不知的十大Python庫,可實現(xiàn)機(jī)器學(xué)習(xí)

新聞 后端 機(jī)器學(xué)習(xí)
在本文中,我們將討論 Python 中的一些優(yōu)選庫,開發(fā)人員可以使用這些庫來解析、清理和表示數(shù)據(jù),并在現(xiàn)有應(yīng)用中實現(xiàn)機(jī)器學(xué)習(xí)。

在本文中,我們將討論 Python 中的一些優(yōu)選庫,開發(fā)人員可以使用這些庫來解析、清理和表示數(shù)據(jù),并在現(xiàn)有應(yīng)用中實現(xiàn)機(jī)器學(xué)習(xí)。 

我們將會介紹以下 10 個庫:  

 

  • TensorFlow

  • Scikit-Learn

  • NumPy

  • Keras

  • PyTorch

  • LightGBM

  • Eli5

  • SciPy

  • Theano

  • Pandas

 

Python 是目前流行,使用廣泛的編程語言之一,已經(jīng)取代了業(yè)界許多編程語言。Python 在開發(fā)人員中受歡迎的原因有很多,其中最重要的一個原因就是 Python 有大量可供用戶使用的庫。Python 的簡單性吸引了許多開發(fā)人員為機(jī)器學(xué)習(xí)創(chuàng)建新的庫。由于有大量的庫,Python 在機(jī)器學(xué)習(xí)專家中非常流行。

因此,我即將介紹的第一個庫是 TensorFlow。

TensorFlow

2019 年你不可不知的十大 Python 庫

TensorFlow 是什么? 

 

如果你目前正在使用 Python 進(jìn)行機(jī)器學(xué)習(xí)項目,那么你可能已經(jīng)聽說過這個流行的開源庫,即 TensorFlow。該庫是 Google 與 Brain Team 合作開發(fā)的。Google 的每一個機(jī)器學(xué)習(xí)應(yīng)用幾乎都有 TensorFlow 的影子。

 

TensorFlow 的工作方式類似于一個計算庫,用于編寫設(shè)計大量張量運(yùn)算的新算法。由于神經(jīng)網(wǎng)絡(luò)可以很容易地表示為計算圖,因此它們可以用 TensorFlow 作為對張量(Tensor)的一些列操作來實現(xiàn)。此外,張量是表述數(shù)據(jù)的 N 維矩陣。

TensorFlow 的特點(diǎn)

TensorFlow 針對速度進(jìn)行了優(yōu)化,并利用 XLA 等技術(shù)實現(xiàn)快速線性代數(shù)運(yùn)算。   

  1. 響應(yīng)式構(gòu)造:使用 TensorFlow,我們可以輕松地將計算圖的每一部分進(jìn)行可視化,在使用 NumPy 或 SciKit 時并沒有這個選項。
  2. 靈活性:TensorFlow 的一個非常重要的特性是,它的操作非常靈活。這意味著它實現(xiàn)了模塊化,對于你想要使其獨(dú)立的部分,它可以提供這一選項。
  3. 易于訓(xùn)練:對于分布式計算,它可以很容易地在 CPU 上進(jìn)行訓(xùn)練,也可以在 GPU 上進(jìn)行訓(xùn)練。
  4. 并行化神經(jīng)網(wǎng)絡(luò)訓(xùn)練:TensorFlow 提供了管道。從某種意義上說,你可以訓(xùn)練多個神經(jīng)網(wǎng)絡(luò)和多個 GPU,這使得模型在大型系統(tǒng)上非常高效。
  5. 大型社區(qū):毋庸諱言,因為 TensorFlow 是由 Google 開發(fā)的,所以有一大群軟件工程師在不斷改進(jìn) TensorFlow 的穩(wěn)定性。
  6. 開源:這個機(jī)器學(xué)習(xí)庫最好的地方在于它是開源的,所以只要有互聯(lián)網(wǎng),任何人都可以使用它。

TensorFlow 在哪里使用?

實際上你每天都在使用 TensorFlow,但像 Google 語音搜索或 Google 相冊這樣的應(yīng)用卻是間接的。這些應(yīng)用是使用這個庫進(jìn)行開發(fā)的。

在 TensorFlow 中創(chuàng)建的所有庫都是用 C 和 C++ 編寫的。不過,它還有一個復(fù)雜的 Python 前端。你的 Python 代碼將會被編譯,然后在使用 C 和 C++ 構(gòu)建的 TensorFlow 分布式執(zhí)行引擎上執(zhí)行。

TensorFlow 的應(yīng)用數(shù)量實際上是無限的,這就是 TensorFlow 的美妙之處。

Scikit-Learn

2019 年你不可不知的十大 Python 庫

Scikit-Learn 是什么?

Scikit-Learn 是一個與 NumPy 和 SciPy 相關(guān)的 Python 庫。它被認(rèn)為是處理復(fù)雜數(shù)據(jù)的優(yōu)選庫之一。這個庫正在進(jìn)行大量更改。其中一個更改是交叉驗證功能,提供了使用多個度量的能力。許多訓(xùn)練方法,如邏輯回歸和最近鄰方法,都得到了一些改進(jìn)。

Scikit-Learn 的特點(diǎn)

  1. 交叉驗證:有多種方法可以檢驗監(jiān)督模型對不可見數(shù)據(jù)的準(zhǔn)確性。
  2. 無監(jiān)督學(xué)習(xí)算法:Scikit-Learn 提供了大量的算法,從聚類、因子分析和主成分分析到無監(jiān)督神經(jīng)網(wǎng)絡(luò)。
  3. 特征提?。河糜趶膱D像和文本中提取特征(例如詞袋)。

Scikit-Learn 在哪里使用?

它包含許多用于實現(xiàn)標(biāo)準(zhǔn)機(jī)器學(xué)習(xí)和數(shù)據(jù)挖掘任務(wù)的算法,如降維、分類、回歸、聚類和模型選擇。

NumPy

2019 年你不可不知的十大 Python 庫

NumPy 是什么?

NumPy 被認(rèn)為是 Python 中受歡迎的機(jī)器學(xué)習(xí)庫之一。

TensorFlow 和其他庫在內(nèi)部使用 NumPy 在張量上執(zhí)行多個操作。數(shù)組接口是 NumPy 最好也是最重要的特性。

NumPy 的特點(diǎn)

  1. 交互性:NumPy 交互性強(qiáng),易于使用。
  2. 數(shù)學(xué):使復(fù)雜的數(shù)學(xué)實現(xiàn)變得非常簡單。
  3. 直觀性:使編碼和概念的掌握變得非常容易。
  4. 大量的交互:得益于廣泛的使用,因此有大量的開源貢獻(xiàn)。

NumPy 在哪里使用?

NumPy 的接口可用于將圖像、聲波和其他二進(jìn)制原始流表達(dá)為 N 維數(shù)組。為實現(xiàn)這個用于機(jī)器學(xué)習(xí)的庫,了解 NumPy 對于全棧開發(fā)人員來說很重要。

Keras

2019 年你不可不知的十大 Python 庫

Keras 是什么?

Keras 被認(rèn)為是 Python 中最酷的機(jī)器學(xué)習(xí)庫之一。它提供了一種更簡單的機(jī)制來表達(dá)神經(jīng)網(wǎng)絡(luò)。Keras 還為編譯模型、處理數(shù)據(jù)集、圖形可視化等提供了一些最佳實用程序。

在后端,Keras 在內(nèi)部使用 Theano 或 TensorFlow,也可以使用一些最流行的神經(jīng)網(wǎng)絡(luò),如 CNTK。與其他機(jī)器學(xué)習(xí)庫比較,Keras 的速度相對較慢。因為它是通過使用后端架構(gòu)創(chuàng)建計算圖,然后利用它來執(zhí)行操作的。不過,Keras 的所有模型都是可移植的。

Keras 的特點(diǎn)

  1. 1.Keras 在 CPU 和 GPU 上都能順利運(yùn)行。
  2. 2.Keras 支持幾乎所有的神經(jīng)網(wǎng)絡(luò)模型,包括完全連接的、卷積的、池化的、遞歸的、嵌入的等等。此外,這些模型還可以組合起來構(gòu)建更為復(fù)雜的模型。
  3. 3.Keras 在本質(zhì)上是模塊化的,具有難以置信的表現(xiàn)力、靈活性,并易于創(chuàng)新研究。
  4. 4.Keras 是一個完全基于 Python 的框架,可以方便地進(jìn)行調(diào)試和探索。

Keras 在哪里使用?

你已經(jīng)在不斷地與 Keras 開發(fā)的功能進(jìn)行交互:它在 Netflix、Uber、Yelp、Instacart、Zocdoc、Square 等其他許多公司都有應(yīng)用。Keras 在那些將深度學(xué)習(xí)作為產(chǎn)品核心的初創(chuàng)公司中特別受歡迎,同時也是深度學(xué)習(xí)研究人員的最愛。大型科學(xué)組織,特別是 CERN(歐洲核子研究中心)和 NASA(美國國家航空航天局)的研究人員也采用了 Keras。

Keras 包含許多常用的神經(jīng)網(wǎng)絡(luò)構(gòu)建塊的實現(xiàn),例如層、目標(biāo)、激活函數(shù)、優(yōu)化器和一系列工具,使圖像和文本數(shù)據(jù)的處理變得更加容易。

此外,Keras 還提供了許多預(yù)處理的數(shù)據(jù)集和預(yù)訓(xùn)練模型,如 MNIST、VGG、Inception、SqueezeNet、ResNet 等等。

PyTorch

2019 年你不可不知的十大 Python 庫

PyTorch 是什么?

PyTorch 是最大的機(jī)器學(xué)習(xí)庫,它允許開發(fā)人員利用 GPU 的加速執(zhí)行張量計算,創(chuàng)建動態(tài)計算圖,并自動計算梯度。除此之外,PyTorch 還提供了豐富的 API,用于解決與神經(jīng)網(wǎng)絡(luò)相關(guān)的應(yīng)用問題。

這個機(jī)器學(xué)習(xí)庫是基于 Torch 的,Torch 是一個用 C 語言實現(xiàn)的開源機(jī)器學(xué)習(xí)庫,在 Lua 中有個包裝器。這個用 Python 編寫的機(jī)器學(xué)習(xí)庫是 2017 年推出的,自推出以來,吸引了越來越多的機(jī)器學(xué)習(xí)開發(fā)人員。

PyTorch 的特點(diǎn)

  1. 混合前端:新的混合前端在 Eager 模式(動態(tài)圖模式)下提供了易用性和靈活性,同時在 C++ 運(yùn)行時環(huán)境中無縫過渡到圖形模式,以實現(xiàn)速度、優(yōu)化和功能。
  2. 分布式訓(xùn)練:通過利用 Python 和 C++ 提供的異步執(zhí)行集合操作和對等通信的本地支持,優(yōu)化研究和生產(chǎn)中的性能。
  3. Python 優(yōu)先:PyTorch 并非綁定到單一 C++ 框架中的 Python。它是為了深     入集成到 Python 中而構(gòu)建的,因此它可以與流行的庫和包(如 Cython 和         Numba 等)一起使用。   
  4. 庫和工具:一個由研究人員和開發(fā)人員組成的活躍社區(qū),建立了一個豐富的工具和庫生態(tài)系統(tǒng),用于擴(kuò)展 PyTorch ,并支持從計算機(jī)視覺到強(qiáng)化學(xué)習(xí)等領(lǐng)域的開發(fā)。

PyTorch 在哪里使用?

PyTorch 主要用于自然語言處理等應(yīng)用。PyTorch 主要是由 Facebook 的人工智能研究小組開發(fā)的。Uber 的概率編程“Pyro”軟件就是建立在這個基礎(chǔ)上的。PyTorch 在很多方面都超過了 TensorFlow,最近得到了很多關(guān)注。

LightGBM

2019 年你不可不知的十大 Python 庫

LightGBM 是什么

梯度提升(Gradient Boosting)是最好的、最流行的機(jī)器學(xué)習(xí)庫之一,它通過使用重新定義的基本模型和決策樹來幫助開發(fā)人員構(gòu)建新的算法。因此,有一些專門的庫是為快速有效地實現(xiàn)這種方法而設(shè)計的。

這些庫分別是 LightGBM、XGBoost 和 CatBoost。所有這些庫都是幫助解決常見問題的競爭對手,可以以幾乎相似的方式加以利用。

LightGBM 的特點(diǎn)

  1. 計算速度快,生產(chǎn)效率高。
  2. 直觀,易于使用。
  3. 比許多其他深度學(xué)習(xí)庫有更快的訓(xùn)練。
  4. 在考慮 NaN 值和其他規(guī)范值時不會產(chǎn)生錯誤。

LightGBM 在哪里使用?

這個庫提供了高度可擴(kuò)展、優(yōu)化和快速的梯度提升實現(xiàn),這使得它在機(jī)器學(xué)習(xí)開發(fā)人員中備受歡迎。因為大多數(shù)機(jī)器學(xué)習(xí)全棧開發(fā)人員是通過使用這些算法在機(jī)器學(xué)習(xí)競賽中獲勝的。

Eli5

2019 年你不可不知的十大 Python 庫

Eli5 是什么?

大多數(shù)情況下,機(jī)器學(xué)習(xí)模型的預(yù)測結(jié)果并不準(zhǔn)確,而內(nèi)置 Python 的 Eli5 機(jī)器學(xué)習(xí)庫有助于克服這一挑戰(zhàn)。它結(jié)合了可視化和調(diào)試所有的機(jī)器學(xué)習(xí)模型,并跟蹤算法的所有工作步驟。

Eli5 的特點(diǎn)

Eli5 支持 XGBoost、lighting、scikit-learn 和 sklearn-crfsuite 庫。上面提到的所有庫都可以用于執(zhí)行不同的任務(wù)。

Eli5 在哪里使用?

  • 需要在短時間內(nèi)進(jìn)行大量計算的數(shù)學(xué)應(yīng)用
  • 在與其他 Python 包存在依賴關(guān)系的情況下,Eli5 扮演著至關(guān)重要的角色。
  • 遺留應(yīng)用和在各個領(lǐng)域?qū)嵤┹^新的方法

SciPy

2019 年你不可不知的十大 Python 庫

SciPy 是什么?

SciPy 是一個面向應(yīng)用程序開發(fā)人員和工程師的機(jī)器學(xué)習(xí)庫。你需要了解 SciPy 庫和 SciPy 棧之間的區(qū)別。SciPy 庫包含用于優(yōu)化、線性代數(shù)、積分和統(tǒng)計的模塊。

SciPy 的特點(diǎn)

SciPy 庫的主要特點(diǎn)是使用 NumPy 開發(fā),其數(shù)組最大限度地利用了 NumPy。此外,SciPy 使用其特定子模塊提供了所有高效的數(shù)值例程,比如優(yōu)化、數(shù)值積分和許多其他例程。

所有 SciPy 子模塊中的所有函數(shù)都有良好的文檔說明。

SciPy 在哪里使用?

SciPy 是一個使用 NumPy 求解數(shù)學(xué)函數(shù)的庫。SciPy 使用 NumPy 數(shù)組作為基本數(shù)據(jù)結(jié)構(gòu),并附帶用于科學(xué)編程中各種常用任務(wù)的模塊,包括線性代數(shù)、積分(微積分)、常微分方程求解和信號處理等任務(wù),都可以通過 SciPy 輕松處理。

Theano

2019 年你不可不知的十大 Python 庫

Theano 是什么?

Theano 是 Python 中用于計算多維數(shù)組的計算框架機(jī)器學(xué)習(xí)庫。Theano 的工作方式與 TensorFlow 類似,但效率不如 TensorFlow。因為它不能適應(yīng)生產(chǎn)環(huán)境。

此外,還可以在與 TensorFlow 類似的分布式或并行環(huán)境中使用 Theano。

Theano 的特點(diǎn)

  1. 與 NumPy 緊密集成:能夠在 Theano 編譯的函數(shù)中完全使用 NumPy 數(shù)組。
  2. GPU 的透明使用:執(zhí)行數(shù)據(jù)密集型計算要比 CPU 上快得多。   
  3. 高效的符號微分:Theano 為具有一個或多個輸入的函數(shù)求導(dǎo)。
  4. 速度和穩(wěn)定性的優(yōu)化:即使 x 非常小,也能獲得 log(1+x) 的正確答案。這只是證明 Theano 穩(wěn)定性的一個例子。
  5. 動態(tài) C 代碼生成:計算表達(dá)式的速度比以往都快,從而極大提高效率。
  6. 廣泛的單元測試和自我驗證:檢測和診斷模型中的多種類型的錯誤和歧義。

Theano 在哪里使用?

Theano 表達(dá)式的實際語法是符號化的,這可能會讓習(xí)慣正常軟件開發(fā)的初學(xué)者感到不適。具體來說,表達(dá)式是以抽象的方式進(jìn)行定義、編譯的,然后實際用于計算。

Theano 是專門為用于深度學(xué)習(xí)的大型神經(jīng)網(wǎng)絡(luò)算法的計算類型而設(shè)計的。它是最早的類庫之一(2007 年開始開發(fā)),被認(rèn)為是深度學(xué)習(xí)研究和開發(fā)的行業(yè)標(biāo)準(zhǔn)。Theano 目前被用于多個神經(jīng)網(wǎng)絡(luò)項目,隨著時間的推移,Theano 的普及率也在不斷提高。

Pandas

2019 年你不可不知的十大 Python 庫

Pandas 是什么?

Pandas 是 Python 中的一個機(jī)器學(xué)習(xí)庫,它提供高級的數(shù)據(jù)結(jié)構(gòu)和各種各樣的分析工具。這個庫最大的特性之一是能夠使用一個或兩個命令轉(zhuǎn)換復(fù)雜的數(shù)據(jù)操作。Pandas 有很多內(nèi)置的分組、組合數(shù)據(jù)、過濾以及時間序列功能的方法。所有這些方法都有出色的速度指示器。

Pandas 的特點(diǎn)

Pandas 使操作數(shù)據(jù)的過程變得更容易。對重新索引、迭代、排序、聚合、連接和可視化等操作的支持是 Pandas 的亮點(diǎn)之一。

Pandas 在哪里使用?

目前,Pandas 庫的發(fā)行版本較少,其中包括數(shù)百個新功能、bug 修復(fù)、增強(qiáng)和 API 中的更改。Pandas 的改進(jìn)在于它能夠?qū)?shù)據(jù)進(jìn)行分組和排序,為應(yīng)用方法選擇最適合的輸出,并為執(zhí)行自定義類型操作提供支持。

在其他事項中,當(dāng)涉及到使用 Pandas 時,數(shù)據(jù)分析是一大亮點(diǎn)。但是,當(dāng)與其他庫和工具一起使用時,Pandas 確保了高度的功能性和良好的靈活性。

 

責(zé)任編輯:張燕妮 來源: AI前線
相關(guān)推薦

2020-01-06 08:00:49

大數(shù)據(jù)分析數(shù)據(jù)技術(shù)

2019-01-28 11:35:45

媒體營銷

2011-11-09 13:46:51

可擴(kuò)展架構(gòu)

2010-06-11 14:46:38

可路由協(xié)議

2012-03-16 17:15:43

JMP10數(shù)據(jù)分析

2011-05-06 13:45:17

Linux服務(wù)器配置

2021-12-30 10:54:53

Hive調(diào)優(yōu)實踐

2024-08-12 08:00:00

人工智能開發(fā)AI編程助理

2016-11-22 08:20:32

2022-02-16 08:01:45

網(wǎng)絡(luò)安全趨勢

2023-07-06 14:08:54

ChatGPTLLM大型語言模型

2014-06-20 14:35:48

浪潮數(shù)據(jù)

2024-03-21 08:57:39

語言軟件開發(fā)

2022-08-17 15:09:08

區(qū)塊鏈加密貨幣NFT

2009-04-08 10:25:20

光棍休閑

2019-07-31 09:00:00

Python編程語言Python庫

2011-05-04 14:55:22

耗材打印機(jī)

2025-01-03 17:10:54

2017-10-20 14:32:54

2022-04-19 08:29:12

Python機(jī)器學(xué)習(xí)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號