trainMaskRCNN 함수를 이용한 훈련에서 조기 종료와 관련된 문제가 있습니다. (validation patience 관련)
Mostra commenti meno recenti
% Custom training experiment code
function output = ver_1120_training1(params, monitor)
load('C:\Users\UserPc\OneDrive\Master\Main project\2. AST\2. Extracting the color of PDA beads/Label data/ver_1116/polygonLabel.mat','polygonTable','validTable','detector');
load('C:\Users\UserPc\OneDrive\Master\Main project\2. AST\2. Extracting the color of PDA beads/Label data/ver_1120/polygonLabel.mat');
trainDs = transform(arrayDatastore(polygonTable,'OutputType','same'),@trainingDataTransformFcn);
validDs = transform(arrayDatastore(test,'OutputType','same'),@validationDataTransformFcn);
options = trainingOptions(params.solver,...
"MaxEpochs",100,"MiniBatchSize",2,"ExecutionEnvironment","multi-gpu",...
"Shuffle","every-epoch","InitialLearnRate",params.initLearnRate,"LearnRateSchedule","piecewise",...
"LearnRateDropPeriod",params.dropPeriod,"LearnRateDropFactor",params.dropFactor,...
"ValidationData",validDs,"ValidationFrequency",50,"ValidationPatience",20,...
"OutputNetwork","best-validation-loss",...
"BatchNormalizationStatistics","moving","ResetInputNormalization",false);
[trainedDetector, info] = trainMaskRCNN(trainDs,detector,options,"ExperimentMonitor",monitor);
output.trainedDetector = trainedDetector;
output.info = info;
end
안녕하세요.
MATLAB의 실험관리자 앱을 사용해서 Mask R-CNN의 훈련과 하이퍼-파라미터 튜닝을 진행하고 있습니다.
감지하고자 하는 객체의 class는 1개 종류 뿐입니다.
코드는 정상작동 되지만 한가지 문제가 있습니다.
저는 처음에 Validation patience를 5로 설정하였는데, 훈련이 5번의 검증(250번째 반복)만에 종료되었습니다.
Validation patience를 20으로 설정하면, 훈련이 대략 20~21번의 검증(약 1000번째 반복)만에 종료됩니다.
훈련 플롯을 살펴보면, Validation Loss는 점차 감소하는 추세입니다.

따라서 의도한대로 Validation loss가 20번 연속으로 감소하지 않으면 훈련이 종료되기 보다는
Validation patience로 설정한 횟수만큼 검증이 이어진 후에 훈련이 종료되는 것 같습니다.
조금 의아한 부분은 Mask Loss와 RMSE의 그래프가 초기에 0부터 시작하는 것처럼 보인다는 것입니다.
그렇다면 최소값이 0으로 설정되어 이러한 현상이 나타나는 것일까요?
그리고 오로지 첫번째 항목인 (Total) Loss에 대해서만 Early stop 여부가 결정되게 만들 수는 없을까요?
답변을 부탁드립니다.
감사합니다.
Risposta accettata
Più risposte (0)
Categorie
Scopri di più su Convert Image Type in Centro assistenza e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!