Deep Learning: Training Network with "parallel" option using only CPUs
現在この質問をフォロー中です
- フォローしているコンテンツ フィードに更新が表示されます。
- コミュニケーション基本設定に応じて電子メールを受け取ることができます。
エラーが発生しました
ページに変更が加えられたため、アクションを完了できません。ページを再度読み込み、更新された状態を確認してください。
古いコメントを表示
Hi,
I am trying to train a network using the follow parameters:
miniBatchSize = 10;
clear NewNetIn3D
valFrequency = floor(numel(imdsTrain)/miniBatchSize);
options = trainingOptions('sgdm', ...
'MiniBatchSize',miniBatchSize, ...
'MaxEpochs',6, ...
'InitialLearnRate',1e-5,...
'Shuffle','never',...
'ExecutionEnvironment','parallel',...
'Verbose',false, ...
'Plots','training-progress');
net = trainNetwork(imdsTrain,LabelsTrain,LayersBMC,options);
Since my graphic card is not super, I am trying to run the code using multiple CPUs, but the parallel option always go with multiple GPUs and then crashes. Is there any way to restrict the paralel pool to use only CPUs? If I define the option 'cpu' it works, but with only one core.
採用された回答
Joss Knight
2019 年 12 月 16 日
Even with a weak graphics card you will usually see better performance than on multiple CPUs. However, to try it out, after you start MATLAB, type
setenv CUDA_VISIBLE_DEVICES -1
13 件のコメント
Brunno Machado de Campos
2019 年 12 月 17 日
編集済み: Brunno Machado de Campos
2019 年 12 月 17 日
Hi, thank you!
Your line worked perfectly.
I believe my problem with GPU is the dedicated memory. I am running with 800 3D MagRessoImages and when the trainning starts with GPUs it stops imediately with a memory related error.
The correct solution is to reduce the MiniBatchSize training option until you have enough memory.
Hello Mr. Knight
i need to use multiple CPU instead of hardware resource: single CPU in order to speed the network up, so do you have any suggestion for me?
thanks
Joss Knight
2020 年 10 月 5 日
編集済み: Joss Knight
2020 年 10 月 8 日
Yes, use 'ExecutionEnvironment', 'parallel' as the opening poster is doing.
thanks sir
if i use 'ExecutionEnvironnment', 'parallel' it will help to speed the network up?
my computer features are: 8 GB HD graphic, core i7 8th generation
Give it a go and see if it helps!
i did it but i got this error:
Error using trainingOptions (line 285)
'ExecutionEnvironnment' is not an option for solver 'sgdm'.
Looks like you have a typo since there are only three 'n's in Environment.
so, how to solve this issue?
Type ExecutionEnvironment instead of ExecutionEnvironnment.
By the way it's my bad because my earlier comment had the typo.
oh no problem sir
is there a way to showdown the 'parallel' command in the system, because after multiple CPU i again use single CPU but there is a little bit on my learning curve.
through the running on single CPU i found this on command window and it seems affected on my model:
IdleTimeout has been reached.
Parallel pool using the 'local' profile is shutting down.
That's nothing. You had a bunch of MATLABs running to do your parallel training, you stopped using them, so eventually they were terminated.
その他の回答 (0 件)
カテゴリ
ヘルプ センター および File Exchange で Deep Learning Toolbox についてさらに検索
参考
2019 年 12 月 16 日
2020 年 10 月 8 日
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Web サイトの選択
Web サイトを選択すると、翻訳されたコンテンツにアクセスし、地域のイベントやサービスを確認できます。現在の位置情報に基づき、次のサイトの選択を推奨します:
また、以下のリストから Web サイトを選択することもできます。
最適なサイトパフォーマンスの取得方法
中国のサイト (中国語または英語) を選択することで、最適なサイトパフォーマンスが得られます。その他の国の MathWorks のサイトは、お客様の地域からのアクセスが最適化されていません。
南北アメリカ
- América Latina (Español)
- Canada (English)
- United States (English)
ヨーロッパ
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)
