class_docstr: Tests for modules in nn_layers.py.
class_docstr_tok: ["Tests","for","modules","in","nn_layers.py","."]
docstr: Test the SqueezeAndExcite module.
docstr_tok: ["Test","the","SqueezeAndExcite","module","."]
code: def test_squeeze_and_excite(self, reduction_factor):
      """Test the SqueezeAndExcite module."""
      rng = random.PRNGKey(0)
      inputs_shape = (16, 24, 32, 64)
      inputs = jnp.array(np.random.normal(size=inputs_shape))
  
      squeeze_and_excite_def = nn_layers.SqueezeAndExcite(
          reduction_factor=reduction_factor
      )
  
      # test output shape
      outputs, _ = squeeze_and_excite_def.init_with_output(rng, inputs)
      self.assertEqual(outputs.shape, inputs_shape)
  
file_path: scenic/scenic/model_lib/layers/tests/test_nn_layers.py
imports: from absl.testing import absltest
  from absl.testing import parameterized
  from jax import random
  import jax.numpy
  import numpy
  from scenic.model_lib.layers import nn_layers
label_desc: Use image node_id 2 for calling the NNLayersTest obj's underlying member method code with example usage: obj.test_squeeze_and_excite(reduction_factor) without return types