Anomaly detection using Variational Autoencode​r(VAE)のサンプ​ルコードエラーについ​て

2 vues (au cours des 30 derniers jours)
和神 水ノ江
和神 水ノ江 le 28 Juin 2021
Commenté : 和神 水ノ江 le 30 Juin 2021
こちらのサンプルコードを動かそうとしています。
最初の画像サイズの部分に関しましては入力画像に応じて変更できるように下記のように書き換えました。
Imgsize = size(readimage(imdsTrain,1)); % 画像サイズ
BlockSize = round(Imgsize(1:2)./10);% ネットワークの入力サイズ
その後実行を続けていくとモデルの学習の部分で下記のようなエラーが返されます。
配列のサイズがこの演算に適合しません。
エラー: deep.internal.recording.operations.MinusBroadcastOp/forward (32)
x = x - y;
エラー: - (39)
zdata = matlab.lang.internal.move(xdata) - matlab.lang.internal.move(ydata);
エラー: VAEmodel_ver2>ELBOloss (188)
squares = 0.5*(xPred-x).^2;
エラー: VAEmodel_ver2>modelGradients (165)
loss = ELBOloss(x, xPred, zMean, zLogvar);
エラー: deep.internal.dlfeval (18)
[varargout{1:nout}] = fun(x{:});
エラー: dlfeval (41)
[varargout{1:nout}] = deep.internal.dlfeval(fun,varargin{:});
関連ドキュメンテーション
こちらに関する解決方法はありますでしょうか。
宜しくお願い致します。

Réponse acceptée

Hernia Baby
Hernia Baby le 28 Juin 2021
BlockSize = round(Imgsize(1:2)./10);
BlockSizeが [72 128] となっており、入力サイズがあってないのだと思います。
この場合、Blocksize = Blocksize * 2;で解決します。
  3 commentaires
Hernia Baby
Hernia Baby le 29 Juin 2021
入力層と隠れ層の一部を自在なサイズに変更したいということでしょうか? 個人的には入力層のサイズに合わせた方がいいかなあと思いました。 imresize を参照ください。今回、スマホでコメントしていますので、コードそのものを確認する場合は少し時間がかかります。
和神 水ノ江
和神 水ノ江 le 30 Juin 2021
ご回答・ご提案ありがとうございます。
意図としましてはおっしゃられている内容で合っています。
ご提案していただきましたimresizeで対応してみようと思います。
ありがとうございました。

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur MATLAB 入門 dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!