Создание прогноза с помощью среды выполнения onnx для строкового ввода

Я пытаюсь делать прогнозы на текст из конвейера sklearn, который был упакован как ONNX. Я могу записать и прочитать в модели, но когда я делаю прогноз, я получаю ошибку: "Ошибка запуска метода из-за: [ONNXRuntimeError]: 2: INVALID_ARGUMENT: Отсутствует обязательный ввод: float_input". Кто-нибудь знает, как сделать прогноз из конвейера sklearn на текст?

Я следовал этому уроку http://onnx.ai/sklearn-onnx/auto_examples/plot_tfidfvectorizer.html, но не могу сделать прогноз.

'''
#convert pipeline into onnx
model_onnx = convert_sklearn(pipeline, "tfidf",
                             initial_types=[("str_input", StringTensorType([1, 2000]))])

with open("pipeline_emails.onnx", "wb") as f:
     f.write(onx.SerializeToString())

#make predictions on test data
sess = rt.InferenceSession("pipeline_emails.onnx")
pred_onx = sess.run(None, {"str_input": test_df.as_matrix()})[0]
print("predict", pred_onx[0])
print("predict_proba", pred_onx[1])
'''

Я ожидал получить набор прогнозов на моих тестовых данных, но вместо этого я получаю:

RuntimeError                              Traceback (most recent call last)
<ipython-input-118-5db056b989a8> in <module>()
      2 sess = rt.InferenceSession("pipeline_emails.onnx")
      3 inputs = {'str_input': test_df.as_matrix()}
----> 4 pred_onx = sess.run(None, {"str_input": test_df.as_matrix()})[0]
      5 print("predict", pred_onx[0])
      6 print("predict_proba", pred_onx[1])

~\AppData\Local\Continuum\anaconda3\lib\site-packages\onnxruntime\capi\session.py in run(self, output_names, input_feed, run_options)
     70         if not output_names:
     71             output_names = [output.name for output in self._outputs_meta]
---> 72         return self._sess.run(output_names, input_feed, run_options)
     73 
     74     def end_profiling(self):

RuntimeError: Method run failed due to: [ONNXRuntimeError] : 2 : INVALID_ARGUMENT : Missing required input: float_input

0 ответов

Другие вопросы по тегам