class_docstr: An object representing a shape for a multiArray feature in a
  neural network. Valid shapes must have have only the Channel [C]
  shape or the Channel, Height and Width [C, H, W] shapes populated
class_docstr_tok: ["An","object","representing","a","shape","for","a","multiArray","feature","in","a","neural","network",".","Valid","shapes","must","have","have","only","the","Channel","[","C","]","shape","or","the","Channel",",","Height","and","Width","[","C",",","H",",","W","]","shapes","populated"]
code: def _validate_multiarray_shape(self):
      num_dims = len([v for v in self._shape.values() if v])
      if num_dims != 1 and num_dims != 3:
          raise Exception(
              "For neural networks, shape must be of length 1 or 3"
              ", representing input shape [C] or [C,H,W], respectively"
          )
  
      if num_dims == 1:
          if not self._shape["C"]:
              raise Exception("Channel Shape not specified")
  
imports: from ..utils import _get_feature, _get_nn_layers, _get_input_names
  from ...None import _MINIMUM_FLEXIBLE_SHAPES_SPEC_VERSION
  from ...None import _MINIMUM_NDARRAY_SPEC_VERSION
label_desc: Use image node_id 5 for calling the NeuralNetworkMultiArrayShape obj's underlying member method code with example usage: obj._validate_multiarray_shape() without return types