привет всем, я столкнулся с этой ошибкой на своем CNN: (ожидается, что слой 5 будет иметь другой размер)

Я пытаюсь реализовать алгоритм CNN, который использовался на бумаге (Решение глубокой сети для предотвращения препятствий без модели) для Лэй Тай, Шаохуа Ли и Мин Лю; и когда я помещаю их спецификацию слоев CNN; Я получил следующую ошибку: при использовании nnet.cnn.layer.Layer›iInferSize (строка 266) уровень 5 должен иметь другой размер. если у кого-нибудь есть идея, что происходит, какой размер они имеют в виду? и почему я получил эту ошибку? Пожалуйста, дайте мне знать.

layers = [imageInputLayer([120 160 1],'Normalization','none');
          convolution2dLayer(5,32,'NumChannels',1);
          reluLayer();
          maxPooling2dLayer(2,'Stride',2);
         convolution2dLayer(5,32,'NumChannels',1);
         reluLayer();
          maxPooling2dLayer(2,'Stride',2);
          convolution2dLayer(5,64)
          reluLayer();
          maxPooling2dLayer(2,'Stride',2);
          fullyConnectedLayer(5);
          softmaxLayer
          classificationLayer()];

ПРИМЕЧАНИЕ. 

Matlabsolutions.com предоставляет последнюю Помощь по домашним заданиям MatLab, Помощь по заданию MatLab для студентов, инженеров и исследователей в различных отраслях, таких как ECE, EEE, CSE, Mechanical, Civil со 100% выходом. Код Matlab для BE, B.Tech ,ME,M.Tech, к.т.н. Ученые со 100% конфиденциальностью гарантированы. Получите проекты MATLAB с исходным кодом для обучения и исследований.

Ошибка находится в «NumChannels», она должна иметь такое же количество каналов, что и фильтры, используемые в слое свертки poir, поэтому правильный способ записи:

convolution2dLayer(5,32,'NumChannels',1);
          reluLayer();
          maxPooling2dLayer(2,'Stride',2);
         convolution2dLayer(5,32,'NumChannels', 32);
         reluLayer();
          maxPooling2dLayer(2,'Stride',2);
          convolution2dLayer(5,64)
          reluLayer();

СМОТРИТЕ ПОЛНЫЙ ОТВЕТ НАЖМИТЕ НА ССЫЛКУ