# NetMapOperator

NetMapOperator[net]

represents a net in which net is mapped over a sequence of inputs to give a sequence of outputs.

# Details and Options

• NetMapOperator[net] represents a net that takes a sequence of tensors and outputs a sequence of the same length.
• NetMapOperator[net] accepts a single input sequence {x1,x2,,xn} and computes {net[x1],net[x2],,net[xn]}.
• In NetMapOperator[net], net should take exactly one input and produce exactly one output.
• NetExtract can be used to extract net from a NetMapOperator[net] object.
• The input and output ports of the net represented by NetMapOperator are:
•  "Input" a sequence of tensors "Output" a sequence of tensors
• NetMapOperator[net] can be seen as allowing a form of weight sharing between multiple copies of net, one for each sequence element that is being mapped.
• NetMapOperator[net,"Input"->shape] allows the shape of the input to be specified. Possible forms for shape are:
•  NetEncoder[…] encoder producing a sequence of vectors {len,p} sequence of len length-p vectors {len,Automatic} sequence of len vectors whose length is inferred {"Varying",p} varying number of vectors each of length p {"Varying",Automatic} varying number of vectors each of inferred length {lenspec,d1,d2,…} sequence of tensors of dimensions d1×d2×…

# Examples

open allclose all

## Basic Examples(2)

Create a NetMapOperator that maps a LinearLayer over a sequence:

 In[1]:=
 Out[1]=

Create a NetMapOperator that maps a SummationLayer over a sequence:

 In[1]:=
 Out[1]=

Apply the layer to a sequence of vectors:

 In[2]:=
 Out[2]=

The layer threads across a batch of sequences of different lengths:

 In[3]:=
 Out[3]=

# See Also

Introduced in 2017
(11.1)