上QQ阅读APP看书,第一时间看更新
1.3.4 算法执行框架
除了操作系统之外,边缘计算还需要一个边缘的执行框架,它可以动态地允许AI包在云端运行(例如来自Facebook的PyTorch和来自谷歌的TensorFlow)。
随着人工智能的快速发展,边缘设备需要执行越来越多的智能算法任务,例如家庭语音助手需要进行自然语言理解、智能驾驶汽车需要对街道目标检测和识别、手持翻译设备需要翻译实时语音信息等。在这些任务中,机器学习尤其是深度学习算法占有很大的比重,使硬件设备更好地执行以深度学习算法为代表的智能任务是研究的焦点,也是实现边缘智能的必要条件。而设计面向边缘计算场景下的高效的算法执行框架是一个重要的方法。目前有许多针对机器学习算法特性而设计的执行框架,例如谷歌于2016年发布的TensorFlow、依赖开源社区力量发展的Caffe等,但是这些框架更多地运行在云数据中心,它们不能直接应用于边缘设备。在云数据中心,算法执行框架更多地执行模型训练的任务,它们的输入是大规模的批量数据集,关注的是训练时的迭代速度、收敛率和框架的可扩展性等。而边缘设备更多地执行预测任务,输入的是实时的小规模数据,由于边缘设备计算资源和存储资源的相对受限性,它们更关注算法执行框架预测时的速度、内存占用量和能效。
为了更好地支持边缘设备执行智能任务,一些专门针对边缘设备的算法执行框架应运而生。2017年,谷歌发布了用于移动设备和嵌入式设备的轻量级解决方案TensorFlow Lite,它通过优化移动应用程序的内核、预先激活和量化内核等方法来减少执行预测任务时的延迟和内存占有量。Caffe2是Caffe的更高级版本,它是一个轻量级的执行框架,增加了对移动端的支持。此外,PyTorch和MXNet等主流的机器学习算法执行框架也都开始提供在边缘设备上的部署方式。