Deep Learning 모델 학습 시, GPU 점유율 및 Mini-Batch 크기에 따른 속도 향상 관련 문의
Afficher commentaires plus anciens
현재 2D, 1D 데이터를 함꼐 입력하여 데이터를 추정하는 Deep Learning 모델을 설계하여 활용하고 있습니다.
모델을 학습하는 과정에서 학습속도를 향상시키기 위해 Mini-batch 크기를 512에서 8192로 증가하였으나, 오히려 학습 속도가 감소하였습니다.
이러한 현상에 대한 이유를 알 수 있을까요?
그리고 학습 시, GPU를 사용하게 끔 설정했으나, GPU 점유율이 5% 이상을 넘지 않습니다. 모델이 단순해서 그런건지, GPU를 최대한 활용할 수 있게 옵션을 설정해야되는건지에 대해 문의드립니다.
아래는 현재 사용하고 있는 모델의 구조에 대한 정보입니다.
---------------------------------------------------------------------------------------
학습 데이터(S,S,C,N) = 9x9x26x596354 (입력1) / 596354x8 (입력2) / 596354x1 (출력)
net = dlnetwork;
tempNet = [
imageInputLayer([9 9 26],"Name","imageinput","Normalization","zscore")
convolution2dLayer([3 3],26,"Name","conv","Padding","same")
reluLayer("Name","relu")
averagePooling2dLayer([3 3],"Name","avgpool2d","Padding","same","Stride",[3 3])
fullyConnectedLayer(26,"Name","fc")
reluLayer("Name","relu_3")
flattenLayer("Name","flatten")];
net = addLayers(net,tempNet);
tempNet = featureInputLayer(8,"Name","featureinput");
net = addLayers(net,tempNet);
tempNet = [
concatenationLayer(1,2,"Name","concat")
fullyConnectedLayer(256,"Name","fc_1")
reluLayer("Name","relu_1")
fullyConnectedLayer(256,"Name","fc_2")
reluLayer("Name","relu_2")
fullyConnectedLayer(1,"Name","fc_3")];
net = addLayers(net,tempNet);
% 헬퍼 변수 정리
clear tempNet;
net = connectLayers(net,"featureinput","concat/in1");
net = connectLayers(net,"flatten","concat/in2");
net = initialize(net);
---------------------------------------------------------------------------------------
Réponse acceptée
Plus de réponses (0)
Catégories
En savoir plus sur Deep Learning Toolbox dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!