AIoT应用开发与实践
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

1.2 框架

1.2.1 云边协同下的AIoT架构

实际运行中的AIoT大都采用云边协同的方式进行,即边缘侧由IoT设备和边缘计算设备组成,负责数据的采集和预处理,云侧交由云计算平台进行中心管理、数据汇集、智能分析等对算力要求较高的工作,有时云侧也被称为云管中心或者云控平台。值得一提的是,随着边缘侧设备的发展,越来越多原属于云侧的高算力任务正开始逐渐向边缘侧“下沉”。

在云边协同的AIoT架构下进行AIoT设计、开发和应用时都会涉及三个基本问题,即数据从哪里来、数据如何处理(向云侧交付还是本地计算)、如何利用数据算法完成决策。这三个问题也是大多数应用场景中的共性问题。对于第一个问题,在AIoT中利用边缘侧传感器节点感知数据并完成数据的采集,如图1.1所示,在AIoT架构的最底层即IoT层通过温度传感器、光感元器件、陀螺仪等智能感知传感器完成数据的采集。对于第二个问题,则通过网络传输的方式将采集到的数据传输到边缘服务器以完成数据的缓存,同时也可以利用具有算力的服务器完成数据的计算,如深度学习模型的训练与推理等工作。对于第三个问题,可以利用云侧的模型完成智慧决策,并最后将决策的指令或者获取的模型下沉到边缘侧完成个体决策,同时也可以由边缘侧向云端发出请求,完成单体的控制。

图1.1中的数据流向为数据从底层流向顶层,再将顶层处理好的数据下沉到底层。由上述过程可以梳理出AIoT架构中的三个层次,首先是最底层,即完成数据采集的IoT层,在工业界也叫作边缘侧(在部分场景下,一线施工人员也将其称为“端”侧,以强调其需要专用的物联网终端设备),该层完成数据的采集和指令的控制,由于本地算力和功耗资源可能受限,通常用以完成一些轻量级的计算或者交互控制任务;中间是边缘计算层(该层和IoT层一起被称为“边”),该层可以作为顶层和底层的中间件,当边缘侧的嵌入式设备或者传感节点不能满足存储和算力的要求时,可以利用该层将一部分的数据传输到边缘侧服务器,以此完成算力和存储能力的拓展,同时该层也可以完成多边的协同,提高物联网的深度和广度,值得指出的是,在实际应用场景中该层并不是必须存在的,在一些简单场景中,IoT层可以直接与云中心进行交互;最后是云计算层,该层负责各种大规模的训练和集中化、智能化的决策,也可以辅助AIoT完成边缘的计算和存储。

下面将整体的架构抽象成三部分,即AIoT在落地部署的过程中需要解决的三个问题:一是连接和感知,二是汇聚和存储,三是业务和计算。

1.边缘侧AIoT设备

“边缘侧”即AIoT产业中底层的终端设备和相关软硬件,包括端侧设备芯片、模组、感知设备、操作系统、底层算法等。如前所述,边缘侧承载着底层数据的采集并为基本运算提供算法和算力,边缘侧如同物联网用于获取各种数据的根系。感知设备包括传感器、RFID、高精定位和摄录装置等。传感器是AIoT产业端侧最基础的器件,是整个AIoT的“神经末梢”的触角,其在设计过程中需要充分考虑低成本、微型化、低功耗、灵活性、扩展性、鲁棒性等诸多工程方面的问题。蜂窝通信模组是在电路板上集成基带芯片、存储器、功放器件并提供标准的接口功能模块,使各种终端都可以借助无线模块实现通信功能,其承载着端到端、端到边的数据交互,是用户数据传输通道,也是物联网终端的核心组件之一。手机、微型工业计算机、视觉装置等各种集成性的智能设备都属于边缘侧设备的范畴。

图1.1 云边端融合的AIoT架构

2.数据存储管理

