边缘计算是一种计算范式,其中部分计算资源被安排在更靠近数据源的地方。它促进了稳健的计算架构在协作学习过程中以新颖的方式执行。边缘计算已经激励了来自多个领域的研究人员和从业者,如医疗、农业、工业、教育、金融等,将边缘计算的基本要素应用于将服务从云级网络推向边缘级终端网络。本章将解释边缘计算的基本原理,并介绍利用深度学习算法应用于边缘级智能的内容。
现代的物联网(IoT)应用由分布在不同地理位置的计算/存储单元组成,包括位于外围端的资源,即更接近传感器节点的资源。这些计算/存储资源单元通常比远程云节点更小且计算能力更弱。在更靠近数据源的外围设备上进行的计算称为边缘计算。它是传统分布式计算范式的扩展分类。边缘计算使得无需包括云或集中处理节点就能创建适度的去中心化网络。 事实上,边缘计算为各个领域的研究人员创造了巨大的机遇。例如,企业应用边缘计算[10]以增加业务能力,同时在更接近客户的地方吸引和处理客户的数据;机器人设备利用边缘计算[15]快速处理自主决策,类似于自动驾驶汽车等。最重要的是,应用于数据密集型物联网应用的智能化已经为成千上万的研究人员提出了许多研究问题。
在物联网应用中结合边缘计算的最重要原因如下: 1. 硬件成本:近年来,商品化硬件单元的成本大幅下降。开发人员有想法基于这些设备创建软件或智能解决方案,价格更为低廉。例如,一块树莓派的成本不到4000印度卢比。显然,可以通过创建多个树莓派的集群来提高应用智能时的性能。 1. 隐私和安全:设计者增强了边缘计算应用的隐私保护。例如,如果利用边缘计算,人的数据如情感信息就不会提交到云资源来研究人类行为特征;类似地,手机数据在边缘计算解决方案中得到保障,因为学习模型被传输到分布式学习平台中的集中学习模型。 1. 网络带宽:边缘计算可以减少基于传感器的应用的网络带宽[9]。这是因为数据在更接近数据源的地方进行处理,而不是发送到云或数据中心。大多数网络用户已经从中受益,因为边缘计算系统中的网络系统终端吞吐量有所提高。 1. 避免供应商锁定:边缘计算可以缓解全云解决方案中的严重供应商锁定威胁。尽管现代执行环境如无服务器计算最近已出现,但由于内部架构,供应商锁定问题依然存在。值得注意的是,基于边缘的实现为在多个供应商的外围节点(包括其资源)上编排计算铺平了道路。 供应商锁定问题对经济快速增长的初创公司造成了严重的不利影响。例如,这一问题可能导致成本增加、业务/服务中断以及不可预测的未来成本上升。 1. 能效/性能效率:边缘计算可以为物联网应用提供更高的性能/能效。在处理并发任务或程序时,这一特性尤为突出。一般来说,边缘计算节点无法执行大规模的计算程序。处理此类任务需要一种优雅的方法来应对。 1. 大数据处理:最近来自计算机视觉研究领域的许多应用在输入数据到计算节点时呈现出潜在的激增趋势。将所有这些数据集中在服务器上并不是一种理想的解决方案。由于边缘计算的去中心化网络,它为处理数据提供了更好的解决方案。例如,数据服务器可以去中心化地靠近边缘,使得云数据中心只需要处理有限的数据。图1.1展示了在AI特定应用中引入边缘计算的目标。
撰写本书的动机是揭示在边缘节点上应用深度学习的重要性。许多研究人员已经得出结论,云计算不足以胜任深度学习应用。在此背景下,我们必须了解基于边缘计算的物联网应用技术的内部细节。 本书将拓宽研究人员、学生、工业界人士、从业者和教师在开发边缘计算应用中的知识和思维过程。它特别强调涉及深度学习算法的物联网应用。 对于下一代物联网应用开发者和从业者来说,本书具有以下重要意义: 1. 本书提供了多种基于深度学习方法的边缘计算技术,重点关注图像分类、图像增强、文字分析、人机情感交互界面等领域。 1. 它探讨了边缘计算中涉及的技术,如模型压缩、迁移学习、联邦学习、分布式智能的能效方面等。 1. 它提供了开发者或研究人员可以采用的平台和技术。书中讨论的平台可以通过读者将其固有的想法(书中明确指出)加以扩展。 1. 本书解释了各种边缘设备的重要性,包括边缘级加速器,以提高应用的性能。 1. 它提供了基于边缘的深度学习技术,以便在推理上提供准确的决策。 1. 此外,书中还解释了一些应用,展示了未来开发者的示例用例。这里介绍了重点关注大象情感分析的应用,以及强调社会进步的商业组合。
本书分为四个主要部分。A部分涵盖第1至第3章。在这一部分中,讨论了理解边缘智能的最重要基础知识,如物联网(IoT)、架构、传统的机器学习/深度学习等。B部分深入探讨了使用边缘辅助节点(包括Jetson Nano等加速器)开发边缘级智能的核心概念。第4至第8章涉及学习方面的内容,以及本书读者需要理解的相关性能或安全特性。我尝试讨论尽可能多的边缘级智能技术,以便读者可以深入了解现有的技术。C部分的第9和第10章描述了使用深度学习或类似学习算法提供边缘级智能的工具和平台。提供这些现有工具的目的是让读者能够通过改进或结合这些工具来开发适合其问题领域的新技术。D部分涵盖了剩余的章节,重点介绍了在各个领域广泛应用的实例。这一部分还为学生、研究人员或项目爱好者在职业生涯中可以承担的一些建议提供了参考。 为了使读者能够全程投入,我采用了一种特定的组织方式来编写本书。以下是各章的概要及其核心思想的总结: 1. 边缘计算:简介:本章简要介绍了边缘计算的基础知识,突出边缘节点的重要性,并概述了本书内容。 1. 边缘架构:一般来说,下一代计算应用需要复杂的架构,主要是异构计算节点。在第二章中,我解释了计算和物联网技术的基础,这些是理解边缘级智能的基本内容。接下来,我介绍了能够结合深度学习算法以提供智能的边缘级架构。 1. 边缘级操作系统与编程模型:边缘设备通常由电池供电或对能源消耗较为敏感。常见的操作系统,如Ubuntu或Windows,无法应用于此类设备。本章解释了边缘导向的操作系统(如FreeRTOS)及其在边缘AI应用中开发并行任务的功能。此外,本章还描述了微控制器的固件开发流程和/或引导过程。这些概念将有助于读者在开发边缘AI应用时深入了解系统级内容。 1. 学习技术:通常,边缘学习有多种方式。例如,迁移学习、联邦学习、传闻学习等是该领域的一些热门技术。在本章中,我解释了用于在边缘节点上进行学习或建模的最著名技术。 1. 边缘节点中的推理技术:在本章中,我解释了AI应用的推理技术。推理通常涉及预处理技术、神经网络的分层和算法。本章还解释了一些用于推理数据的组件,如摄像头和工具。此外,还列出了在边缘节点上应用推理技术时处理视频、音频或文本等不同数据格式的步骤。 1. 边缘加速器:一些计算节点支持加速边缘级智能相关任务的执行。支持加速的著名设备包括TPU、FPGA、GPU等。在本章中,我解释了这些加速器的重要性,并强调了它们在边缘级建模或推理系统中的位置。 1. 性能/能效方法:在物联网-云应用中包含边缘节点对于提高基于AI应用的可扩展性和隐私至关重要。在本章中,我建议了此类架构预期的性能改进和能效方法。详细描述了能效技术,如更改频率、包括缓存方法、修改压缩级别等内容。 1. 边缘级安全机制:在边缘级确保数据安全以开发稳健的智能系统是研究人员和开发人员的主要关注点之一。在本章中,我详细介绍了为边缘智能框架或平台开发的安全机制。此外,本章还详细解释了一些提高终端设备和对象隐私的核心技术,并提供了合适的架构。 1. 边缘AI框架和平台:在市场上,我们可以看到一些边缘AI框架或平台。有些平台是由云服务提供商公开托管的,还有一些平台是由学者和研究人员开发的。这些平台各有其独特的功能,因此在本章中,我详细介绍了不同领域中最常见的边缘AI框架及其优点。 1. 边缘–云连续体的编排平台:在云端和边缘之间卸载任务需要自动化处理。本章强调了一些编排学习任务的关键设计考虑因素。该章还建议了一些可以用来提高应用学习过程质量的技术;此外,还解释了扩展这种编排的平台,即基于AirFlow的解决方案。 1. 基于边缘的应用:边缘计算被应用于多个领域,如交通、医疗、智慧城市等。本章介绍了一些增强边缘智能的应用和思路。重点讨论了一些与动物情感相关的应用,以便读者能够深入了解某一特定应用领域的知识。 1. 边缘支持的数字业务:一般来说,物联网产品的普及带来了巨大的业务改进可能性。通过包含边缘节点,应用中的经济效益得以体现。因此,在本章中,我解释了边缘应用中涉及的经济因素,并建议通过包含无服务器的边缘解决方案来降低成本。显然,本章可能会鼓励创业公司或企业家在其解决方案中利用与边缘计算相关的前沿技术。 1. 边缘智能——挑战与未来方向:在本书的最后一章中,我列出了在应用或产品中引入边缘智能时需要考虑的一些未来展望。这一章将为各个领域有前途的研究人员或从业者提供新颖的思路。