外頭有許多類型的python庫可用,本文介紹了一些流行的機器學習庫。
1. NumPy:
NumPy是一種通用的數(shù)組處理軟件包。它提供高性能的多維數(shù)組對象和用于處理這些數(shù)組的工具。它是用于科學計算的基本Python軟件包。
NumPy針對Python的CPython參考實現(xiàn),這是一種非優(yōu)化的字節(jié)碼解釋器。
NumPy的核心功能是“ndarray”,代表n維數(shù)組數(shù)據(jù)結(jié)構(gòu)。這些數(shù)組是內(nèi)存中的交錯視圖。相比Python的內(nèi)置列表數(shù)據(jù)結(jié)構(gòu),這些數(shù)組是同構(gòu)類型的:單個數(shù)組的所有元素都必須是同一類型。
2. Scipy:
SciPy是一種免費開源Python庫,用于科學計算和技術(shù)計算。
它包含用于優(yōu)化、線性代數(shù)、積分、插值、特殊函數(shù)、FFT、信號及圖像處理、ODE求解器以及科學工程中其他常見任務(wù)的模塊。
NumPy堆棧有時也叫SciPy堆棧。SciPy使用的基本數(shù)據(jù)結(jié)構(gòu)是NumPy模塊提供的多維數(shù)組。NumPy提供了一些用于線性代數(shù)、傅立葉變換和隨機數(shù)生成的函數(shù),但不具有SciPy中的等效函數(shù)具有的一般性。
3. Scikit-learn:
Scikit-learn(又名sklearn)是面向Python編程語言的免費軟件機器學習庫。
它有各種分類、回歸和聚類算法,包括支持向量機、隨機森林、梯度提升、k均值和DBSCAN,旨在與Python數(shù)值庫NumPy和科學庫SciPy協(xié)同操作。
Scikit-learn項目始于David Cournapeau開發(fā)的谷歌編程夏令營(Summer of Code)項目“SciKit”(SciPy Toolkit)。
它是GitHub上最受歡迎的機器學習庫之一。
它主要用Python編寫,廣泛地使用NumPy,用于高性能線性代數(shù)和數(shù)組運算。
4. Tensorflow:
TensorFlow是一種免費開源軟件庫,用于針對各種任務(wù)的數(shù)據(jù)流和可微分編程。
TensorFlow是谷歌Brain的第二代系統(tǒng)。參考實現(xiàn)在單個設(shè)備上運行,但TensorFlow可以在多個CPU和GPU上運行。TensorFlow可在64位的Linux、macOS、Windows和移動計算平臺(包括Android和iOS)上使用。
Tensor處理單元(TPU):2016年5月谷歌宣布Tensor處理單元,這種針對特定應(yīng)用的集成電路專門為機器學習而構(gòu)建,為TensorFlow量身定制。TPU是一種可編程的AI加速器,旨在提供高吞吐量的低精度算術(shù)運算,面向使用或運行模型,而不是訓練模型。
5. Pytorch:
PyTorch是一種基于Torch庫的開源機器學習庫,用于計算機視覺和自然語言處理等應(yīng)用,主要由Facebook的AI研究實驗室開發(fā)。
它有更完善的Python接口,主要側(cè)重于開發(fā),它還有C++接口。
幾款深度學習軟件是在PyTorch上構(gòu)建的,包括優(yōu)步的Pyro、HuggingFace的Transformers和Catalyst。
它提供兩種高級功能:通過GPU實現(xiàn)擁有強大加速功能的Tensor計算,建立在基于磁帶的自動微分系統(tǒng)上的深度神經(jīng)網(wǎng)絡(luò)(DNN)。
它定義了一個名為Tensor的類來存儲和操作數(shù)字的異構(gòu)多維矩形陣列。PyTorch張量類似NumPy數(shù)組,但也可以在支持CUDA功能的英偉達GPU上加以處理。
6. Keras:
Keras是一種用Python編寫的開源神經(jīng)網(wǎng)絡(luò)庫。它能夠在TensorFlow、Microsoft Cognitive Toolkit、R、Theano或PlaidML上運行。
Keras致力于易于使用、模塊化和可擴展。
Fran?ois Chollet(谷歌工程師兼Keras的維護者)解釋,Keras被認為是一種接口,而不是一種獨立的機器學習框架。它提供了更高級、更直觀的抽象集,無論使用哪種計算后端,用戶都可以輕松開發(fā)深度學習模型。
Keras含有常用神經(jīng)網(wǎng)絡(luò)構(gòu)建模塊的眾多實現(xiàn),比如層、目標、激活函數(shù)、優(yōu)化器以及許多工具,這些工具使圖像和文本數(shù)據(jù)處理起來更容易,從而簡化編寫深度神經(jīng)網(wǎng)絡(luò)代碼所需的編程工作。
Keras支持卷積和循環(huán)神經(jīng)網(wǎng)絡(luò)。它支持其他常見的實用層,比如隨機失活、批量歸一化和池化。Keras讓用戶可以把深度模型用在智能手機、Web或Java虛擬機上。
編輯:lyn
-
機器學習
+關(guān)注
關(guān)注
66文章
8553瀏覽量
136951 -
python
+關(guān)注
關(guān)注
57文章
4876瀏覽量
90032 -
pytorch
+關(guān)注
關(guān)注
2文章
813瀏覽量
14853
發(fā)布評論請先 登錄
一文了解Mojo編程語言
Python調(diào)用API教程
步進伺服電機的六大問題處理技巧
【嘉楠堪智K230開發(fā)板試用體驗】K230機器視覺相關(guān)功能體驗
跟老齊學Python:從入門到精通
實用電路圖-第1卷 家用與民用電路
Gartner發(fā)布云技術(shù)發(fā)展的六大趨勢
通用電路圖-第五卷 通信電路
通用電路圖--第4卷 測量與傳感電路
通用電路圖-第2卷 通用模擬電路
通用電路圖--第3卷 通用數(shù)字電路
東風汽車旗下六大自主新能源品牌亮相2025上海車展
大象機器人攜手進迭時空推出 RISC-V 全棧開源六軸機械臂產(chǎn)品
python入門圣經(jīng)-高清電子書(建議下載)
軟通動力攜手伙伴發(fā)布六大聯(lián)合解決方案
關(guān)于六大機器學習Python庫的介紹
評論