微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在 ML.NET 上加载和运行 Intel-Tensorflow 模型

如何解决如何在 ML.NET 上加载和运行 Intel-Tensorflow 模型

环境:Tensorflow 2.4、Intel-Tensorflow 2.4

据我所知,pb 格式的 Tensorflow 模型可以在 ML.NET 上加载。

但是,我使用的是量化包 LPOT (https://github.com/intel/lpot),它利用了英特尔优化的 Tensorflow (https://github.com/Intel-tensorflow/tensorflow)。尽管 Intel-Tensorflow 是基于 Tensorflow 构建的,但它使用了一些在 Tensorflow 上没有注册 OpKernel 的量化操作(例如,'QuantizedMatmulWithBiasAndDequantize' 在 TF 上已被弃用)。因此,量化模型无法在未安装 Intel-Tensorflow 的原生 Tensorflow 环境下运行。

我的目标是在 ML.NET 上运行这个量化的 pb Intel-Tensorflow 模型,有谁知道 ML.NET 是否支持 Intel-Tensorflow?或者有没有其他方法可以做到这一点?

非常感谢任何帮助/建议。

解决方法

ML.NET 中支持的 oneDNN 取决于 ML.NET 集成。如果他们在 TensorFlow C++ API 中启用 oneDNN,ML.NET 就可以支持 oneDNN。

enter image description here

您可以尝试在启用了英特尔 OneDNN 的 ML.NET 环境中安装 股票 Tensorflow 2.5。您可以从此链接安装库存 Tensorflow 轮:https://pypi.org/project/tensorflow/#files

安装wheel文件:pip install __.whl

要启用oneDNN优化,请设置环境变量TF_ENABLE_ONEDNN_OPTS:

set TF_ENABLE_ONEDNN_OPTS=1

要确保显示详细日志:set DNNL_VERBOSE=1

有关 oneDNN 详细模式的更多信息,请参阅:https://oneapi-src.github.io/oneDNN/dev_guide_verbose.html

有关面向 tensorflow 的 Intel 优化的更多信息,请参阅:https://software.intel.com/content/www/us/en/develop/articles/intel-optimization-for-tensorflow-installation-guide.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。