11月14日,谷歌终于开源了业界期待已久的移动版TensorFlow — TensorFlow Lite(Github传送门)。笔者认为,谷歌很可能凭借这款利器赢得移动端AI的生态之战。
理由有三:
1. 无缝支持通过TensorFlow训练好的神经网络模型。只需要几个简单的步骤就可以完成桌面模型到移动端模型的转换。
2. TFLite可以与Android 8.1中发布的神经网络API完美配合。而Android端版本演进的控制权是掌握在谷歌手中的,从长期看,TFLite会得到Android系统层面上的支持。
3. 质量有保证。根据以往谷歌对开源项目支持力度看,TFLite的功能迭代演进会很快,大量的bug会在第一时间修复。
此前,国内的巨头百度已经发布了MDL(传送门 )框架、腾讯发布了NCNN(传送门 )框架。下面笔者将比较下这三个移动端框架的异同之处。
相同点:
1. 只含推理(inference)功能,使用的模型文件需要通过离线的方式训练得到。
2. 最终生成的库尺寸较小,均小于500kB。
3. 为了提升执行速度,都使用了ARM NEON指令进行加速。
4. 跨平台,iOS和Android系统都支持。
不同点:
1. MDL和NCNN均是只支持Caffe框架生成的模型文件,而TfLite则毫无意外的只支持自家大哥TensorFlow框架生成的模型文件。
2. MDL支持利用iOS系统的Matal框架进行GPU加速,能够显著提升在iPhone上的运行速度,达到准实时的效果。而NCNN和TFLite还没有这个功能。