Beispiel #1
0
 def _build_dataframe(self):
     """
     Method to store all the information given by the class
     Evaluator in a DataFrame. Here we calculate another metric
     'Score*Preci' which is the product between score,
     raw_score and precision of a model. The ideia is
     that a good model has both higher precision (contemplate more words)
     and higher score (accuracy in the analogy test).
     """
     all_observations = []
     for name, path in zip(self.model_names, self.pickle_paths):
         if self.verbose:
             print("\nEvaluating the model {}".format(name))
         evaluator = Evaluator(path, self.eval_path, self.encoding)
         precision, raw_score, score = evaluator.get_metrics()
         observation = {}
         observation['Name'] = name
         observation['Raw_Score'] = raw_score
         observation['Score'] = score
         observation['Precision'] = precision
         observation['Score*Preci'] = raw_score * score * precision
         all_observations.append(observation)
     self.dataframe = pd.DataFrame(all_observations)