為深度學習選擇最好的GPU
在進行機器學習專案時,特別是在處理深度學習和神經網路時,最好使用GPU而不是CPU來處理,因為在神經網路方面,即使是一個非常基本的GPU也會勝過CPU。
但是你應該買哪種GPU呢?本文將總結需要考慮的相關因素,以便可以根據預算和特定的建模要求做出明智的選擇。
為什麼 GPU 比 CPU 更適合機器學習?
CPU(中央處理器)是電腦的主力,它非常靈活,不僅需要處理來自各種程式和硬體的指令,處理速度也有一定的要求。為了在這種多任務環境中表現出色,CPU 具有少量且靈活快速的處理單元(也稱為核)。
GPU(圖形處理單元)GPU在多工處理方面較不靈活。但它可以並行執行大量複雜的數學計算。這是透過擁有更多數量的簡單核心(數千到上萬)來實現的,這樣可以同時處理許多簡單的計算。
並行執行多個計算的要求非常適合於:
- 圖形渲染-移動的圖形物件需要不斷地計算它們的軌跡,這需要大量不斷重複的平行數學計算。
- 機器和深度學習-大量的矩陣/張量計算,GPU可以並行處理。
- 任何類型的數學計算,可以拆分為平行運行。
在Nvidia自己的部落格上已經總結了CPU和GPU的主要差異:
張量處理單元(TPU)
隨著人工智慧和機器/深度學習的發展,現在已經有了更專門的處理核心,稱為張量核(Tensor cores)。在執行張量/矩陣計算時,它們更快更有效。因為我們在機器/深度學習中所處理的資料型態就是張量。
雖然有專用的tpu,但一些最新的GPU也包含許多張量核,我們會在後面總結。
Nvidia vs AMD
這將是一個相當短的部分,因為這個問題的答案肯定是Nvidia
雖然可以使用AMD的gpu進行機器/深度學習,但在寫本文時,Nvidia的GPU具有更高的相容性,並且通常更好地整合到TensorFlow和PyTorch等工具中(例如目前PyTorch的AMD GPU的支援還只能在Linux上使用)。
使用AMD GPU需要使用額外的工具(ROCm),這個會有一些額外的工作,而且版本可能不會很快更新的。這種情況將來可能會有所改善,但現在為止,最好還是使用Nvidia。
GPU選擇的主要屬性
選擇一個夠完成機器學習任務並且符合預算的GPU,基本上歸結為四個主要因素的平衡:
- GPU有多少記憶體?
- GPU有多少CUDA和/或張量核?
- 卡使用什麼晶片架構?
- 功耗需求是多少(如果有) ?
以下將逐一探討這些方面,希望能讓你更能理解什麼對你來說是重要的。
GPU記憶體
答案是,越多越好!
這實際上取決於你的任務,以及這些模型有多大。例如,如果你正在處理圖像、視頻或音頻,那麼根據定義,你將處理相當大量的數據,GPU RAM將是一個非常重要的考慮因素。
總有辦法解決記憶體不足的問題(例如減少批次大小)。但是這將會浪費訓練的時間,因此需要很好地平衡需求。
根據經驗,我的建議如下:
- 4GB:我認為這是絕對的最小值,只要你不是在處理過於複雜的模型,或者大的圖像、視頻或音頻,這個在大多數情況下能工作,但是達不到日常使用的需要。如果你剛起步,想嘗試一下又不想全力投入,那麼可以從它開始
- 8GB:這是一個日常學習很好的開始,可以在不超過RAM限制的情況下完成大多數任務,但在使用更複雜的圖像、視訊或音訊模型時會遇到問題。
- 12GB:我認為這是科研最基本的要求。可以處理大多數較大的模型,甚至是那些處理影像、視訊或音訊的模型。
- 12GB :越多越好,你將能夠處理更大的資料集和更大的批次大小。超過12GB才是價格真正開始上漲的開始。
一般來說,如果成本相同的話,選擇「速度較慢」但記憶體較大的卡片會更好。請記住,GPU的優勢是高吞吐量,這在很大程度上依賴可用的RAM來透過GPU傳輸資料。
CUDA核心與Tensor 核心
這其實很簡單,越多越好。
先考慮RAM,然後就是CUDA。對於機器/深度學習來說,Tensor 核比CUDA核更好(更快,更有效)。這是因為它們是為機器/深度學習領域所需的計算而精確設計的。
但這並不重要,因為CUDA核心已經夠快了。如果你能得到一張包含Tensor 核的卡,這是一個很好的加分點,只是不要太糾結於它。
後面你會看到「CUDA」被提到很多次,我們先總結它:
CUDA核心-這些是顯示卡上的實體處理器,通常有數千個,4090已經1萬6了。
CUDA 11 -數字可能會改變,但這是指安裝的軟體/驅動程序,以允許顯示卡正常的工作。 NV會定期發布新版本,它可以像其他軟體一樣安裝和更新。
CUDA代數(或計算能力)-這描述了顯示卡卡在它的更新迭代的代號。這在硬體上是固定的,因此只能透過升級到新卡來改變。它由數字和一個代號來區分。例:3。 x[Kepler],5。 x [Maxwell], 6。 x [Pascal], 7。 x[Turing]和8。 x(Ampere)。
晶片架構
這其實比你想像的更重要。我們這裡不討論AMD,我的眼裡只有」老黃「。
上面我們已經說了,30系列的卡片就是Ampere架構,最新的40系列是 Ada Lovelace。一般老黃都會使用一個著名科學家和數學家來對架構命名,這次選擇的是著名英國詩人拜倫之女,建立了循環和子程序概念的女數學家、計算機程序創始人Ada Lovelace來命名。
了解對於卡片的運算能力,我們要了解2個面向:
- 顯著的功能改進
- 這裡一個重要的功能就是,混合精準度訓練:
使用精確度低於32 位元浮點數的數字格式有許多好處。首先它們需要更少的內存,從而能夠訓練和部署更大的神經網路。其次它們需要更少的記憶體頻寬,從而加快資料傳輸操作。第三數學運算在精度降低的情況下運行得更快,尤其是在具有 Tensor Core 的 GPU 上。混合精度訓練實現了所有這些好處,同時確保與完全精度訓練相比不會失去特定於任務的準確性。它透過識別需要完全精確度的步驟並僅對這些步驟使用 32 位元浮點而在其他任何地方使用 16 位元浮點來實現這一點。
這裡是Nvidia 官方文檔,有興趣的可以看看:
https://docs.nvidia.com/deeplearning/performance/mixed-precision-training/index.html
如果您的GPU 具有7.x (Turing) 或更高的架構,才有可能使用混合精確訓練。也就是說 桌面的RTX 20 系列或高版本,或伺服器上的 “T”或“A”系列。
混合精準度訓練具有如此優勢的主要原因是它降低了RAM 使用率,Tensor Core 的GPU會加速混精度訓練,如果沒有的話使用FP16也會節省顯存,可以訓練更大的批次大小,間接提升訓練速度。
是否會被棄用
如果你對RAM有特別高的要求,但又沒有足夠的錢買高階卡,那麼你可能會選擇二手市場上的老款GPU。這有一個相當大的缺點…這張卡的壽命結束了。
一個典型的例子就是Tesla K80,它有4992個CUDA核心和24GB的RAM。 2014年,它零售價約為7,000美元。現在的價格從 150到170美元不等!(鹹魚的價格600-700左右)這麼小的價格卻有這麼大的內存,你一定很興奮。
但是這有一個非常大的問題。 K80的運算架構是3.7 (Kepler),CUDA 11起已經不支援(目前CUDA版本為11.7)。這意味著這張卡已經廢了,所以它才賣的這麼便宜。
所以在選擇2手卡時一定要看清楚是否支援最新版本的驅動程式和CUDA,這是最重要的。
高階遊戲卡 VS 工作站/伺服器卡
老黃基本上把卡片分成了兩個部分。消費性顯示卡與工作站/伺服器的顯示卡(即專業顯示卡)。
這兩個部分之間有明顯的區別,對於相同的規格(RAM, CUDA內核,架構),消費性顯示卡通常會更便宜。但是專業卡通常會有更好的質量,而且較低的能源消耗(其實渦輪的噪音挺大的,放機房還可以,放家裡或是試驗室有點吵)。
高階(非常昂貴)的專業卡,你可能會注意到它們有很大的RAM(例如RTX A6000有48GB, A100有80GB!)。這是因為它們通常直接針對3D建模、渲染和機器/深度學習專業市場,這些市場需要高水準的RAM。再說一次,如果你有錢,買A100就對了!(H100是A100的新版,目前無法評價)
但是我個人認為,我們還是選擇消費者的高端遊戲卡,因為如果你不差錢,你也不會看這篇文章,對吧
選擇建議
所以在最後我根據預算和需求提出一些建議。我將其分為三個部分:
- 低預算
- 中預算
- #高預算
高預算不考慮任何超出高端消費顯示卡。還是那句話如果你有錢:A100,H100隨便買。
本文會包含在二手市場買到的卡片。這主要是因為我認為在低預算的情況下,二手是可以考慮的。這裡還包括了專業桌面系列卡(T600、A2000和A4000),因為它的一些配置比同類消費類顯示卡稍差,但功耗明顯更好。
低預算
中預算
#高預算
##線上/雲端服務
如果你決定花錢買顯示卡不適合你,你可以利用GoogleColab,它可以讓你免費使用GPU。
但這是有時間限制的,如果你使用GPU太長時間,他們會把你踢出去,然後回到CPU上。如果GPU處於非活動狀態太長時間,可能是在你寫程式碼的時候,它也會把GPU拿回來。 GPU也是自動分配的,所以你不能選擇你想要的確切的GPU(你也可以每月9.9刀弄個Colab Pro,我個人覺得要比低預算好很多,但是要求有梯子,$49.99的Colab Pro 有點貴,不建議)。
在寫本文時,透過Colab可以得到以下GPU:
在前面也提到了,K80有24GB的RAM和4992個CUDA核心,它基本上是兩個K40卡連在一起。這意味著當你在Colab中使用K80時,你實際上可以存取一半的卡,所以也就是只有12GB和2496個CUDA核心。 ######總結######最後現在4090還是處於耍猴的狀態,基本上要搶購或加價找黃牛######但是16384 CUDA 24GB,對比3090 的10496 CUDA ,真的很香。 ######而4080 16G的9728CUDA 如果價格能到7000內,應該是性價比很高的選擇。 12G的 4080就別考慮了,它配不上這個名字。 ######對於AMD的 7900XTX 應該也是一個很好的選擇,但是相容性是個大問題,如果有人測試的話可以留言。 ######40系列老黃一直在耍猴,所以如果不著急的話還再等等把:#########你不買,我不買,明天還能降兩百## ####
以上是為深度學習選擇最好的GPU的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

