我正在使用预先训练的MobileNet模型在TensorFlow中训练图像分类模型,并将.tflite文件嵌入Android应用程序中。
碰巧的是,如果我在添加MobileNet模型后执行model.add(layers.Flatten())
,则在执行Android应用程序时出现以下错误:
Caused by: java.lang.IllegalArgumentException: ByteBuffer is not a valid flatbuffer model
但是,如果我在MobileNet模型之后使用model.add(layers.GlobalAveragePooling2D())
,则该应用程序可以正常运行。
有人可以帮我解决layers.Flatten()
引起麻烦的原因吗?
完整的代码可用here。