AIoT涉及的数据具有海量性、多态性、关联性及语义性等大数据特征,其中的数据存储管理是重点问题之一。随着AIoT的迅猛发展,传感器节点以几何级数增长,海量终端节点收集到的数据中多源、异构、海量的特点日益凸显。

对于数据存储的模式而言,分布在AIoT层的海量异构数据既可以存储在端侧的传感器内部(类似分布式存储),也可以进行集中式存储,再通过各种通信网络发送回边缘服务器和云中心。这些异构海量数据的产生,一方面是由于物联网中单个物体在持续地产生数据,由边缘侧数亿节点沉积而来,另一方面也是网络中拥有多态性、关联性及语义性等特点导致的。因此在AIoT的数据进行存储管理时,其异构多源的特点需要得到特别的重视和处理,例如需要进行数据清洗、数据去重、一致性校验等。

在AIoT架构中,边缘计算层虽然不是在每个系统中必须出现的角色,但只要其存在便是连接设备到应用场景的关键部分。AIoT的边缘计算层是一种用于构建和管理物联网解决方案的数字平台。如前所述,边缘计算层是IoT和云的中间层,向下可从边缘侧汇集数据,向上可直接对各种应用接口或者不同行业应用提供支撑性服务,在端侧算力不足的情况下,边缘计算层与云层中的云计算服务器结合形成更具柔性的服务能力,以满足更多的场景需求。对于云边协同下的AIoT,虽然人工智能适合放在具备海量算力的云端处理,但若将全部应用程序推送到云端进行处理,必然会带来一定的时延(这种时延受工作环境带宽的影响极大)。所以当实时性和低时延是场景中的关键因素时,则必须依靠更靠近用户的边缘计算层来解决人工智能的计算问题;当计算决策的精确性是关键因素时,则可以依靠云服务器,以实现云边协同的高效AIoT。

3.云侧业务组件

AIoT的总体业务逻辑模型可以被理解为四层:应用层、操作系统服务层、基础设施层和接入层。应用层涵盖了AIoT的各个应用领域,包括智慧城市、智慧农业、智能制造、智能家居、智慧医疗等,面向的是实际的应用和用户;操作系统服务层负责资源调度,提供信息、位置、检索、计费及身份鉴别服务,相当于AIoT的“大脑”,能够对设备层进行连接与控制,提供智能分析与数据处理能力,将针对场景的核心应用固化为功能模块等;基础设施层包括容器、软件定义网络、硬件资源抽象等;接入层则包括无线网接入、感知识别等功能(可以认为等同于边缘侧),如图1.2所示。

AIoT的云侧业务组件即为图1.2中的应用层,既与云计算息息相关,又必须针对具体的业务场景构建专有的应用。云使AIoT企业能够通过资源池化技术将各种计算资源虚拟化,摆脱本地物理基础设施的束缚,这样的优势在于整个体系可以根据用户所需提供灵活、可扩展和可靠的动态计算资源,如计算资源、存储资源和网络资源等。来自大规模分布式传感器和设备的实时数据流通过互联网传输到远程云中心,通过各种数据处理和机器学习工具在那里进一步完成数据的集成、处理和存储。同时,利用云的另一个优势是可以在云上建立原生的生产环境,摆脱环境搭建问题,直接进行深度神经网络的训练和部署来处理大量数据。

在AIoT具体的云侧业务中,可以根据不同的应用直接选择适合该业务的各种人工智能服务,常见的包括图像分类、目标检测和跟踪、文本识别等。例如:选择图像分类计算机视觉中常见的任务,抽取图像的不同特征将不同的图像区分开来,其代表性的深度卷积网络包括VGGNet、ResNet、DenseNet等。近年来,越来越多的云服务商业已将各种大语言规模进行了云化改造,以支持用户的快速访问,如华为云的盘古大模型等。在AIoT的具体场景中,可以选择将其应用于安防领域的人脸识别、交通领域的交通场景识别、医疗领域的图像识别等。

图1.2 AIoT业务逻辑模型