Filter löschen
Filter löschen

数値データの畳み込みができません.

1 Ansicht (letzte 30 Tage)
Asuka
Asuka am 19 Jan. 2018
Kommentiert: mizuki am 31 Jan. 2018
失礼致します. sequenceInputLayerとconvolution2dLayerを同時に使用することができません. Construct and Train an LSTM Networkの例題を実行しました.
その後,層の定義の部分でLSTMレイヤーを畳み込み層等に変更して実行すると「インデックスが行列の次元を超えています.」とでます. convolution2dLayerの引数に問題があるように思うのですが,何か解決策はありますでしょうか?
load JapaneseVowelsTrain
layers = [ ...
sequenceInputLayer(12)
convolution2dLayer([1 3],3,'Stride',[1 1]);
reluLayer();
fullyConnectedLayer(9)
softmaxLayer
classificationLayer]
maxEpochs = 150;
miniBatchSize = 27;
options=trainingOptions('sgdm','MaxEpochs',maxEpochs,...
'MiniBatchSize',miniBatchSize);
CNNConvnet = trainNetwork(X,Y,layers,options)
load JapaneseVowelsTest
miniBatchSize = 27;
YPred = classify(CNNConvnet,XTest,...
'MiniBatchSize',miniBatchSize);
acc = sum(YPred == YTest)./numel(YTest)
  1 Kommentar
mizuki
mizuki am 31 Jan. 2018
R2017b のバージョンでは、sequenceInputLayer() に対して convolution2dLayer() を適用することができない状況のようです。
時系列データに対しては LSTM がよく使用されますので、内容に依ってはこちらもご検討ください。

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

michio
michio am 19 Jan. 2018
Bearbeitet: michio am 19 Jan. 2018
imageInputLayer([1 6000]);
などと、信号を 1xN の"画像"として取り扱った例があります。
layers = [imageInputLayer([1 6000])
convolution2dLayer([1 200],20,'stride',1)]
と構成していきます。英語ですがより具体的な例はこちらも参考にしてください。

Weitere Antworten (0)

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!