MATLAB Answers

Index exceeds the number of array elements (4).というエラーについて

5 views (last 30 days)
ssk
ssk on 15 Feb 2019
Commented: ssk on 17 Feb 2019
プログラミング初心者です。
以下は当方のディレクトリ構造です。
main
-- a
-- image.dcm(10 dicom file)
 -- b
  -- image.dcm(10 dicom file)
 -- c
  -- image.dcm(10 dicom file)
-- d
  -- image.dcm(10 dicom file).
%path = current directory
currentdirectory = pwd;
categories = {'a', 'b', 'c','d'};
%Create an ImageDatastore to help you manage the data.
imds = imageDatastore(fullfile(currentdirectory, categories),'IncludeSubfolders',true,'FileExtensions','.dcm','LabelSource', 'foldernames');
現在、上記のコードを作り、alexnetを導入したところ、以下のエラーがでました。
※リンクの事前学習済のネットワークの読み込みの箇所からalexnetのコードを使っています
リンク:https://jp.mathworks.com/help/deeplearning/examples/transfer-learning-using-alexnet.html
Index exceeds the number of array elements (4).
どのように解決すべきかご教示いただけますと幸いです。どうぞよろしくお願いいたします。

  0 Comments

Sign in to comment.

Accepted Answer

Kenta
Kenta on 17 Feb 2019
layers = [
layersTransfer
fullyConnectedLayer(4,'WeightLearnRateFactor',20,'BiasLearnRateFactor',20)
softmaxLayer
classificationLayer];
レイヤーの定義のときに、層の数を4にすればよいと思います。上のように、fullyConnectedLayerの直後にカテゴリーの数である4を打てば正しく実行できると思うのですが、いかがでしょうか。

  1 Comment

ssk
ssk on 17 Feb 2019
本当にありがとうございます!おかげさまでalexnet動きました!

Sign in to comment.

More Answers (0)