2クラス分類問題にお​ける事後確率を用いた​拒否オプションについ​て

조회 수: 4 (최근 30일)
Sae Onodera
Sae Onodera 2020년 6월 25일
댓글: Kenta 2020년 6월 29일
学習済みのCNNネットワークを用いて画像を2クラスに分類し、分類の事後確率がある値よりも高い場合にはCNNの分類結果を受け入れ、低い場合にはCNNの分類結果を拒否するプログラムを作成しようと考え、以下のようなコードで実行したところ、
エラー: confusionmat (line 71)
G と GHAT は同じタイプでなければなりません。
エラー: Squeezenet_ensemble (line 161)
C = confusionmat(imdsValidation.Labels,YPred)
というエラーが出てしまいました。
質問なのですが、事後確率の低い場合には拒否する、という場合にはクラス1・クラス2の分類のほかに分類結果を拒否する3つ目のクラスを定義する必要があるのでしょうか。よろしくお願いいたします。
% 事後確率に応じてCNNの分類結果を拒否するオプション
for i=1:filesuu
if ( probs(i,:) < 0.9)
YPred = 'Reject';
[img,info] = readimage(imdsValidation,i);
info.Filename
imshow(img)
end
end
% 正解率を表示
accuracy = mean(YPred == imdsValidation.Labels)
% 分類の混同行列を表示
C = confusionmat(imdsValidation.Labels,YPred)
confusionchart(C)

채택된 답변

Kenta
Kenta 2020년 6월 25일
こんにちは、「~のほかに分類結果を拒否する3つ目のクラスを定義する必要があるのでしょうか」とありますが、confusion matrixをA, B, rejectの3つのカテゴリーで作成したい場合は、定義する必要がある(=imdsValidation.Labelsにrejectが含まれないとエラーを返す場合が多い)と思います。もしかしたらデータの入れ方次第では問題にはならないかもしれません。
ただ、本来的には、imdsValidation.Labels内にはAかBのみが入るはずで、rejectというカテゴリーの概念はないですよね。そのため、精度計算をした行の次の段階としては、reject以外のカテゴリをもつYPredとそれに対応するラベルでconfusion matrixを作るのかと想像していたのですがいかがでしょうか。
  댓글 수: 2
Sae Onodera
Sae Onodera 2020년 6월 29일
ご回答ありがとうございます。
お返事が遅くなってしまってすみません。
2つ目に挙げてくださった手順でconfusion matrixを作ることができました。ありがとうございました。
Kenta
Kenta 2020년 6월 29일
はい、解決しよかったです。

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 イメージを使用した深層学習에 대해 자세히 알아보기

제품

Community Treasure Hunt

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

Start Hunting!