machine learning toolにて、データ​長長さのエラー発生し​ています。

1 回表示 (過去 30 日間)
SHromaneko
SHromaneko 2023 年 12 月 6 日
回答済み: SHromaneko 2023 年 12 月 13 日
機械学習を勧めていますが、convolution1dLayerにて下記のエラーが発生します。
Error using trainNetwork
Invalid network
Caused by: Network: Incompatible input and output sequence lengths. The network must return sequences with the same length as the input data or a sequence with length one.
私の環境で使っている学習用データを添付します。
添付の通り、学習データのインプットとアウトプットの長さは同じはずですが、これで実行してもエラーになってしまいます。
原因わかりますでしょうか?
[numChannels_in, ~] = size(XdTrain_loading{1});
[numChannels_out, ~] = size(TdTrain_loading{1});
options.MaxEpochs = 50;
% トレーニングデータの最短シーケンスの長さを取得
minLength = min(cellfun(@(x) size(x, 2), XdTrain_loading));
layers = [
sequenceInputLayer(numChannels_in,'MinLength', minLength)
convolution1dLayer(11, 96)
fullyConnectedLayer(numChannels_out)
regressionLayer
];
net_loading_diff = trainNetwork(XdTrain_loading,TdTrain_loading,layers,options);

採用された回答

Aiswarya
Aiswarya 2023 年 12 月 12 日
こんにちは、私英語質問えます
I understand that you are getting an error regarding incompatible input and output sequence length. You can ensure that the output is the same size as input by using padding.
You can view the size of the different layers in your network using the below command (https://www.mathworks.com/help/deeplearning/ref/analyzenetwork.html) :
analyzeNetwork(layers)
On using this command on your 'layers' variable, the output obtained is given below:
Note that the regressionoutput is not of the same length(1229) as the sequenceinput layer(1239). This is the reason why you are getting the error. To avoid this you can use "casual" padding in your 1D Convolution layer, which left pads the input to make the input and output sequence length equal. You can modify your "layers" variable as follows:
layers = [
sequenceInputLayer(numChannels_in,'MinLength', minLength)
convolution1dLayer(11, 96,Padding='causal')
fullyConnectedLayer(numChannels_out)
regressionLayer
];

その他の回答 (1 件)

SHromaneko
SHromaneko 2023 年 12 月 13 日
出来ました、ありがとうございます!!

カテゴリ

Help Center および File Exchangeイメージを使用した深層学習 についてさらに検索

製品


リリース

R2022a

Community Treasure Hunt

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

Start Hunting!