在機器學習和資料科學領域,模型的可解釋性一直是研究者和實踐者關注的焦點。隨著深度學習和整合方法等複雜模型的廣泛應用,理解模型的決策過程變得尤為重要。可解釋人工智慧(ExplainableAI|XAI)透過提高模型的透明度,幫助建立對機器學習模型的信任和信心。提高模型的透明度可以透過多種複雜模型的廣泛應用等方法來實現,以及用於解釋模型的決策過程。這些方法包括特徵重要性分析、模型預測區間估計、局部可解釋性演算法等。特徵重要性分析可以透過評估模型對輸入特徵的影響程度來解釋模型的決策過程。模型預測區間估計

最近推出的 Beelink GTi 14 的突出特點之一是迷你 PC 下方有一個隱藏的 PCIe x8 插槽。該公司在發佈時表示,這將使外部顯示卡更容易連接到系統。 Beelink有n

寫在前面今天我們探討下深度學習技術如何改善在複雜環境中基於視覺的SLAM(同時定位與地圖建構)表現。透過將深度特徵提取和深度匹配方法相結合,這裡介紹了一種多功能的混合視覺SLAM系統,旨在提高在諸如低光條件、動態光照、弱紋理區域和嚴重抖動等挑戰性場景中的適應性。我們的系統支援多種模式,包括拓展單目、立體、單目-慣性以及立體-慣性配置。除此之外,也分析如何將視覺SLAM與深度學習方法結合,以啟發其他研究。透過在公共資料集和自採樣資料上的廣泛實驗,展示了SL-SLAM在定位精度和追蹤魯棒性方面優

