首頁  >  文章  >  後端開發  >  python gpu 什麼意思

python gpu 什麼意思

(*-*)浩
(*-*)浩原創
2019-05-29 15:25:083589瀏覽

今天看到一篇大數據的文章,分析了Python作為機器學習語言的優勢,其中提到在2010年python的Theano庫在CPU上運行時,其速度是Numpy的1.8倍,而在GPU上運行時,其速度是Numpy的11倍。 

python gpu 什麼意思

於是乎開始查閱GPU和Theano的相關概念。

以下是Nvidia官網對GPU的文字介紹,影片尤其直覺。 
GPU 加速的運算是利用圖形處理器 (GPU) 以及一顆 CPU 來加速科學、工程以及企業級應用程式。 NVIDIA® 於 2007 年在這方面率先邁出了第一步,GPU 現已成就了世界各地政府實驗室、大學、企業以及中小企業內的節能資料中心。

應用程式如何利用 GPU 實作加速 
理解 CPU 與 GPU 之間區別的簡單方法就是比較它們如何處理任務。 CPU 由專為順序串列處理而最佳化的幾個核心組成。另一方面,GPU 則由數以千計的更小、更有效率的核心組成,這些核心專為同時處理多任務而設計。

GPU擁有數以千計的核心,可有效率地處理平行任務

Theano是主流的深度學習Python庫之一,亦支援GPU,然而Theano入門較難。

基於Python的深度學習

實作神經網路演算法的Python庫中,最受歡迎的當屬Theano。然而,Theano並不是嚴格意義上的神經網路庫,而是Python庫,它可以實現各種各樣的數學抽象。正因為如此,Theano有著陡峭的學習曲線,所以我將介紹基於Theano構建的兩個有更平緩的學習曲線的神經網路庫。

第一個函式庫是 Lasagne。這個函式庫提供了一個很好的抽象,它允許你建立神經網路的每一層,然後堆疊在彼此的頂部來建立一個完整的模型。儘管這比Theano顯得更好,但是構建每一層,然後附加在彼此頂部會顯得有些冗長乏味,所以我們將使用 Nolearn庫,它在Lasagne庫上提供了一個類似 Scikit-Learn風格的API,能夠輕鬆地建構多層神經網路。

機器學習

supervised learning

有監督學習(supervised learning)是指資料中包含了我們想預測的屬性,有監督學習問題有以下兩類:

classification

分類(classification):樣本屬於兩個或多個類別,我們希望透過從已標記類別的資料學習,來預測未標記資料的分類。例如,識別手寫數字就是一個分類問題,其目標是將每個輸入向量對應到有窮的數字類別。從另一個角度來思考,分類是一種有監督學習的離散(相對於連續)形式,對於n個樣本,一方有對應的有限個類別數量,另一方則試圖標記樣本並分配到正確的類別。

regression

回歸(regression):如果希望的輸出是一個或多個連續的變量,那麼這項任務被稱作回歸,例如用年齡和體重的函數來預測鮭魚的長度。

以上是python gpu 什麼意思的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
上一篇:python3是什麼下一篇:python3是什麼