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

6 views (last 30 days)
プログラミング初心者です。
以下は当方のディレクトリ構造です。
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).
どのように解決すべきかご教示いただけますと幸いです。どうぞよろしくお願いいたします。

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)

Community Treasure Hunt

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

Start Hunting!