0

由于 WinML 仍然相当新且不断变化,我希望知道是否有其他人在尝试加载通过自定义视觉服务导出生成的 ONNX 文件时遇到此错误。

类型错误:节点 (ZipMap) 的输出 arg (loss) 的类型 (map(string,tensor(float))) 与预期类型 (seq(map(string,tensor(float)))) 不匹配

使用 Windows.AI.MachineLearning;

Windows RS5 1809(内部版本 17763.1)UWP SDK 17763

来自此链接的测试代码: https ://docs.microsoft.com/en-us/uwp/api/windows.ai.machinelearning

                // Load and create the model
            var modelFile = await StorageFile.GetFileFromApplicationUriAsync(new Uri($"ms-appx:///{_modelFileName}"));
            _model = await LearningModel.LoadFromStorageFileAsync(modelFile);

任何帮助将不胜感激。

4

2 回答 2

1

Windows build 17763 (RS5) 在 Windows.AI.MachineLearning 时需要 ONNX 1.2 版。

Azure 自定义视觉服务目前支持这一点。

是一个关于执行此操作的示例应用程序的帖子。

请注意,您需要确保在绑定时输出数据类型匹配。在 c# 中,这看起来像这样:

 public sealed class ModelOutput
        {
            public TensorString ClassLabel = TensorString.Create(new long[] { 1, 1 });
            public IList<IDictionary<string, float>> Loss = new List<IDictionary<string, float>>();
        }
于 2018-12-03T20:57:21.473 回答
0

我从一位 Microsoft 同事那里收到信息,称 windows.ai.machinelearning api 仅支持 ONNX 2。他没有提供我们可以期望自定义视觉服务导出版本 2 文件的日期。

于 2018-10-05T20:56:01.673 回答