AMD 兌現了 24 年 3 月的最初承諾,將於今年第二季推出 FSR 3.1。 3.1 版本的真正與眾不同之處在於幀生成方面與升級方面的解耦。這使得 Nvidia 和 Intel GPU 擁有者可以應用 FSR 3。

C++中機器學習演算法面臨的常見挑戰包括記憶體管理、多執行緒、效能最佳化和可維護性。解決方案包括使用智慧指標、現代線程庫、SIMD指令和第三方庫,並遵循程式碼風格指南和使用自動化工具。實作案例展示如何利用Eigen函式庫實現線性迴歸演算法,有效地管理記憶體和使用高效能矩陣操作。

機器學習是人工智慧的重要分支,它賦予電腦從數據中學習的能力,並能夠在無需明確編程的情況下改進自身能力。機器學習在各個領域都有廣泛的應用,從影像辨識和自然語言處理到推薦系統和詐欺偵測,它正在改變我們的生活方式。機器學習領域存在著多種不同的方法和理論,其中最具影響力的五種方法被稱為「機器學習五大派」。這五大派分別為符號派、聯結派、進化派、貝葉斯派和類推學派。 1.符號學派符號學(Symbolism),又稱符號主義,強調利用符號進行邏輯推理和表達知識。該學派認為學習是一種逆向演繹的過程,透過現有的

MetaFAIR聯合哈佛優化大規模機器學習時所產生的資料偏差,提供了新的研究架構。據所周知,大語言模型的訓練常常需要數月的時間,使用數百甚至上千個GPU。以LLaMA270B模型為例,其訓練總共需要1,720,320個GPU小時。由於這些工作負載的規模和複雜性,導致訓練大模型存在著獨特的系統性挑戰。最近,許多機構在訓練SOTA生成式AI模型時報告了訓練過程中的不穩定情況,它們通常以損失尖峰的形式出現,例如Google的PaLM模型訓練過程中出現了多達20次的損失尖峰。數值偏差是造成這種訓練不準確性的根因,

譯者|李睿審校|重樓人工智慧(AI)和機器學習(ML)模型如今變得越來越複雜,這些模型產生的產出是黑盒子-無法向利害關係人解釋。可解釋性人工智慧(XAI)致力於透過讓利害關係人理解這些模型的工作方式來解決這個問題,確保他們理解這些模型實際上是如何做出決策的,並確保人工智慧系統中的透明度、信任度和問責制來解決這個問題。本文探討了各種可解釋性人工智慧(XAI)技術,以闡明它們的基本原理。可解釋性人工智慧至關重要的幾個原因信任度和透明度:為了讓人工智慧系統被廣泛接受和信任,使用者需要了解決策是如何做出的
