上面的案例,仅仅考虑了准确率的问题。
但是对于移动端部署的模型,虽然仅仅推理,但是不能仅仅推理几次,就没电了。
因此,设备端应用,要考虑计算量的问题,需要权衡计算量和准确率。
下面介绍,在搜索神经网络的时候,考虑到计算量。
推理时间:latency.最好几百ms。
NN搜索时考虑到latency,希望小的latency,达到近似的精度。
做NN搜索,选出CNN的最优参数,然后训练CNN,部署到iphone12.
不同的block有不同的latency,因此需要事前知道不同的block的latency。
假设,每个block在iphone12上,计算100次,获取平均时间。
记录每一层中,每个模块的平均latency.
然后计算latency的加权平均。