code: def test_mixture_of_experts_architecture(self):
      network = architectures.mixture_of_experts(
          [
              layers.join(
                  layers.Input(10),
                  layers.Relu(5),
              ),
              layers.join(
                  layers.Input(10),
                  layers.Relu(20),
                  layers.Relu(5),
              ),
              layers.join(
                  layers.Input(10),
                  layers.Relu(30),
                  layers.Relu(40),
                  layers.Relu(5),
              ),
          ]
      )
  
      self.assertEqual(len(network), 12)
      self.assertShapesEqual(network.input_shape, (None, 10))
      self.assertShapesEqual(network.output_shape, (None, 5))
  
      random_input = asfloat(np.random.random((3, 10)))
      prediction = self.eval(network.output(random_input))
  
      self.assertEqual(prediction.shape, (3, 5))
  
file_path: neupy/tests/architectures/test_mixtures_of_experts.py
imports: import copy
  import numpy
  from sklearn import datasets, preprocessing, model_selection
  from neupy.utils import asfloat
  from neupy.exceptions import LayerConnectionError
  from neupy.algorithms.gd import objectives
  from neupy import algorithms, layers, architectures
  from base import BaseTestCase
label_desc: Use image node_id 8 for calling the MixtureOfExpertsTestCase obj's underlying member method code with example usage: obj.test_mixture_of_experts_architecture() without return types