Contenido principal

multiplicationLayer

Capa de multiplicación

Descripción

Una capa de multiplicación multiplica entradas de múltiples capas de redes neuronales elemento por elemento.

Especifique el número de entradas a la capa cuando la cree. Las entradas de la capa tienen los nombres 'in1','in2',...,'inN', donde N es el número de entradas. Use los nombres de entradas cuando conecte o desconecte la capa usando connectLayers o disconnectLayers, respectivamente. El tamaño de las entradas de la capa de multiplicación debe ser el mismo en todas las dimensiones o el mismo en al menos una dimensión con otras dimensiones como dimensiones únicas.

Creación

Descripción

layer = multiplicationLayer(numInputs) crea una capa de multiplicación que multiplica numInputs entradas por elementos. Esta función también establece la propiedad NumInputs.

ejemplo

layer = multiplicationLayer(numInputs,'Name',name) también establece la propiedad Name.

ejemplo

Propiedades

expandir todo

Número de entradas a la capa, especificado como un entero positivo mayor que o igual a 2.

Las entradas tienen los nombres 'in1','in2',...,'inN', donde N es NumInputs. Por ejemplo, si NumInputs es 3, las entradas tienen los nombres 'in1','in2' y 'in3'. Use los nombres de entradas cuando conecte o desconecte la capa usando las funciones connectLayers o disconnectLayers.

Nombre de la capa, especificado como un vector de caracteres o un escalar de cadena. Para entradas en forma de arreglo Layer, las funciones trainnet y dlnetwork asignan automáticamente nombres a las capas sin nombre.

El objeto MultiplicationLayer almacena esta propiedad como un vector de caracteres.

Tipos de datos: char | string

Los nombres de las entradas, especificados como {'in1','in2',...,'inN'}, donde N es el número de entradas de la capa.

Tipos de datos: cell

Esta propiedad o parámetro es de solo lectura.

Número de salidas de la capa, almacenado como 1. Esta capa solo tiene una salida.

Tipos de datos: double

Esta propiedad o parámetro es de solo lectura.

Nombres de salida, almacenados como {'out'}. Esta capa solo tiene una salida.

Tipos de datos: cell

Ejemplos

contraer todo

Cree una capa de multiplicación con dos entradas y el nombre 'mul_1'.

mul = multiplicationLayer(2,'Name','mul_1')
mul = 
  MultiplicationLayer with properties:

          Name: 'mul_1'
     NumInputs: 2
    InputNames: {'in1'  'in2'}

   Learnable Parameters
    No properties.

   State Parameters
    No properties.

  Show all properties

Cree dos capas ReLU.

relu_1 = reluLayer('Name','relu_1');
relu_2 = reluLayer('Name','relu_2');

Cree un objeto dlnetwork.

net = dlnetwork;

Añádalas a la red y conéctelas con la capa de multiplicación. La capa de multiplicación multiplica las salidas de las capas ReLU.

net = addLayers(net,relu_1);
net = addLayers(net,relu_2);
net = addLayers(net,mul);

net = connectLayers(net,'relu_1','mul_1/in1');
net = connectLayers(net,'relu_2','mul_1/in2');

plot(net);

Figure contains an axes object. The axes object contains an object of type graphplot.

Algoritmos

expandir todo

Capacidades ampliadas

expandir todo

Generación de código C/C++
Genere código C y C++ mediante MATLAB® Coder™.

Generación de código de GPU
Genere código CUDA® para GPU NVIDIA® mediante GPU Coder™.

Historial de versiones

Introducido en R2020b

expandir todo