最近优化了一个化学结构式识别神经网络,将其保存为tensorflow的savedmodel模型,并部署到服务器端,识别测试结果相当不错,立马着手部署到移动端。
将savedmodel模型转换为tflite模型后,交由APP组的同事部署到Android手机上。结果APP运行识别功能就直接崩溃,连个错误信息也不给提示。就这样,我没头没脑的找原因。一直以为是模型本身的问题,折腾了一个多星期才把问题解决,原因竟是测试用的图片模型不识别,部署相关的代码拿不到模型输出的tensor,然后就崩溃了!找到原因的我真是无语凝噎!
总结一下这次解决问题的教训:没有提出正确的问题,导致解决问题的大方向错误。
复盘一下解决此问题的正确思路:
1、正确提问,“app运行智能识别功能时为何崩溃?”而非“识别模型出了什么问题?”
2、梳理App智能识别过程:
3、根据识别过程,问题可能发生在:图片、App(部署相关代码)、模型本身这三个方 面,应该逐一排查。起初我只是将方向锁定在模型本身,所以问题迟迟无法解决。
正确提问是解决问题的关键!