我开发了一些在Linux上成功运行的基于Tensorflow的C ++应用程序。现在我正在尝试开发Android版本,但我无法解决以下错误:无效参数:没有注册OpKernel来支持Op' LRNGrad'与这些attrs。已注册的内核:
try: return jStr[to_extract]
except: return ''
我已添加到Android中,通过 [[Node: gradients/localresponsenorm1_grad/LRNGrad =
LRNGrad[T=DT_FLOAT, alpha=0.0001, beta=0.5, bias=2, depth_radius=5]
(gradients/maxpool1_grad/MaxPoolGrad,conv2d2, localresponsenorm1)]]
中的//tensorflow/core/kernels:android_all_ops
构建可用于Android的所有内核,甚至包含core/kernels/BUILD
以单独构建,但不会产生任何影响。
我的Linux版本运行正常。我该怎么办?感谢。
答案 0 :(得分:0)
它确实在输出中说<no registered kernels>
吗?我假设这被解释为HTML并且呈现为不可见。
您的Android应用依赖于哪个库? tensorflow / core:android_tensorflow_lib应该已经包含了这个内核。 (android_all_ops实际上并不用于TensorFlow内部的任何目标,这有点误导)。