日韩欧美看国产,欧美精品一二三四,懂色av一区二区三区在线播放,久久噜噜亚洲综合

為什么深度學習需要使用 GPU?
發布時間: 2023-10-24 10:35

為什么深度學習需要使用 GPU?選擇 GPU 有兩點原因:

  1. 深度學習的運算可以并行
  2. GPU 運算的核心數多

1. 并行運算

深度學習會涉及大量的矩陣運算。

對于n×k">n×k n\times k維的矩陣A=[a11a12?a1k????an1an2?ank]">A=[a11a12?a1k????an1an2?ank] A=\begin{bmatrix} a_{11} & a_{12} & \cdots & a_{1k}\\ \vdots & \vdots & \ddots & \vdots \\ a_{n1} & a_{n2} & \cdots & a_{nk} \\ \end{bmatrix}

以及k×m">k×m k\times m維的矩陣B=[b11b12?b1m????bk1bk2?bkm]">B=[b11b12?b1m????bk1bk2?bkm]

B=\begin{bmatrix} b_{11} & b_{12} & \cdots & b_{1m}\\ \vdots & \vdots & \ddots & \vdots \\ b_{k1} & b_{k2} & \cdots & b_{km} \\ \end{bmatrix}

在計算兩者乘積的結果C=A×B">C=A×B

C=A\times B時,C">C

C中任意一個元素的計算公式為:

cij=r=1kairbrj,i[1,n],j[1,m]">cij=∑r=1kairbrj,i∈[1,n],j∈[1,m] c_{ij}=\sum_{r=1}^{k}a_{ir}b_{rj}, i\in\left[ 1, n \right], j\in\left[ 1, m \right]

從公式中可以看出:C">C C 中的每個元素的計算沒有關聯性,因此可以同時并行運算。

2. 核心多

好比 GPU 有好多成千上萬的的“小計算器”,CPU 中幾個或十幾個的“高性能的小計算器”。

因此從這個可以看出,GPU 上的運算單元比 CPU 多。

雖然 CPU 上每個單元性能高,但面對大量計算時,GPU 在完成一批矩陣運算時,同時運算的數量高,所以總體下來還是 GPU 適合。

實際上深度學習并不一定需要用GPU,只是如果不使用GPU,訓練模型所耗的時間會變得巨長,如果沒有并行運行,GPU可能還不如CPU。

GPU優勢在于并行運算,而深度學習中的運算大部分都是矩陣運算 (矩陣運算就是并行運算的一種)。可以想象 矩陣A * 矩陣B = 矩陣C,GPU可以做到的并行運算是指,矩陣C中的每個元素可以同時運算得出,而CPU可以做到的只能夠是先算出矩陣C第一行第一列的元素,接著再去算第一行第二列的元素,與此類推。

CPU就好比1位高中生,5分鐘就能做出一道幾何題,但是要讓他5分鐘做1000道簡單的加法題,可能會做不完。而GPU就好比100位小學生,雖然會的東西不及高中生,但是讓它們在5分鐘內合力完成1000道簡單的加法題,還是綽綽有余的。

同一深度學習模型gpu運算一定比cpu快,模型越復雜(神經網絡層數越多、每層訓練器維度越大),gpu優勢越明顯。

粵公網安備 44030502006483號、 粵ICP備15047669號
  • 捷易科技聯系人
  • 主站蜘蛛池模板: 中西区| 大埔区| 漠河县| 连山| 通河县| 沾益县| 马龙县| 安阳市| 会昌县| 繁峙县| 嫩江县| 苗栗市| 安阳县| 怀安县| 普安县| 盐山县| 荆州市| 海晏县| 孟连| 太康县| 西昌市| 格尔木市| 法库县| 沛县| 祁东县| 潜江市| 全椒县| 武鸣县| 刚察县| 沾益县| 封丘县| 淄博市| 莱西市| 连山| 洛南县| 进贤县| 包头市| 兴海县| 博兴县| 昌平区| 江门市|