text: Title: 'WarmUp' Error
  Body: Upon training AutoKeras `TimeseriesForecaster` it will run for a few trials and then suddenly give this error.
  
  `TypeError: float() argument must be a string or a number, not 'WarmUp'`
  
  I am using:
  `AutoKeras 1.0.14`
  `Tensorflow 2.5.0`
  on a windows 10 machine.
  
  This error also comes on different classifiers.
  
  The full error mentions something about callbacks and I am using both the EarlyStopping and ReduceLROnPlateu callbacks and so I assume there is a conflict somewhere
  
  Full error:
  `TypeError                                 Traceback (most recent call last)
  <timed eval> in <module>
  
  ~\anaconda3\lib\site-packages\autokeras\tasks\time_series_forecaster.py in fit(self, x, y, validation_split, validation_data, **kwargs)
      265                 [keras.Model.fit](https://www.tensorflow.org/api_docs/python/tf/keras/Model#fit).
      266         """
  --> 267         super().fit(
      268             x=x,
      269             y=y,
  
  ~\anaconda3\lib\site-packages\autokeras\tasks\time_series_forecaster.py in fit(self, x, y, epochs, callbacks, validation_split, validation_data, **kwargs)
       86             validation_data = x_val, y_val
       87 
  ---> 88         super().fit(
       89             x=x[: self.train_len],
       90             y=y[self.lookback - 1 :],
  
  ~\anaconda3\lib\site-packages\autokeras\tasks\structured_data.py in fit(self, x, y, epochs, callbacks, validation_split, validation_data, **kwargs)
      132         self.check_in_fit(x)
      133 
  --> 134         super().fit(
      135             x=x,
      136             y=y,
  
  ~\anaconda3\lib\site-packages\autokeras\auto_model.py in fit(self, x, y, batch_size, epochs, callbacks, validation_split, validation_data, verbose, **kwargs)
      276             )
      277 
  --> 278         self.tuner.search(
      279             x=dataset,
      280             epochs=epochs,
  
  ~\anaconda3\lib\site-packages\autokeras\engine\tuner.py in search(self, epochs, callbacks, validation_split, verbose, **fit_kwargs)
      186         self.oracle.update_space(hp)
      187 
  --> 188         super().search(
      189             epochs=epochs, callbacks=new_callbacks, verbose=verbose, **fit_kwargs
      190         )
  
  ~\anaconda3\lib\site-packages\kerastuner\engine\base_tuner.py in search(self, *fit_args, **fit_kwargs)
      129 
      130             self.on_trial_begin(trial)
  --> 131             self.run_trial(trial, *fit_args, **fit_kwargs)
      132             self.on_trial_end(trial)
      133         self.on_search_end()
  
  ~\anaconda3\lib\site-packages\kerastuner\engine\tuner.py in run_trial(self, trial, *fit_args, **fit_kwargs)
      170         copied_fit_kwargs['callbacks'] = callbacks
      171 
  --> 172         self._build_and_fit_model(trial, fit_args, copied_fit_kwargs)
      173 
      174     def save_model(self, trial_id, model, step=0):
  
  ~\anaconda3\lib\site-packages\autokeras\engine\tuner.py in _build_and_fit_model(self, trial, fit_args, fit_kwargs)
       99         self.adapt(model, fit_kwargs["x"])
      100 
  --> 101         _, history = utils.fit_with_adaptive_batch_size(
      102             model, self.hypermodel.hypermodel.batch_size, **fit_kwargs
      103         )
  
  ~\anaconda3\lib\site-packages\autokeras\utils\utils.py in fit_with_adaptive_batch_size(model, batch_size, **fit_kwargs)
       85 
       86 def fit_with_adaptive_batch_size(model, batch_size, **fit_kwargs):
  ---> 87     history = run_with_adaptive_batch_size(
       88         batch_size, lambda **kwargs: model.fit(**kwargs), **fit_kwargs
       89     )
  
  ~\anaconda3\lib\site-packages\autokeras\utils\utils.py in run_with_adaptive_batch_size(batch_size, func, **fit_kwargs)
       98     while batch_size > 0:
       99         try:
  --> 100             history = func(x=x, validation_data=validation_data, **fit_kwargs)
      101             break
      102         except tf.errors.ResourceExhaustedError as e:
  
  ~\anaconda3\lib\site-packages\autokeras\utils\utils.py in <lambda>(**kwargs)
       86 def fit_with_adaptive_batch_size(model, batch_size, **fit_kwargs):
       87     history = run_with_adaptive_batch_size(
  ---> 88         batch_size, lambda **kwargs: model.fit(**kwargs), **fit_kwargs
       89     )
       90     return model, history
  
  ~\AppData\Roaming\Python\Python38\site-packages\tensorflow\python\keras\engine\training.py in fit(self, x, y, batch_size, epochs, verbose, callbacks, validation_split, validation_data, shuffle, class_weight, sample_weight, initial_epoch, steps_per_epoch, validation_steps, validation_batch_size, validation_freq, max_queue_size, workers, use_multiprocessing)
     1227           epoch_logs.update(val_logs)
     1228 
  -> 1229         callbacks.on_epoch_end(epoch, epoch_logs)
     1230         training_logs = epoch_logs
     1231         if self.stop_training:
  
  ~\AppData\Roaming\Python\Python38\site-packages\tensorflow\python\keras\callbacks.py in on_epoch_end(self, epoch, logs)
      433     logs = self._process_logs(logs)
      434     for callback in self.callbacks:
  --> 435       callback.on_epoch_end(epoch, logs)
      436 
      437   def on_train_batch_begin(self, batch, logs=None):
  
  ~\anaconda3\lib\site-packages\kerastuner\engine\tuner_utils.py in on_epoch_end(self, epoch, logs)
       93 
       94     def on_epoch_end(self, epoch, logs=None):
  ---> 95         self.tuner.on_epoch_end(
       96             self.trial, self.model, epoch, logs=logs)
       97 
  
  ~\anaconda3\lib\site-packages\kerastuner\engine\tuner.py in on_epoch_end(self, trial, model, epoch, logs)
      247         self.save_model(trial.trial_id, model, step=epoch)
      248         # Report intermediate metrics to the `Oracle`.
  --> 249         status = self.oracle.update_trial(
      250             trial.trial_id, metrics=logs, step=epoch)
      251         trial.status = status
  
  ~\anaconda3\lib\site-packages\kerastuner\engine\oracle.py in update_trial(self, trial_id, metrics, step)
      204                     self.objective, metric_name)
      205                 trial.metrics.register(metric_name, direction=direction)
  --> 206             trial.metrics.update(metric_name, metric_value, step=step)
      207         self._save_trial(trial)
      208         # To signal early stopping, set Trial.status to "STOPPED".
  
  ~\anaconda3\lib\site-packages\kerastuner\engine\metrics_tracking.py in update(self, name, value, step)
      186 
      187     def update(self, name, value, step=0):
  --> 188         value = float(value)
      189         if not self.exists(name):
      190             self.register(name)
  
  TypeError: float() argument must be a string or a number, not 'WarmUp'`