如何在不同的平台/技术中使用经过训练的神经网络?

How to use trained neural network in different platform/technology?

本文关键字:经过 神经网络 技术 平台      更新时间:2023-10-16

鉴于我在笔记本电脑上使用Tensorflow和Python训练了一个简单的神经网络,我想在手机上C++应用程序中使用此模型。

我可以使用任何兼容格式吗?运行神经网络(不是训练(最小框架是什么?

UDP。我也对Tensorflow到NOT-Tensorflow的兼容性感兴趣。我是否需要从头开始构建它,或者有任何最佳实践?

是的,如果你使用的是iOS或Android。根据您的特定需求,您可以在TensorFlow for Mobile和TensorFlow Lite之间进行选择

https://www.tensorflow.org/mobile/

特别是,加载预先训练的模型 https://www.tensorflow.org/mobile/prepare_models

从技术上讲,你根本不需要框架。传统的全连接神经网络非常简单,您可以在直接C++中实现它。矩阵乘法大约有 100 行代码,非线性激活函数大约有十几行代码。

最重要的部分是弄清楚如何解析序列化的Tensorflow模型,特别是考虑到有很多方法可以做到这一点。您可能希望冻结您的 TensorFlow 模型;这会将最新训练中的权重插入到模型中。