code: def testSVD_HasReasonableAccuracy_TF(self):
      model = _build_model()
  
      algorithm = svd.SVD(rank=16, update_freq=1, warmup_step=10)
      training_model = algorithm.optimize_model(model)
  
      _train_model(training_model)
  
      compressed_model = algorithm.compress_model(training_model)
  
      _, (x_test, y_test) = _get_dataset()
  
      loss_fn = tf.keras.losses.SparseCategoricalCrossentropy(
          from_logits=True
      )
  
      compressed_model.compile(
          optimizer="adam", loss=loss_fn, metrics=["accuracy"]
      )
  
      results = compressed_model.evaluate(x_test, y_test)
  
      self.assertGreater(results[1], 0.60)
  
file_path: model-optimization/tensorflow_model_optimization/python/core/common/keras/compression/algorithms/periodical_update_and_scheduling_test.py
imports: import os
  import tempfile
  import tensorflow
  from tensorflow_model_optimization.python.core.common.keras.compression.algorithms import periodical_update_and_scheduling
  from tensorflow_model_optimization.python.core.keras.testing import test_utils_mnist
label_desc: Use image node_id 2 for calling the FunctionalTest obj's underlying member method code with example usage: obj.testSVD_HasReasonableAccuracy_TF() without return types