Deep Learning 모델 학습 시, GPU 점유율 및 Mini-Batch 크기에 따른 속도 향상 관련 문의
古いコメントを表示
현재 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);
---------------------------------------------------------------------------------------
採用された回答
その他の回答 (0 件)
カテゴリ
ヘルプ センター および File Exchange で Deep Learning Toolbox についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!