how to use parallel computing with train faster rcnn detector.
Show older comments
Hi,
I'm trying to use matlab to train my own data set using train faster rcnn function, but when I tried to enable the parallel computing by applying it in the options :
optionsStage1 = trainingOptions('sgdm', ...
'MaxEpochs', 10, ...
'InitialLearnRate', 1e-5, ...
'ExecutionEnvironment','parallel',...
'CheckpointPath', 'D:\hope\checkpoint');
% Options for step 2.
optionsStage2 = trainingOptions('sgdm', ...
'MaxEpochs', 10, ...
'ExecutionEnvironment','parallel',...
'InitialLearnRate', 1e-5, ...
'CheckpointPath', 'D:\hope\checkpoint');
% Options for step 3.
optionsStage3 = trainingOptions('sgdm', ...
'MaxEpochs', 10, ...
'InitialLearnRate', 1e-6, ...
'ExecutionEnvironment','parallel',...
'CheckpointPath', 'D:\hope\checkpoint');
% Options for step 4.
optionsStage4 = trainingOptions('sgdm', ...
'MaxEpochs', 10, ...
'InitialLearnRate', 1e-6, ...
'ExecutionEnvironment','parallel',...
'CheckpointPath', 'D:\hope\checkpoint');
options = [
optionsStage1
optionsStage2
optionsStage3
optionsStage4
];
I'm getting this error message:
Error using vision.internal.cnn.parseInputsFasterRCNN>iCheckExecutionEnvironment
(line 433)
The value of 'options.ExecutionEnvironment' must be 'auto', 'cpu', or 'gpu'.
'multi-gpu' and 'parallel' are not supported.
could you please help me in this part as soon as possible.
Answers (2)
Walter Roberson
on 29 Apr 2017
0 votes
You do not happen to show which MATLAB release you are using, or which call you are making.
ExecutionEnvironment in general is new as of R2016b, and the seriesnetwork classify() and seriesnetwork predict() routine for that permits only auto, gpu, and gpu.
In R2017a, those two functions have the same limitation.
In R2017a, the trainNetwork() command can take a trainingOptions() object that can include multi-gpu and parallel. In R2016a, trainingOptions() did not permit ExecutionEnvironment.
4 Comments
Ihsan Bani Melhem
on 30 Apr 2017
Walter Roberson
on 30 Apr 2017
Please show your code.
Ihsan Bani Melhem
on 30 Apr 2017
Edited: Walter Roberson
on 30 Apr 2017
Joss Knight
on 2 May 2017
Edited: Joss Knight
on 2 May 2017
The Error says that 'multi-gpu' and 'parallel' are not supported and yet you have tried to set your 'ExecutionEnvironment' to 'parallel'. But it isn't supported. So you can't use it.
Joss Knight
on 2 May 2017
0 votes
The Error says that 'multi-gpu' and 'parallel' are not supported and yet you have tried to set your 'ExecutionEnvironment' to 'parallel'. But it isn't supported. So you can't use it.
4 Comments
Walter Roberson
on 2 May 2017
However, if one goes through the documentation then it would appear that they should be supported. The options parameter for trainFasterRCNNObjectDetector does lead to trainingOptions() which does list those two.
Joss Knight
on 2 May 2017
Edited: Joss Knight
on 2 May 2017
Well, that's admittedly confusing, but the fact that you can create a trainingOptions with those settings doesn't mean you can then pass those settings to the trainFasterRCNNObjectDetector. Unfortunately there wasn't time to add support for parallel to that feature.
Raphael Chazelle
on 25 Sep 2017
Then why does it say the following in trainRCNNObjectDetector documentation "This function also supports parallel computing using multiple MATLAB® workers. Enable parallel computing using the Computer Vision System Toolbox Preferences dialog box. To open Computer Vision System Toolbox™ preferences, on the Home tab, in the Environment section, click Preferences. Select Computer Vision System Toolbox." if it doesn't??
And if that wasn't bad enough the documentation for trainFasterRCNNObjectDetector is even more confusing!
"For Faster R-CNN training, the use of a parallel pool of MATLAB workers is highly recommended to reduce training time. trainFasterRCNNObjectDetector automatically creates and uses a parallel pool based on your parallel preference settings. Ensure that the use of the parallel pool is enabled prior to training."
I'm trying to run you in parallel Matlab! But you won't let me!
Raphael Chazelle
on 25 Sep 2017
Also could you please expand when you say "Unfortunately there wasn't time to add support for parallel to that feature." does that mean we WILL get this support in some future release? I looked at the release notes for r2017b and didn't see anything about it. Maybe r2018pre-release?? Here's to hoping! Otherwise gonna have to move away from matlab to T-flow.
Categories
Find more on Object Detection in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!