code: def test_save_restore(self):
      import os
  
      self.model.fit_eval(
          data=(self.x_train, self.y_train),
          validation_data=(self.x_val, self.y_val),
          **self.config,
      )
      y_pred = self.model.predict(self.x_test)
      assert y_pred.shape == (
          self.x_test.shape[0],
          self.y_train.shape[1],
      )
      dirname = "/tmp"
      restored_model = MTNetKeras()
      ckpt = os.path.join(dirname, "mtnet.ckpt")
      self.model.save(checkpoint_file=ckpt)
      restored_model.restore(checkpoint_file=ckpt)
      predict_after = restored_model.predict(self.x_test)
      assert_array_almost_equal(
          y_pred, predict_after, decimal=2
      ), "Prediction values are not the same after restore: " "predict before is {}, and predict after is {}".format(
          y_pred, predict_after
      )
      restored_model.fit_eval((self.x_train, self.y_train), epochs=1)
      restored_model.evaluate(self.x_val, self.y_val)
      os.remove(ckpt)
  
file_path: analytics-zoo/pyzoo/test/zoo/chronos/model/test_mtnet.py
imports: import shutil
  import pytest
  from test.zoo.pipeline.utils.test_utils import ZooTestCase
  from zoo.chronos.model.MTNet_keras import MTNetKeras
  from zoo.chronos.autots.deprecated.feature.time_sequence import TimeSequenceFeatureTransformer
  import pandas
  import numpy
  import tensorflow
  from numpy.testing import assert_array_almost_equal
label_desc: Use image node_id 5 for calling the TestMTNetKeras obj's underlying member method code with example usage: obj.test_save_restore() without return types