下面是一个网络的inference文件,忽略一些不重要的.
1 | |
具体的措施:
- 在网络中添加placeholder,取一个容易记住的名字,取代网络的输入,其实也为了后面更好的封装,同样的道理也对输出取一个名字,使用
tf.identity.因为一般的网络定义是把numpy的数组直接扔进网络的,在后面转pb,转lite的时候不方便. - 在inference文件中重新用saver保存一下CKPT,为什么要这样做呢? 主要原因是网络训练过程中保存的CKPT包含了训练的一些参数,这些参数在inference的时候是不需要的,所以这样操作可以把CKPT减小,在这个网络中model从130M -> 14M.
下面再放一个改完名字之后的inference文件,对比一下,代码是不是简化了很多,封装性更好.
1 | |