天天快看:7.數(shù)據(jù)分析(1) --在MATLAB中通過Nvidia GeForce GPU加速深度學習計算

2023-02-07 11:26:34 來源:51CTO博客

0. 前言

筆者用的是華碩飛行堡壘電腦,自帶2G的GPU

1. 基本環(huán)境

軟件:MATLAB 2020a (當前最新的matlab版本,提供了很多關于深度學習(常見的卷積神經(jīng)網(wǎng)絡和循環(huán)神經(jīng)網(wǎng)絡)的接口)


【資料圖】

據(jù)說matlab現(xiàn)在只支持NVIDIA系列的顯卡,matlab 2018a Neural Network Toolbox關于深度神經(jīng)網(wǎng)絡在GPU上的加速計算有以下要求:

Using a GPU requires a CUDA?enabled NVIDIA?GPU with compute capability 3.0 or higher.

即需要一個計算能力在3.0以上的帶CUDA驅動的NVIDIA系列GPU才能實現(xiàn)GPU加速,在matlab命令行窗口內(nèi)通過‘gpuDevice’查看顯卡是否具備加速功能,

筆者的顯卡的計算能力是5.0,滿足要求。

2. 顯卡測試

關于GPU的基本信息和基本測試流程在這里可以找到:https://ww2.mathworks.cn/help/parallel-computing/gpu-computing.html

本篇的目的主要是如何實現(xiàn)GPU對深度神經(jīng)網(wǎng)絡訓練過程的加速計算。為實現(xiàn)GPU的加速過程,不同版本的matlab對GPU的計算能力有不同的要求:

CUDA-enabled NVIDIA GPUs with compute capability 3.0 or higher. For releases 17b and earlier, compute capability 2.0 is sufficient. For releases 14a and earlier, compute capability 1.3 is sufficient.

以Create Simple Deep Learning Network for Classification示例程序為例,https://ww2.mathworks.cn/help/deeplearning/examples/create-simple-deep-learning-network-for-classification.html;jsessinotallow=b3ffae289605ec143885daccfff2

options = trainingOptions("sgdm", ... "InitialLearnRate",0.01, ... "MaxEpochs",4, ... "Shuffle","every-epoch", ... "ValidationData",imdsValidation, ... "ValidationFrequency",30, ... "Verbose",false, ... "ExecutionEnvironment","cpu",... "Plots","training-progress");

"ExecutionEnvironment"可以設置為cpu、gpu或者auto

示例程序以CPU進行網(wǎng)絡訓練的過程如下圖所示,費時45sec

筆者以GPU進行加速訓練的過程如下圖所示,費時21 sec

GPU加速了計算,相比較于CPU解決了一半時間

標簽: 神經(jīng)網(wǎng)絡 計算能力 如下圖所示

上一篇:
下一篇: