我在Python中使用TensorFlow编写了一个序列分类脚本.我想将此代码移植到Android.我在TensorFlow github页面上看到了关于Android的示例,但这是针对图像的.
有没有办法在Android上直接移植我的TensorFlow Python代码?
执行此操作的典型方法是使用Python构建(和训练)模型,使用GraphDef
原型将原型保存到文件tf.train.write_graph()
,然后使用JNI编写应用程序以调用C++ TensorFlow API(请参阅此处的完整示例).
在Python中构建图形时,应注意将表示(i)要分类的输入数据的张量的名称,以及(ii)预测的输出值.然后,您将能够通过为(i)提供值并获取(ii)的值来运行步骤.
最后一个问题是如何在导出的图形中表示模型参数.有几种方法可以执行此操作,包括将TensorFlow检查点(由a编写tf.train.Saver
)作为应用程序的一部分运行,并运行还原操作以重新加载它.已发布的InceptionV3模型中使用的一种方法是重写图形,以便用"Const"
节点替换模型参数,并且模型图形变为自包含.