我正在使用 Keras(和 Theano)来训练我的 CNN 模型。有谁知道如何在我的 C++ 应用程序中使用它?有没有人尝试过类似的东西?我有想法编写一些 python 代码来生成带有网络函数的 c++ 代码 - 有什么建议吗?
我在 这里 找到了一个类似的问题,如何在 C++ 中使用 Tensorflow Keras 模型,但没有答案。
原文由 pplonski 发布,翻译遵循 CC BY-SA 4.0 许可协议
我正在使用 Keras(和 Theano)来训练我的 CNN 模型。有谁知道如何在我的 C++ 应用程序中使用它?有没有人尝试过类似的东西?我有想法编写一些 python 代码来生成带有网络函数的 c++ 代码 - 有什么建议吗?
我在 这里 找到了一个类似的问题,如何在 C++ 中使用 Tensorflow Keras 模型,但没有答案。
原文由 pplonski 发布,翻译遵循 CC BY-SA 4.0 许可协议
你可以试试这个 https://github.com/gosha20777/keras2cpp
Keras2cpp 是一个小型库,用于从 C++ 应用程序运行经过训练的 Keras 模型,无需任何依赖。
支持的 Keras 层: - Dense - Convolution1D - Convolution2D - Convolution3D - Flatten - ELU - Activation - MaxPooling2D - Embedding - LocallyConnected1D - LocallyConnected2D - LSTM - GRU - CNN - BatchNormalization
支持的激活:-线性-relu-softplus-tanh-sigmoid-hard_sigmoid-elu-softsign-softmax
设计目标:
原文由 Georgy Perevozchikov 发布,翻译遵循 CC BY-SA 4.0 许可协议
3 回答2k 阅读✓ 已解决
2 回答3.9k 阅读✓ 已解决
2 回答3.2k 阅读✓ 已解决
1 回答3.2k 阅读✓ 已解决
1 回答2.7k 阅读✓ 已解决
3 回答3.4k 阅读
1 回答3.3k 阅读
为了回答我自己的问题并找到解决方案 - 我编写了一个名为 keras2cpp 的普通 c++ 解决方案(其代码可在 github 上找到)。
在此解决方案中,您存储网络架构(以 json 格式)和权重(以 hdf5 格式)。然后,您可以使用提供的脚本将网络转储到纯文本文件。您可以在纯 C++ 代码中将获得的文本文件与网络一起使用。不依赖于 python 库或 hdf5。它应该适用于 theano 和 tensorflow 后端。