class_docstr: HyperTuning Class is used to manage the parameter tuning process of recommender system models.
  Given objective funciton, parameters range and optimization algorithm, using HyperTuning can find
  the best result among these parameters
  
  Note:
      HyperTuning is based on the hyperopt (https://github.com/hyperopt/hyperopt)
  
      Thanks to sbrodeur for the exhaustive search code.
      https://github.com/hyperopt/hyperopt/issues/200
class_docstr_tok: ["HyperTuning","Class","is","used","to","manage","the","parameter","tuning","process","of","recommender","system","models",".","Given","objective","funciton",",","parameters","range","and","optimization","algorithm",",","using","HyperTuning","can","find","the","best","result","among","these","parameters","Note",":","HyperTuning","is","based","on","the","hyperopt","(","https",":","\/\/github.com\/hyperopt\/hyperopt",")","Thanks","to","sbrodeur","for","the","exhaustive","search","code",".","https",":","\/\/github.com\/hyperopt\/hyperopt\/issues\/200"]
code: def plot_hyper(self):
      import plotly.graph_objs as go
      from plotly.offline import plot
      import pandas as pd
  
      data_dict = {
          "valid_score": self.score_list,
          "params": self.params_list,
      }
      trial_df = pd.DataFrame(data_dict)
      trial_df["trial_number"] = trial_df.index + 1
      trial_df["trial_number"] = trial_df["trial_number"].astype(
          dtype=np.str
      )
  
      trace = go.Scatter(
          x=trial_df["trial_number"],
          y=trial_df["valid_score"],
          text=trial_df["params"],
          mode="lines+markers",
          marker=dict(color="green"),
          showlegend=True,
          textposition="top center",
          name=self.model + " tuning process",
      )
  
      data = [trace]
      layout = go.Layout(
          title="hyperparams_tuning",
          xaxis=dict(title="trials"),
          yaxis=dict(title="valid_score"),
      )
      fig = go.Figure(data=data, layout=layout)
  
      plot(fig, filename=self.display_file)
  
imports: from functools import partial
  import numpy
  from recbole.utils.utils import dict2str
label_desc: Use image node_id 8 for calling the HyperTuning obj's underlying member method code with example usage: obj.plot_hyper() without return types