异常:'The parameter is incorrect.' 尝试 运行 带有卷积的 ONNX 模型时
Exception: 'The parameter is incorrect.' When attempting to run an ONNX model with convolution
当 运行在 DirectX 设备上使用单个卷积 ONNX 模型时,我看到 WinML 运行time 'The parameter is incorrect.' 出现异常。
我的模型 运行 在默认和 Cpu 设备上很好,我能够 运行 来自 Windows 机器学习的 SqueezeNet.onnx 模型DirectX 设备上的存储库很好。我的模型也使用与第一个 SqueezeNet 卷积相同的运算符集 ID、卷积属性、权重和偏差。我还在我的模型上 运行 ONNX python 库检查器,从该工具的角度来看,它看起来没问题。
有没有办法获得有关 运行 时间内发生的错误的更多信息? API 将来会提供更多信息,还是提供验证功能?
您可以使用 Logman 收集 Windows 机器学习跟踪消息以进行更多信息调试。参考这里了解如何使用 Logman:https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/logman
这是使用我们的 GUID 在命令提示符下使用 logman 的示例:
logman 启动 winml -ets -o winmllog.etl -nb 128 640 -bs 128
logman 更新跟踪 winml -p {BCAD6AEE-C08D-4F66-828C-4C43461A033D}
0x0 0x0 -ets
运行您的场景或应用
logman 停止 winml -ets
然后您可以使用 Windows Performance Analyzer
这样的查看器查看生成的 ETL 文件
另一种获取详细错误消息的方法是在调试器下运行它。
当 Windows AI 在运行时遇到问题时,它会使用带有信息字符串的 RoOriginateError。您将能够在调试器中看到该错误字符串。
当 运行在 DirectX 设备上使用单个卷积 ONNX 模型时,我看到 WinML 运行time 'The parameter is incorrect.' 出现异常。
我的模型 运行 在默认和 Cpu 设备上很好,我能够 运行 来自 Windows 机器学习的 SqueezeNet.onnx 模型DirectX 设备上的存储库很好。我的模型也使用与第一个 SqueezeNet 卷积相同的运算符集 ID、卷积属性、权重和偏差。我还在我的模型上 运行 ONNX python 库检查器,从该工具的角度来看,它看起来没问题。
有没有办法获得有关 运行 时间内发生的错误的更多信息? API 将来会提供更多信息,还是提供验证功能?
您可以使用 Logman 收集 Windows 机器学习跟踪消息以进行更多信息调试。参考这里了解如何使用 Logman:https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/logman
这是使用我们的 GUID 在命令提示符下使用 logman 的示例:
logman 启动 winml -ets -o winmllog.etl -nb 128 640 -bs 128
logman 更新跟踪 winml -p {BCAD6AEE-C08D-4F66-828C-4C43461A033D} 0x0 0x0 -ets
运行您的场景或应用
logman 停止 winml -ets
然后您可以使用 Windows Performance Analyzer
这样的查看器查看生成的 ETL 文件
另一种获取详细错误消息的方法是在调试器下运行它。
当 Windows AI 在运行时遇到问题时,它会使用带有信息字符串的 RoOriginateError。您将能够在调试器中看到该错误字符串。