docstr: Evaluate using the best model after HPO.
  
  :param data: evaluation data, a pandas dataframe with Td rows,
      and 2 columns, with column 'ds' indicating date and column 'y' indicating value
      and Td is the time dimension
  :param metrics: list of string or callable. e.g. ['mse'] or [customized_metrics]
         If callable function, it signature should be func(y_true, y_pred), where y_true and
         y_pred are numpy ndarray. The function should return a float value as evaluation
         result.
docstr_tok: ["Evaluate","using","the","best","model","after","HPO",".",":","param","data",":","evaluation","data",",","a","pandas","dataframe","with","Td","rows",",","and","2","columns",",","with","column","'ds","'","indicating","date","and","column","'","y","'","indicating","value","and","Td","is","the","time","dimension",":","param","metrics",":","list","of","string","or","callable",".","e.g",".","[","'mse","'","]","or","[","customized_metrics","]","If","callable","function",",","it","signature","should","be","func","(","y_true",",","y_pred",")",",","where","y_true","and","y_pred","are","numpy","ndarray",".","The","function","should","return","a","float","value","as","evaluation","result","."]
code: def evaluate(self, data, metrics=["mse"]):
      """
      Evaluate using the best model after HPO.
  
      :param data: evaluation data, a pandas dataframe with Td rows,
          and 2 columns, with column 'ds' indicating date and column 'y' indicating value
          and Td is the time dimension
      :param metrics: list of string or callable. e.g. ['mse'] or [customized_metrics]
             If callable function, it signature should be func(y_true, y_pred), where y_true and
             y_pred are numpy ndarray. The function should return a float value as evaluation
             result.
      """
      from bigdl.nano.utils.common import invalidInputError
  
      if data is None:
          invalidInputError(False, "Input invalid data of None")
      if self.best_model.model is None:
          invalidInputError(
              False,
              "You must call fit or restore first before calling evaluate!",
          )
      return self.best_model.evaluate(target=data, metrics=metrics)
  
file_path: BigDL/python/chronos/src/bigdl/chronos/autots/model/auto_prophet.py
imports: import pandas
  import warnings
  from bigdl.chronos.model.prophet import ProphetBuilder, ProphetModel
  from bigdl.chronos.autots.utils import recalculate_n_sampling
label_desc: Use image node_id 4 for calling the AutoProphet obj's underlying member method code with example usage: obj.evaluate(data, metrics) and returns: self