class_docstr: Parallel linear.
  
  This is equivalent to n separate linears applied in parallel to n inputs. It
  takes an input of shape [num_linears, batch_size, input_size] and returns an
  output of shape [num_linears, batch_size, output_size].
  
  It uses a single batched matmul which is more efficient than stacking separate
  snt.Linear layers. This is implemented using `num_linear`s first to avoid the
  need for transposes in order to make it efficient when stacking these.
code: def __call__(self, inputs: tf.Tensor) -> tf.Tensor:
      self._initialize(inputs)
  
      outputs = tf.matmul(inputs, self.w)
      if self.with_bias:
          outputs = tf.add(outputs, self.b)
      return outputs
  
file_path: sonnet/sonnet/src/parallel_linear.py
imports: import math
  from typing import Optional
  from sonnet.src import base
  from sonnet.src import initializers
  from sonnet.src import once
  from sonnet.src import utils
  import tensorflow
label_desc: Use image node_id 3 for calling the ParallelLinears obj's underlying member method code with example usage: obj.__call__(inputs) and returns: outputs