我正在尝试将 SageMaker XGBoost 模型转换为 ONNX,以便在使用 ML.NET 的 .Net 应用程序中使用 ONNX 模型。我尝试使用转换模型winmltools
,onnxmltools
但两个工具都返回了类似的错误。
有一个很好的资源可以在商业领域使用机器学习。我尝试在 SageMaker 中使用机器学习来提高销售额来创建模型,然后将模型转换为 ONNX 模型。该示例在 SageMaker 中运行良好。
运行示例后,我得到了一个模型,模型的类型为sagemaker.estimator.Estimator
. 我尝试使用winmltools
and转换模型onnxmltools
。但两者都返回相同的错误。
ValueError: No proper operator name found for '<class 'sagemaker.estimator.Estimator'>'
我尝试使用 WinMLTools 将 ML 模型转换为 ONNX,并且ONNXMLTools 允许将模型转换为 ONNX以将 SageMaker 模型转换为 ONNX 模型。
之后,我使用xgb.create_model()
命令创建 SageMaker 模型。然后使用工具将模型转换为 ONNX。但没有运气。这次我得到了同样的错误。只是型号不同。
ValueError: No proper operator name found for '<class 'sagemaker.model.Model'>'
然后我使用加载模型pickle
并尝试转换模型。我得到了同样的错误,只是型号不同。
ValueError: No proper operator name found for '<class 'xgboost.core.Booster'>'
目前,我对这些问题一无所知。我应该如何解决这些问题。我已将改进销售分类附加到 ONNX 笔记本文件以供参考。你能看看这些问题,让我知道解决问题的方法吗?提前致谢!