augmentedImageDatastoreと特徴データを結合したcombinedDatastoreを用いてtrainNetworkするには?
5 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Akifumi Yoshida
am 22 Jun. 2022
Kommentiert: Shunichi Kusano
am 7 Jul. 2022
画像と、画像に対応する特徴データを入力とする深層学習ネットワークの学習に関する質問です。
画像 (imageDatastore)、特徴データ (arrayDatastore) をcombineで結合したCombinedDatastoreを用いて、回帰型深層学習ネットワークの学習(trainNetwork)を行っています。
画像のデータストアがimageDatastoreやarrayDatastoreの場合、特徴データと結合後、trainNetworkにより問題なく学習が進行します。
同じデータを用いて画像のaugmentationを行いたく、
dsXTrain = augmentedImageDatastore([size_y size_x], imagedatastore)
によりaugmentedImageDatastoreに変換し、これを特徴データとcombineし、trainNetworkに用いると、以下のメッセージが表示され、学習を行うことができません。どのようにすればよいのでしょうか?
使い方によるエラー trainNetwork
水平方向に連結される table はすべて、同じ行数でなければなりません。cell 配列と table を連結する
場合、cell 配列と table は同じ行数でなければなりません。
0 Kommentare
Akzeptierte Antwort
Shunichi Kusano
am 23 Jun. 2022
各データストアのミニバッチサイズが違うと同じエラーが再現しました。combineする際にreadSize, minibatchSizeを揃えてあげれば大丈夫かと思います。下記が例です。
%% イメージデータストア
dataFolder = fullfile(toolboxdir('nnet'),'nndemos','nndatasets','DigitDataset');
imds = imageDatastore(dataFolder, ...
'IncludeSubfolders',true);
%% augmentedデータストア
auds = augmentedImageDatastore([100 100],imds);
%% 入力用特徴量arrayデータストア
numData = auds.NumObservations;
dummyArray = rand(numData,1);
arrdsIn = arrayDatastore(dummyArray,"ReadSize",auds.MiniBatchSize);
%% 応答子用数値ベクトル
numData = auds.NumObservations;
dummyArray = rand(numData,1);
arrdsOut = arrayDatastore(dummyArray, "ReadSize",auds.MiniBatchSize);
%% combine
cds = combine(arrdsIn,auds,arrdsOut);
read(cds)
%% 学習
net = trainNetwork(cds,lgraph,options); % lgraphのInputNamesとcdsの入力データの順番が整合しているかを確認
解決しなければ、すみません、再度お知らせ願います。
3 Kommentare
Shunichi Kusano
am 7 Jul. 2022
「学習後のモデル性能が低い」というのはそもそも学習に用いたデータセットでも精度が出てないということでしょうか。つまりlossが下がらないということですか?
判断材料としてそれぞれのパターンで学習に用いたコードと、学習後のモデル性能を評価した際のコード、それから学習した際の学習曲線をシェアいただけると何かわかるかもしれません。
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu イメージを使用した深層学習 finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!