作为炼丹师,模型变的越来越复杂,模型大小也不断增加.在工业场景下光训练数据就有几百T,训练就要多机多卡并行跑数天.到底如何把这些模型部署在小型嵌入式设备的呢?...为了把模型缩小到可以塞到这么小的处理器中,有以下几个框架:
AIMET from Qualcomm
TensorFlow Lite from Google
CoreML from Apple
PyTorch...Compression or Distillation
模型训练完成后,如何在准确率可接受的情况下压缩模型,最常见的方式就是剪枝和蒸馏....weight clustering 使用权重聚类/共享,降低了存储参数的数量,该方法把一层的参数聚成N个类,并共享索引,举例来说,如果我们把一层聚成8个类,每个参数都会只占3bit(2^3 = 8).从实验我们可以看到...Compilation
剩下的就是工程上的优化了,如使用C++,相较于python更快更省内存.