Если вы создаете пользовательский слой глубокого обучения, то можете использовать checkLayer
функция, чтобы проверить, что слой действителен. Функция проверяет слои на валидность, совместимость с GPU, правильно определенные градиенты и совместимость генерации кода. Чтобы проверить, что слой действителен, выполните следующую команду:
checkLayer(layer,validInputSize,'ObservationDimension',dim)
layer
является образцом слоя, validInputSize
- вектор или массив ячеек, задающий допустимые входные размеры слоя, и dim
задает размерность наблюдений во входных данных слоя. Для больших размеров входного сигнала проверки градиента выполняются дольше. Чтобы ускорить тесты, укажите меньший допустимый размер входа.Проверьте валидность пользовательского слоя preluLayer
.
Задайте пользовательский слой PReLU. Чтобы создать этот слой, сохраните файл preluLayer.m
в текущей папке.
Создайте образец слоя и проверьте, что он действителен checkLayer
. Установите допустимый размер входного сигнала, равный типовому размеру единственного входа наблюдения для слоя. Для одного входа слой ожидает наблюдения размера h-на-w-на-c, где h, w и c являются высотой, шириной и количеством каналов предыдущего выходного слоя, соответственно.
Задайте validInputSize
как типовой размер массива входа.
layer = preluLayer(20,'prelu');
validInputSize = [5 5 20];
checkLayer(layer,validInputSize)
Skipping multi-observation tests. To enable tests with multiple observations, specify the 'ObservationDimension' option. For 2-D image data, set 'ObservationDimension' to 4. For 3-D image data, set 'ObservationDimension' to 5. For sequence data, set 'ObservationDimension' to 2. Skipping GPU tests. No compatible GPU device found. Skipping code generation compatibility tests. To check validity of the layer for code generation, specify the 'CheckCodegenCompatibility' and 'ObservationDimension' options. Running nnet.checklayer.TestLayerWithoutBackward ......... Done nnet.checklayer.TestLayerWithoutBackward __________ Test Summary: 9 Passed, 0 Failed, 0 Incomplete, 13 Skipped. Time elapsed: 0.12426 seconds.
Результаты показывают количество пройденных, неудачных и пропущенных тестов. Если вы не задаете 'ObservationsDimension'
опция, или не имеет графический процессор, тогда функция пропускает соответствующие тесты.
Проверяйте несколько наблюдений
Для входных входов нескольких наблюдений слой ожидает массив наблюдений размера h-на-w-на-c-на-N, где h, w и c - высота, ширина и количество каналов, соответственно, и N - количество наблюдений.
Чтобы проверить валидность слоя для нескольких наблюдений, задайте типичный размер наблюдения и установите 'ObservationDimension'
по 4.
layer = preluLayer(20,'prelu'); validInputSize = [5 5 20]; checkLayer(layer,validInputSize,'ObservationDimension',4)
Skipping GPU tests. No compatible GPU device found. Skipping code generation compatibility tests. To check validity of the layer for code generation, specify the 'CheckCodegenCompatibility' and 'ObservationDimension' options. Running nnet.checklayer.TestLayerWithoutBackward .......... ... Done nnet.checklayer.TestLayerWithoutBackward __________ Test Summary: 13 Passed, 0 Failed, 0 Incomplete, 9 Skipped. Time elapsed: 0.047134 seconds.
В этом случае функция не обнаруживает никаких проблем со слоем.
checkLayer
функция проверяет валидность пользовательского слоя путем выполнения ряда тестов.
checkLayer
функция использует эти тесты, чтобы проверить валидность пользовательских промежуточных слоев (слоев типа nnet.layer.Layer
).
Тест | Описание |
---|---|
functionSyntaxesAreCorrect | Синтаксисы функций слоя заданы правильно. |
predictDoesNotError | predict не ошибается. |
forwardDoesNotError | Когда задано, |
forwardPredictAreConsistentInSize | Когда |
backwardDoesNotError | Когда задано, backward не ошибается. |
backwardIsConsistentInSize | Когда
|
predictIsConsistentInType | Выходные выходы |
forwardIsConsistentInType | Когда |
backwardIsConsistentInType | Когда |
gradientsAreNumericallyCorrect | Когда backward задан градиент, вычисленный в backward согласуются с числовыми градиентами. |
backwardPropagationDoesNotError | Когда backward не задан, производные могут быть вычислены с помощью автоматической дифференциации. |
codegenPragmaDefinedInClassDef | Прагма- "%#codegen" для генерации кода указано в файле класса. |
checkForSupportedLayerPropertiesForCodegen | Свойства слоя поддерживают генерацию кода. |
predictIsValidForCodeGeneration | predict действителен для генерации кода. |
Тесты predictIsConsistentInType
, forwardIsConsistentInType
, и backwardIsConsistentInType
также проверьте совместимость с GPU. Чтобы выполнить функции слоя на графическом процессоре, функции должны поддерживать входы и выходы типа gpuArray
с базовым типом данных single
.
checkLayer
функция использует эти тесты, чтобы проверить валидность пользовательских выходных слоев (слоев типа nnet.layer.ClassificationLayer
или nnet.layer.RegressionLayer
).
Тест | Описание |
---|---|
forwardLossDoesNotError | forwardLoss не ошибается. |
backwardLossDoesNotError | backwardLoss не ошибается. |
forwardLossIsScalar | Область выхода forwardLoss скаляром. |
backwardLossIsConsistentInSize | Когда backwardLoss задан, выход backwardLoss согласуется в размере: dLdY - тот же размер, что и предсказания Y . |
forwardLossIsConsistentInType | Область выхода |
backwardLossIsConsistentInType | Когда |
gradientsAreNumericallyCorrect | Когда backwardLoss задан градиент, вычисленный в backwardLoss численно верны. |
backwardPropagationDoesNotError | Когда backwardLoss не задан, производные могут быть вычислены с помощью автоматической дифференциации. |
The forwardLossIsConsistentInType
и backwardLossIsConsistentInType
тесты также проверяют совместимость с GPU. Чтобы выполнить функции слоя на графическом процессоре, функции должны поддерживать входы и выходы типа gpuArray
с базовым типом данных single
.
Чтобы проверить валидность слоя, checkLayer
функция генерирует данные в зависимости от типа слоя:
Тип слоя | Описание сгенерированных данных |
---|---|
Промежуточное звено | Значения в области значений [-1,1] |
Выход регрессии | Предсказания и цели со значениями в области значений [-1,1] |
Результат классификации | Предсказания со значениями в области значений [0,1]. Если вы задаете Если вы не задаете |
Чтобы проверить наличие нескольких наблюдений, задайте размерность наблюдения с помощью 'ObservationDimension'
Пара "имя-значение". Если вы задаете размерность наблюдения, то checkLayer
функция проверяет, что функции слоя действительны, используя сгенерированные данные с мини-пакетами размера 1 и 2. Если вы не задаете эту пару "имя-значение", то функция пропускает тесты, которые проверяют, что функции слоя действительны для нескольких наблюдений.
Если тест не пройден, когда вы используете checkLayer
, затем функция обеспечивает тестовую диагностику и диагностику в среде. Тестовая диагностика выделяет все проблемы, обнаруженные с слоем. В диагностике в среде представлена более подробная информация.
Тестовое functionSyntaxesAreCorrect
проверяет, что функции слоя имеют правильно определенные синтаксисы.
Тестовая диагностика | Описание | Возможное решение |
---|---|---|
Incorrect number of input arguments for 'predict' in Layer . | Синтаксис predict функция не соответствует количеству входов слоя. | Задайте правильное количество входа и выходных аргументов в Синтаксис для Совет Если количество входов в Совет Если у пользовательского слоя есть |
Incorrect number of output arguments for 'predict' in Layer | Синтаксис predict функция не соответствует количеству выходов слоя. | |
Incorrect number of input arguments for 'forward' in Layer | Синтаксис необязательного forward функция не соответствует количеству входов слоя. | Задайте правильное количество входа и выходных аргументов в Синтаксис для Совет Если количество входов в Совет Если у пользовательского слоя есть |
Incorrect number of output arguments for 'forward' in Layer | Синтаксис необязательного forward функция не соответствует количеству выходов слоя. | |
Incorrect number of input arguments for 'backward' in Layer | Синтаксис необязательного backward функция не соответствует количеству входов и выходов слоя. | Задайте правильное количество входа и выходных аргументов в Синтаксис для
Для выходов Совет Если количество входов в Если количество выходов может варьироваться, используйте Совет Если функции слоя forward поддержки |
Incorrect number of output arguments for 'backward' in Layer | Синтаксис необязательного backward функция не соответствует количеству выходов слоя. |
Для слоев с несколькими входами или выходами необходимо задать значения свойств слоя NumInputs
(или в качестве альтернативы InputNames
) и NumOutputs
(или в качестве альтернативы OutputNames
) в функции конструктора слоев, соответственно.
checkLayer
функция проверяет, что функции слоя действительны для одиночных и нескольких наблюдений. Чтобы проверить наличие нескольких наблюдений, задайте размерность наблюдения с помощью 'ObservationDimension'
Пара "имя-значение". Если вы задаете размерность наблюдения, то checkLayer
функция проверяет, что функции слоя действительны, используя сгенерированные данные с мини-пакетами размера 1 и 2. Если вы не задаете эту пару "имя-значение", то функция пропускает тесты, которые проверяют, что функции слоя действительны для нескольких наблюдений.
Тестовая диагностика | Описание | Возможное решение |
---|---|---|
Skipping multi-observation tests. To enable checks with multiple observations, specify the 'ObservationDimension' parameter in checkLayer . | Если вы не задаете 'ObservationDimension' параметр в checkLayer , затем функция пропускает тесты, которые проверяют данные с несколькими наблюдениями. | Используйте команду Для получения дополнительной информации смотрите Слой Входа Sizes. |
Эти тесты проверяют, что слои не ошибаются при передаче входных данных допустимого размера.
Промежуточные слои. Тесты predictDoesNotError
, forwardDoesNotError
, и backwardDoesNotError
проверяйте, что функции слоя не ошибаются при передаче входов допустимого размера. Если вы задаете размерность наблюдения, то функция проверяет слой как на одно наблюдение, так и на несколько наблюдений.
Тестовая диагностика | Описание | Возможное решение |
---|---|---|
The function 'predict' threw an error: | The predict ошибки функции при передаче данных о размере validInputSize . | Устраните ошибку, описанную в Совет Если функции слоя forward поддержки |
The function 'forward' threw an error: | Необязательный forward ошибки функции при передаче данных о размере validInputSize . | |
The function 'backward' threw an error: | Необязательный backward ошибки функции при прохождении выхода predict . |
Выходные слои. Тесты forwardLossDoesNotError
и backwardLossDoesNotError
проверяйте, что функции слоя не ошибаются при передаче входов допустимого размера. Если вы задаете размерность наблюдения, то функция проверяет слой как на одно наблюдение, так и на несколько наблюдений.
Тестовая диагностика | Описание | Возможное решение |
---|---|---|
The function 'forwardLoss' threw an error: | The forwardLoss ошибки функции при передаче данных о размере validInputSize . | Устраните ошибку, описанную в Совет Если на |
The function 'backwardLoss' threw an error: | Необязательный backwardLoss ошибки функции при передаче данных о размере validInputSize . |
Эти тесты проверяют, что выходы функции слоя согласованы в размере.
Промежуточные слои. Тестовое backwardIsConsistentInSize
проверяет, что backward
функция выводит производные от правильного размера.
Синтаксис для backward
является [dLdX1,…,dLdXn,dLdW1,…,dLdWk] = backward(layer,X1,…,Xn,Z1,…,Zm,dLdZ1,…,dLdZm,memory)
, где:
X1,…,Xn
являются ли n
входы слоя
Z1,…,Zm
являются ли m
выходы передних функций слоя
dLdZ1,…,dLdZm
являются ли градиенты назад распространены от следующего слоя
memory
- выход памяти forward
если forward
определяется, в противном случае memory
является []
.
Для выходов dLdX1,…,dLdXn
являются производными от потерь относительно входов слоя и dLdW1,…,dLdWk
являются производными от потерь по отношению к k
настраиваемые параметры. Чтобы уменьшить использование памяти путем предотвращения сохранения неиспользованных переменных между прямым и обратным проходом, замените соответствующие входные параметры на ~
.
Совет
Если количество входов в backward
может варьироваться, затем использовать varargin
вместо входных параметров после layer
. В этом случае varargin
- массив ячеек входных входов, где varargin{i}
соответствует Xi
для i
=1, …, NumInputs
, varargin{NumInputs+j}
и varargin{NumInputs+NumOutputs+j}
соответствуют Zj
и dLdZj
, соответственно, для j
=1, …, NumOutputs
, и varargin{end}
соответствует memory
.
Если количество выходов может варьироваться, используйте varargout
вместо выходных аргументов. В этом случае varargout
- массив ячеек выходов, где varargout{i}
соответствует dLdXi
для i
=1, …, NumInputs
и varargout{NumInputs+t}
соответствует dLdWt
для t
=1, …, k
, где k
количество настраиваемых параметров.
Производные dLdX1
, …, dLdXn
должен быть того же размера, что и соответствующие входы слоя, и dLdW1,…,dLdWk
должен быть таким же размером, как и соответствующие настраиваемые параметры. Размеры должны быть одинаковыми для входных данных с одним и несколькими наблюдениями.
Тестовая диагностика | Описание | Возможное решение |
---|---|---|
Incorrect size of 'dLdX' for 'backward' . | Производные потерь относительно входов слоя должны быть такого же размера, как и соответствующие входы слоя. | Верните производные |
Incorrect size of the derivative of the loss with respect to the input 'in1' for 'backward' | ||
The size of 'Z' returned from 'forward' must be the same as for 'predict' . | Выходные выходы predict должен быть такого же размера, как и соответствующие выходы forward . | Верните выходы |
Incorrect size of the derivative of the loss with respect to 'W' for 'backward' . | Производные потерь относительно настраиваемых параметров должны быть такими же размерами, как и соответствующие настраиваемые параметры. | Верните производные |
Совет
Если функции слоя forward поддержки dlarray
объекты, затем программное обеспечение автоматически определяет обратную функцию, и вам не нужно задавать backward
функция. Список функций, поддерживающих dlarray
объекты, см. Список функций с поддержкой dlarray.
Выходные слои. Тестовое forwardLossIsScalar
проверяет, что выходы forwardLoss
функция скаляром. Когда backwardLoss
задана функция, тестовое backwardLossIsConsistentInSize
проверяет, что выходы forwardLoss
и backwardLoss
имеют правильный размер.
Синтаксис для forwardLoss
является loss = forwardLoss(layer, Y, T)
. Область входа Y
соответствует предсказаниям, сделанным сетью. Эти предсказания являются выходами предыдущего слоя. Область входа T
соответствует учебным целям. Область выхода loss
это потеря между Y
и T
согласно заданной функции потерь. Область выхода loss
должно быть скалярным.
Если на forwardLoss
функция поддерживает dlarray
объекты, затем программное обеспечение автоматически определяет функцию обратных потерь, и вам не нужно задавать backwardLoss
функция. Список функций, поддерживающих dlarray
объекты, см. Список функций с поддержкой dlarray.
Синтаксис для backwardLoss
является dLdY = backwardLoss(layer, Y, T)
. Область входа Y
содержит предсказания, сделанные сетью и T
содержит цели обучения. Область выхода dLdY
является производной от потерь относительно предсказаний Y
. Область выхода dLdY
должен быть такого же размера, как и входной параметр слоя Y
.
Тестовая диагностика | Описание | Возможное решение |
---|---|---|
Incorrect size of 'loss' for 'forwardLoss' . | Область выхода loss от forwardLoss должно быть скаляром. | Верните выход |
Incorrect size of the derivative of loss 'dLdY' for 'backwardLoss' . | Когда backwardLoss задано, что производные потерь по отношению к входу слоя должны быть такого же размера, как и входные параметры слоя. | Возврат производной Если на |
Эти тесты проверяют, что выходы функции слоя согласованы по типу и что функции уровня совместимы с графическим процессором.
Если функции слоя forward полностью поддерживают dlarray
объекты, тогда слой совместим с графическим процессором. В противном случае, чтобы быть совместимым с графический процессор, функции слоя должны поддерживать входы и выходные выходы возврата типа gpuArray
(Parallel Computing Toolbox).
Многие MATLAB® поддержка встроенных функций gpuArray
(Parallel Computing Toolbox) и dlarray
входные параметры. Список функций, поддерживающих dlarray
объекты, см. Список функций с поддержкой dlarray. Список функций, которые выполняются на графическом процессоре, см. в разделе Запуск функций MATLAB на графическом процессоре (Parallel Computing Toolbox). Для использования графический процессор для глубокого обучения необходимо иметь также поддерживаемое графический процессор. Для получения информации о поддерживаемых устройствах смотрите Поддержку GPU by Release (Parallel Computing Toolbox). Для получения дополнительной информации о работе с графическими процессорами в MATLAB, смотрите GPU Computing в MATLAB (Parallel Computing Toolbox).
Промежуточные слои. Тесты predictIsConsistentInType
, forwardIsConsistentInType
, и backwardIsConsistentInType
проверяйте, что функции слоя выводят переменные правильного типа данных. Тесты проверяют, что функции слоя возвращают согласованные типы данных при заданных входах типов данных single
, double
, и gpuArray
с базовыми типами single
или double
.
Совет
Если вы предварительно распределяете массивы, используя такие функции, как zeros
Затем необходимо убедиться, что типы данных этих массивов соответствуют входам функции слоя. Чтобы создать массив нулей того совпадающий тип данных, что и другой массив, используйте 'like'
опция zeros
. Для примера инициализировать массив нулей размера sz
с тем совпадающим типом данных, что и массив X
, использовать Z = zeros(sz,'like',X)
.
Тестовая диагностика | Описание | Возможное решение |
---|---|---|
Incorrect type of 'Z' for 'predict' . | Типы выходов Z1,…,Zm от predict функция должна соответствовать входам X1,…,Xn . | Верните выходы |
Incorrect type of output 'out1' for 'predict' . | ||
Incorrect type of 'Z' for 'forward' . | Типы выходов Z1,…,Zm необязательного forward функция должна соответствовать входам X1,…,Xn . | |
Incorrect type of output 'out1' for 'forward' . | ||
Incorrect type of 'dLdX' for 'backward' . | Типы производных dLdX1,…,dLdXn необязательного backward функция должна соответствовать входам X1,…,Xn . | Верните производные |
Incorrect type of the derivative of the loss with respect to the input 'in1' for 'backward' . | ||
Incorrect type of the derivative of loss with respect to 'W' for 'backward' . | Тип производной от потери настраиваемых параметров должен соответствовать соответствующим настраиваемым параметрам. | Для каждого настраиваемого параметра верните производную с тем же типом, что и соответствующий настраиваемый параметр. |
Совет
Если функции слоя forward поддержки dlarray
объекты, затем программное обеспечение автоматически определяет обратную функцию, и вам не нужно задавать backward
функция. Список функций, поддерживающих dlarray
объекты, см. Список функций с поддержкой dlarray.
Выходные слои. Тесты forwardLossIsConsistentInType
и backwardLossIsConsistentInType
проверяйте, что функции слоя выводят переменные правильного типа данных. Тесты проверяют, чтобы слои возвращали согласованные типы данных при заданных входах типов данных single
, double
, и gpuArray
с базовыми типами single
или double
.
Тестовая диагностика | Описание | Возможное решение |
---|---|---|
Incorrect type of 'loss' for 'forwardLoss' . | Тип выхода loss от forwardLoss функция должна соответствовать входу Y . | Возврат |
Incorrect type of the derivative of loss 'dLdY' for 'backwardLoss' . | Тип выхода dLdY необязательного backwardLoss функция должна соответствовать входу Y . | Возврат |
Совет
Если на forwardLoss
функция поддерживает dlarray
объекты, затем программное обеспечение автоматически определяет функцию обратных потерь, и вам не нужно задавать backwardLoss
функция. Список функций, поддерживающих dlarray
объекты, см. Список функций с поддержкой dlarray.
Тестовое gradientsAreNumericallyCorrect
проверяет, что градиенты, вычисленные функциями слоя, численно верны. Тестовое backwardPropagationDoesNotError
проверяет, что производные могут быть вычислены с помощью автоматической дифференциации.
Промежуточные слои. Когда необязательный backward
функция не задана, тест backwardPropagationDoesNotError
проверяет, что производные могут быть вычислены с помощью автоматической дифференциации. Когда необязательный backward
задана функция, тестовое gradientsAreNumericallyCorrect
проверяет, что градиенты, вычисленные в backward
численно верны.
Тестовая диагностика | Описание | Возможное решение |
---|---|---|
Expected a dlarray with no dimension labels, but instead found labels . | Когда необязательный backward функция не задана, передние функции слоя должны выводить dlarray объекты без меток размерностей. | Убедитесь, что любой dlarray объекты, созданные в передних функциях слоя, не содержат меток размерностей. |
Unable to backward propagate through the layer. Check that the 'forward' function fully supports automatic differentiation. Alternatively, implement the 'backward' function manually . | Одно или несколько из следующих:
| Проверяйте, что передние функции поддерживают Проверяйте, что производные входы Кроме того, задайте пользовательскую обратную функцию путем создания функции с именем |
Unable to backward propagate through the layer. Check that the 'predict' function fully supports automatic differentiation. Alternatively, implement the 'backward' function manually . | ||
The derivative 'dLdX' for 'backward' is inconsistent with the numerical gradient . | Одно или несколько из следующих:
| Если функции слоя forward поддержки Проверяйте, что производные в Если производные вычислены правильно, то в Если абсолютные и относительные погрешности находятся в пределах допустимого запаса от допуска, то можно игнорировать эту тестовую диагностику. |
The derivative of the loss with respect to the input 'in1' for 'backward' is inconsistent with the numerical gradient . | ||
The derivative of loss with respect to 'W' for 'backward' is inconsistent with the numerical gradient . |
Совет
Если функции слоя forward поддержки dlarray
объекты, затем программное обеспечение автоматически определяет обратную функцию, и вам не нужно задавать backward
функция. Список функций, поддерживающих dlarray
объекты, см. Список функций с поддержкой dlarray.
Выходные слои. Когда необязательный backwardLoss
функция не задана, тест backwardPropagationDoesNotError
проверяет, что производные могут быть вычислены с помощью автоматической дифференциации. Когда необязательный backwardLoss
задана функция, тестовое gradientsAreNumericallyCorrect
проверяет, что градиенты, вычисленные в backwardLoss
численно верны.
Тестовая диагностика | Описание | Возможное решение |
---|---|---|
Expected a dlarray with no dimension labels, but instead found labels | Когда необязательный backwardLoss функция не задана, forwardLoss функция должна выводить dlarray объекты без меток размерностей. | Убедитесь, что любой dlarray объекты, созданные в forwardLoss функция не содержит меток размерностей. |
Unable to backward propagate through the layer. Check that the 'forwardLoss' function fully supports automatic differentiation. Alternatively, implement the 'backwardLoss' function manually | Одно или несколько из следующих:
| Проверяйте, что Проверяйте, что производные входы Кроме того, задайте пользовательскую функцию обратных потерь путем создания функции с именем |
The derivative 'dLdY' for 'backwardLoss' is inconsistent with the numerical gradient . | Одно или несколько из следующих:
| Проверяйте, что производные в Если производные вычислены правильно, то в Если абсолютные и относительные погрешности находятся в пределах допустимого запаса от допуска, то можно игнорировать эту тестовую диагностику. |
Совет
Если на forwardLoss
функция поддерживает dlarray
объекты, затем программное обеспечение автоматически определяет функцию обратных потерь, и вам не нужно задавать backwardLoss
функция. Список функций, поддерживающих dlarray
объекты, см. Список функций с поддержкой dlarray.
Если вы задаете 'CheckCodegenCompatibility'
опция для true
, затем checkLayer
функция проверяет слой на совместимость генерации кода.
Тестовое codegenPragmaDefinedInClassDef
проверяет, содержит ли определение слоя прагму генерации кода %#codegen
. Тестовое checkForSupportedLayerPropertiesForCodegen
проверяет, что свойства слоя поддерживают генерацию кода. Тестовое predictIsValidForCodegeneration
проверяет, что выходы predict
являются последовательными по размерности и размеру партии.
Генерация кода поддерживает промежуточные слои только с 2-D входом изображения.
Тестовая диагностика | Описание | Возможное решение |
---|---|---|
Specify '%#codegen' in the class definition of custom layer | Определение слоя не включает прагму "%#codegen" для генерации кода. |
Добавьте |
Nonscalar layer properties must be type single or double or character array for custom layer | Слой содержит некалярные свойства другого типа, кроме одинарного, двойного или символьного массива. | Преобразуйте некалярные свойства в использование представления типа single, double или символьный массив. Например, преобразуйте категориальный массив в массив целых чисел типа |
Scalar layer properties must be numeric, logical, or string for custom layer | Слой содержит скалярные свойства типа, отличного от числового, логического или строкового. | Преобразуйте скалярные свойства в использование числового представления или представления типа логического или строкового. Например, преобразуйте категориальный скаляр в целое число типа |
For code generation, 'Z' must have the same number of dimensions as the layer input . | Количество размерностей из выхода | В |
For code generation, 'Z' must have the same batch size as the layer input . | Размер пакета выхода | В |