我正在尝试将TensorFlow模型(SavedModel)加载到ML.NET,并使用ML.NET创建一个估计器。
我正在没有错误的情况下加载模型,但是tensorFlowModel.ScoreTensorFlowModel得到了异常"System.MissingMethodException IntPtr System.MissingMethodException“
我的代码:
using Microsoft.ML;
var inputNodeName = "serving_default_dense_input";
var outputNodeName = "StatefulPartitionedCall_1";
var tensorFlowModel = mlContext.Model.LoadTensorFlowModel(@"model"); //model directory contains saved_model.pb file
var pipeline = tensorFlowModel.ScoreTensorFlowModel(new[] { outputNodeName },new[] { inputNodeName }, addBatchDimensionInput: false);已安装的NuGet包:
ML.NETSciSharp.TensorFlow.RedistTensorFlow.NET这些包被更新为最新版本。
发布于 2020-11-30 06:42:38
我也遇到过几次同样的错误,这一直是ML.NET和TensorFlow版本之间的不匹配。我注意到您已经包含了SciSharp.TensorFlow.Redist包,虽然仍然有教程提到使用ML.NET的后期版本对TensorFlow.NET >= 0.11.8.1的依赖,它似乎包含必要的文件,所以这是不必要的,也可能是造成问题的原因之一。
另一件事是,虽然依赖项是>= 0.11.8.1,但TensorFlow.NET的较晚版本可能会导致与此Github问题相同的问题,因此也要检查尚未更新到更高版本的TensorFlow.NET,如果您尝试将其恢复到0.11.8.1。
https://stackoverflow.com/questions/64498900
复制相似问题