def test_format_class_probas(): # TODO write errors for wrong input in utils classes = ['1', '2', '3', '4'] pred_probas_1 = [[1, 2, 3, 4]] ret_12 = [[('1', 1.), ('2', 2.), ('3', 3.), ('4', 4.)]] assert format_class_probas(classes, pred_probas_1) == ret_12
def predict(self, samples: TextRequest): self.validate_input(samples) samples = samples.samples if isinstance(samples, str): samples = [samples] # TODO check whether list, np.array, etc. preds_probas = self.model.predict_proba(samples).tolist() label_probas = format_class_probas(self.model.classes_, preds_probas) preds = np.argmax(preds_probas, axis=1).tolist() return {"preds": preds, "pred_probas": label_probas}
def predict(self, samples: VectorRequest): samples = samples.samples if isinstance(samples, str): samples = [samples] # TODO check whether list, np.array, etc. preds_probas = self.model.predict_proba(samples).tolist() pred_probas = format_class_probas(self.model.classes_, preds_probas) preds = self.model.classes_[np.argmax(preds_probas, axis=1).tolist()] return { "preds": preds, "pred_probas": pred_probas }