R-CNNでのクラス名におけるエラーについて

9 Ansichten (letzte 30 Tage)
Yuki Yoshino
Yuki Yoshino am 21 Nov. 2019
Beantwortet: Kazuya am 28 Nov. 2019
R-CNNを用いて物体検出を行いたいと考えています。
以下のCNNの層構造において
層.jpg
15層目のプロパティ、およびclassは以下のようになっています。
15層目.jpg
15層目カテゴリ.jpg
学習データのクラス名は以下のようになっています。
学習データ.jpg
rcnn = trainRCNNObjectDetector(data, layers, options, 'NegativeOverlapRange', [0 0.3]);を処理している際、
"ニューラル ネットワークに学習データ内のオブジェクトを分類させるための学習を実行中"において
下記のようなエラーが出てしまいました。
エラー: trainNetwork (line 150)
層 15 のクラス名は、学習データのクラス名と一致しなければなりません。学習データのクラス名は categories(Y) で指定されます。ここで、Y は学習データのラベルです。
エラー: rcnnObjectDetector.train (line 239)
[net, info] = trainNetwork(dispatcher, layers, opts);
エラー: trainRCNNObjectDetector (line 280)
[detector, ~, info] = rcnnObjectDetector.train(trainingData, lgraphOrLayers, options, params);
エラー: Untitled_36 (line 16)
rcnn = trainRCNNObjectDetector(data, layers, options, 'NegativeOverlapRange', [0 0.3]);
上記のようなエラーが出てしまい、実行できません。どのように改善を行えばよいのでしょうか。
よろしくお願いいたします。
  9 Kommentare
Yuki Yoshino
Yuki Yoshino am 28 Nov. 2019
回答をしてくださった、Kenta Itakura様、Hiro Yoshino様、Kazuya様
ありがとうございました。
Kazuya
Kazuya am 28 Nov. 2019
良かったです!

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Kazuya
Kazuya am 28 Nov. 2019
こちらに回答として転記しておきます。
****
学習済みのネットワークは positive/nagative の2クラス分類を行うものですが、学習データに positive が無いのが原因の様です。
tmp = net.Layers;
layers = [tmp(1:end-1)
classificationLayer];
と classificationLayer だけ新しいものするとエラーは解決します。

Weitere Antworten (1)

Hiro Yoshino
Hiro Yoshino am 25 Nov. 2019
まずは、こちらをご参考にしてみては如何でしょうか?
あとは、作成したネットワークの整合性チェックをディープネットワークデザイナーから行えます。
キャプチャ.PNG

Produkte


Version

R2018b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!