是否有可能创建和执行深度学习模型并在c ++中进行预测?

时间:2017-10-23 08:28:36

标签: deep-learning contiki

让我们假设我的芯片不支持keras,tensorflow或sklearn等任何API;但是我需要在python中实现深度学习模型。

是否可以在python中创建我的训练和测试模型,然后,我想用C ++调用最佳模型结果进行预测? 我在哪里保存最终的最佳模型,以便在接下来的步骤中调用?我必须把它保存在芯片里吗?在这种情况下,我是否需要在芯片中安装tensorflow和keras?

1 个答案:

答案 0 :(得分:2)

<强>术语

你似乎对术语感到困惑。这是一个有点简化的概述。

您的芯片是硬件(CPU或GPU),并且将包括支持其指令集的电路(将数据移入/移出本地存储器,执行数学和逻辑运算等)。不支持ML软件的CPU / GPU 芯片难以可视化,也不支持Python或C ++。 芯片出现在主板上,其中包括许多外设连接,辅助内存等。

然后在硬件上安装操作系统(基本软件)。这个操作系统管理资源:作业,进程,内存分配等。如果支持失败,它将在这里,而不是在芯片。最后,您将所需的应用程序(软件工具,程序等)安装为操作系统的附加功能。

C ++和Python是两种高级语言,流行的应用程序。这些语言支持Tensorflow和Keras(机器学习框架)和SciKit(科学/统计软件包; sklearn 是您导入的软件包名称)。

DIRECT ANSWER

是的,你可以用Python编写你的NN。是的,你可以用C ++调用它。 Python依赖于C / C ++库;两者之间有一个可行的接口。

必须用于保存模型并稍后调用它的特定方法:如果您在Python中编写自己的模型,则需要确定存储格式和位置。您所需要的只是让您的Python和C ++程序“同意”格式。既然你正在编写它们,那么你可以选择适合你的任何东西。

<强>建议

不要自己写这些,除非你真的想要练习。相反,安装一个框架(TensorFlow,Caffe,Neon,Torch,MXNet,Keras,......)。然后,只需按照给定的教程学习如何构建,保存和恢复模型。