code: def test_hyperparams(self):
      # TODO(niboshi): The following optimizers do not pass this test
      # because their __init__ do not accept some hyperparameters.
      # The test should be fixed.
      if self.optimizer_impl in (
          chainer.optimizers.AdamW,
          chainer.optimizers.AMSGrad,
          chainer.optimizers.AdaBound,
          chainer.optimizers.AMSBound,
      ):
          raise unittest.SkipTest(
              "The optimizer is incompatible with this test"
          )
  
      self.create()
      default = self.optimizer.hyperparam.get_dict()
      for name, default_value in six.iteritems(default):
          self.create()
          self.assertEqual(self.get_hyperparam(name), default_value)
          new_value = default_value + 0.1
          self.create(**{name: new_value})
          self.assertEqual(self.get_hyperparam(name), new_value)
  
imports: import pickle
  import unittest
  import numpy
  import six
  import chainer
  from chainer import functions
  from chainer import optimizers
  from chainer import testing
label_desc: Use image node_id 4 for calling the TestOptimizerHyperparameter obj's underlying member method code with example usage: obj.test_hyperparams() without return types