孙 胜 李叙晶 刘 敏 杨 博 过晓冰
1(中国科学院计算技术研究所 北京 100190) 2(中国科学院大学 北京 100049) 3(联想研究院 北京 100085)
近年来物联网(Internet of things, IoT)设备越来越普遍,根据Gartner数据显示,到2021年IoT设备数量预计将达到250亿[1].目前深度神经网络(deep neural network, DNN)发展迅速,已经广泛应用于各种各样的智能任务(如计算机视觉、视频识别和机器翻译),IoT设备期望能够执行DNN推断任务以实现实时数据处理和分析.例如在智能家居场景中,摄像机可以执行基于DNN模型的视频识别和语音翻译任务.然而,由于IoT设备资源受限,而且DNN任务需要大量的计算资源和内存占用,因此,IoT设备难以本地单独执行DNN推断任务.为了克服上述挑战,文献[2]提出在单个IoT设备和云服务器之间拆分DNN模型以实现任务推断加速.然而,受限于传输数据量较大以及网络通信延迟不可预测等因素,云协助执行DNN任务推断的方法难以保障数据处理效率,而且会增加对云服务的依赖性.
聚合多个IoT设备的计算能力以共同执行DNN任务是一种有效的解决方式.这种方式的优势在于减少对云服务的依赖,保护IoT设备的隐私性,并且能够实现分布式协同计算.文献[3]首次利用资源受限的多个IoT设备协作执行语音和视频识别等DNN任务.文献[4]提出DeepThings框架进行卷积层划分以减少整体执行延迟和内存占用.然而,现有研究工作仅考虑IoT设备同构情况,而且无法实现实时动态DNN任务拆分.如何在动态异构场景中进行DNN任务的高效拆分和协作推断是亟待解决的……