用于在云端和iot网络之间共享机器学习功能的系统和方法

文档序号:1256927 发布日期:2020-08-21 浏览:8次 >En<

阅读说明:本技术 用于在云端和iot网络之间共享机器学习功能的系统和方法 (System and method for sharing machine learning functionality between cloud and IOT networks ) 是由 O·加尔西亚-马尔雄 A·莫蒂 于 2018-12-13 设计创作,主要内容包括:提供了用于基于被应用于包括多个感测节点和聚集节点的物联网(IoT)网络的卷积神经网络(CNN)使用深度学习的系统和方法。感兴趣事件基于所收集的数据而以更高可靠性被检测,并且IoT网络通过在IoT网络和云计算网络之间划分处理功能而改善带宽使用情况。(Systems and methods are provided for using deep learning based on a Convolutional Neural Network (CNN) applied to an internet of things (IoT) network including a plurality of sensing nodes and aggregation nodes. Events of interest are detected with higher reliability based on the collected data, and the IoT network improves bandwidth usage by dividing processing functions between the IoT network and the cloud computing network.)

用于在云端和IOT网络之间共享机器学习功能的系统和方法

技术领域

本发明涉及一种系统和方法,其使用基于被应用于IoT网络的卷积神经网络的深度学习,更特别地,以基于所收集的数据以更高可靠性检测事件,并且通过在IoT网络和云端之间划分处理功能来节省带宽。

背景技术

具有多个发光器和传感器的智能照明系统正经历在市场上的稳定增长。智能照明系统是一种针对能量效率所设计的照明技术。这可以包括高效装置以及基于诸如占用或日光可用性之类的条件进行调节的自动化控制。照明是为了实现一些审美或实际效果而进行的刻意光应用。其包括任务照明、重点照明和一般照明。

这样的智能照明系统可以使用例如占用和光测量形式的多模传感器输入来控制发光器的光输出并且针对普遍的环境条件来调适人工照明条件。利用这样的传感器部署在照明系统情境中达到的空间粒度,可能使用传感器数据来关于操作环境进行学习。例如,一个这样的方面涉及到占用。对于关于超出基本存在之外的占用环境进行学习的兴趣有所增长。就此而言,占用建模与建筑能量效率、照明控制、安全监视、紧急疏散和救援操作紧密相关。在一些应用中,占用建模可以在作出例如有关HVAC控制等的自动决策时被使用。

将光源连接至照明管理系统还实现了大量先进特征,诸如:通过追踪光源的位置和状态所进行的财产管理,通过调适照明日程而降低的能耗,等等。这样的智能照明系统还可以实现诸如定位或可见光通信之类的其它应用。

智能照明系统还可以实现其它超出光照之外的应用。这样的应用可以在现有照明基础设施上运行并且带来附加价值。这样的其它应用的示例包括人数统计和土壤运动监视。

可以使用被动红外(PIR)传感器来实现人数统计应用。这样的PIR传感器传统上被用来通过在被占用的那些区域中开启灯而降低能耗。PIR传感器在市面上已经广泛可用。还存在将这样的PIR传感器用于诸如办公室中的人数统计、活动监视等的其它功能的可能性。

可以使用GPS数据来实现土壤运动监视应用。例如,每个智能户外发光器可以具有GPS传感器,从而该发光器一旦被安装就可以被自动定位。已知可以使用两个GPS传感器来以相对高的准确度跟踪土壤运动的量,一个GPS传感器位于静态区域而另一个则位于承受运动的区域。然而,并不知晓是否存在可以被用来产生有关土壤运动的量的见解(insight)的更好算法。

就此而言,如下文所讨论的,本发明利用机器和深度学习算法的方面可以被用来提供改进的算法。

机器学习(ML)是计算机科学的一个领域,其给予计算机在没有被明确编程的情况下进行学习的能力。就此而言,机器学习是指允许计算机从数据“学习”相应地调适程序动作的算法。机器学习算法被分类为有监督和无监督的。无监督学习涉及例如通过将数据项分类为差异类而从数据表得出结论。不向学习算法给出标签,而是让它自己在其输入中找出结构。无监督学习可以是目标本身(发现数据中的隐藏模式)或者是去往终点的手段(特征学习)。有监督算法使用过往数据中的学习以将其应用于新数据。由“教师”给出示例输入以及它们的期望输出,并且目标是学习将输入映射至输出的总体规则。作为特殊情形,输入信号可以仅是部分可用的,或者被限制于特殊反馈。

深度学习是以大脑工作的方式所激发的机器学习算法的一种具体类型。该方法尝试对人脑将光和声音处理为视觉和听觉的方式进行建模。一些成功的深度学习的应用是计算机视觉和语音识别。神经元被互连,从而根据输入触发答案。深度学习旨在定义以多个层组织的神经元网络,从而输入数据被逐层处理,使得在链路之间的权重被正确选择的情况下,最后的层可以提供输入数据的高级别抽象。

深度学习算法存在许多不同的可替换设计。例如,卷积神经网络(CNN),其中神经元的组织模式由视觉皮质所激发。这样的CNN是一种特殊的多层神经网络,其利用反向传播算法的一种版本进行训练。CNN使用被设计为要求最小化预处理的多层感知器的一种变体。基于它们的共享权重架构和平移不变性特性,它们也被称作移位不变或空间不变的人工神经网络(SIANN)。

LeNet-5经常被认为是在针对图片中的字符识别任务的实践中工作的第一CNN。CNN的设计开拓空间,并且这正是如上那些超出光照之外的应用所期望的,其中多个传感器被部署在给定的感兴趣分区中以监视感兴趣特征,例如滑坡或者房间中的人数。例如,如果发生了滑坡,则传感器所捕捉到的“数据模式”将独立于该滑坡自身的位置。

CNN在进行分类时的主要操作特征如下:

- N次(N层)

- 卷积层利用卷积滤波器(称作“加权窗口”)计算输入数据的卷积。该卷积将对通常为阵列或矩阵的整个输入数据执行,从而该卷积强调具体模式。这具有三种主要含义:(i)在CNN的输入和输出节点之间仅需要本地连接性(具有滤波器大小);(ii)其显示出对滤波器而言相关的感测数据中的数据的空间布置源自于输入(矢量/矩阵)中紧密定位的分区;(iii)其显示出滤波器的参数可以共享——这意味着输入是时间/空间不变的。

- 子采样或池化层在每次卷积之后提取最重要的特征。主要思想在于,在卷积之后,一些特征可能在紧密定位的区域中出现。随后可以通过子采样去除冗余信息。通常,卷积的输出被划分为网格(例如,侧边2×2的单元格)并且从每个单元格输出单个值,例如平均或最大值。

- 修正线性单元(ReLU)层取得子采样区域的输出并且修正为给定范围中的值,通常处于0和最大值之间。一种对该层加以解释的方式是将其视为一种二元决策,其确定给定区域(在卷积和子采样之后)中是否已经确定了给定特征。ReLu层可以利用Sigmoid函数f(x) = (1 + e-x)-1来实施,即,如果x非常小,则f(x)为0,如果x大约为½,如果x大,则f(x)趋向于1。

卷积/子采样和ReLU层的以上结构被应用N次,从而从输入数据获得一些输出数据。通常,如果子采样层具有2×2的大小,则对于大小为n2的输入数据空间以及N个层,特征将具有n ∗ 2-N的大小。

完全连接层是最后的层,其连接先前层的所有输出以获得作为N-1层的特征组合的最终答案。该层可以像将由最后层生成的输入相乘的矩阵运算那么简单,以量化每个潜在事件/分类的可能性。

学习CNN的参数的过程被概括如下:

- 以随机方式初始化所有参数(权重和偏差)。

- 计算用于训练数据的输出。

- 计算最后层中的成本函数(误差)(C = ½ ∑(目标 – 输出)2)。

- 将该误差反向传播,并且得出网络内的每个神经元中的误差。

- 给定该网络中的每个神经元中的误差,关于权重和偏差获得该成本函数的梯度。

- 将权重和偏差的更新值更新为wi+1 = wi– ƞ dC/dW,其中wi是当前迭代的权重,ƞ是学习速率,并且dC/dW是所计算的梯度。

现有技术的系统存在两个主要的问题/缺陷。现有技术的第一个问题在于,并不知道可以如何在针对智能照明应用的实践中应用深度学习,在智能照明应用中,每个发光器包括关于环境中的具体特征生成触发的小型传感器。第二个问题则在于以下事实:现有(深度学习)方法要求将来自传感器的所有数据都发送至云端,从而所有数据都被处理。从带宽的角度来看这是低效的。

云计算是一种使得能够对可配置系统资源和更高级服务的共享池进行普遍性访问的信息技术(IT)范例,这些资源和服务能够以最少量的管理精力来快速供应(通常通过因特网)。与公用设施相类似,云计算依赖资源共享来实现连贯性以及规模经济。然而,单独的云计算并不足以解决以上所提到的缺陷:诸如照明网络的智能网络经常是带宽受限的,并且无法负担将所有原始数据都发送至远程云端。此外,在云端运行整个深度学习算法并不高效。

本发明的方面和实施例解决了这些缺陷之一和/或二者。

发明内容

涉及一种使用基于卷积神经网络的深度学习的有所改进的方法的本发明的一个方面可以被应用于IoT网络。该方法使用由传感器网络所获得的数据,从而能够以更高可靠性来检测事件。

本发明的另一个方面涉及一种使用CNN模型的方法,该CNN模型能够被划分并且部分在IoT网络中且部分在云端运行。这允许节省带宽。云端可以使得IoT网络中具有不同角色(感测和聚集)的节点的计算以及该模型可以如何划分和部署自动进行。

本发明的又一个方面涉及对IoT网络和云端的带宽利用情况进行优化。

本发明的又一个方面实现了根据深度学习网络的实时应用。这可以被用来确保作为IoT网络或云计算网络的一部分的网关或其它中间基础设施并不会由于处理到来的数据和执行深度学习操作而不堪重负。

本发明的一个实施例针对一种用于在IoT网络中使用ML学习的多个节点的计算机实施的方法。该方法包括步骤:获得经训练的ML模型、多个节点的物理位置数据以及节点的通信连接数据。使用集群算法来确定哪些节点应当是感测节点而哪些应当是聚集节点。感测节点进行感测并且将所感测数据发送至聚集节点。聚集节点的功能包括以下动作的一个或多个:(i)感测;(ii)从感测节点接收所感测数据;(iii)利用加权窗口对从感测节点接收的所感测数据执行卷积;(iv)对卷积输出应用Sigmoid函数;(v)对卷积输出进行子采样;(vi)向云计算网络的ML单元部分发送包含动作结果的消息。有关多个节点中的哪些应当是感测或聚集节点的配置信息被发送至IoT网络。

该方法的一个优势是减少了IoT网络的延时。

本发明的另一个实施例针对一种用于通过使用CNN模型改善带宽利用情况的方法,CNN模型可以被划分并且部分在包括多个节点的IoT网络中且部分在包括ML单元的云计算网络中运行。该方法包括使用该IoT网络对该CNN模型的第一层的第一处理的步骤。该IoT网络包括一个或多个聚集节点以及多个感测节点。感测节点进行感测并且经由LAN接口将所感测数据发送至该聚集节点。聚集节点的功能包括以下动作中的一个或多个:(i)感测;(ii)从感测节点接收所感测数据;(iii)利用加权窗口对从感测节点接收的所感测数据执行卷积;(iv)对卷积输出应用Sigmoid函数;(v)对卷积输出进行子采样;(vi)向ML单元发送包含动作结果的消息。该方法还包括以下步骤:在该CNN模型的一个或多个更高层中由ML单元对该动作的消息进行第二处理,并且基于该第一和第二处理确定感兴趣特征(FOI)预测。

本发明的又一个实施例针对一种智能照明网络,多个感测单元各自至少包括第一传感器和第一LAN接口,并且多个聚集节点至少包括第二传感器、第二LAN接口、WAN接口和处理器。聚集节点被配置为执行以下动作的一个或多个:(i)感测;(ii)从感测节点中的一个或多个接收所感测数据;(iii)利用加权窗口对从一个或多个感测节点接收的所感测数据执行卷积;(iv)对卷积输出应用Sigmoid函数;(v)对卷积输出进行子采样;(vi)向作为云计算网络的一部分的ML单元发送包含动作结果的消息。哪些感测节点应当向哪些聚集节点发送所感测数据的确定根据ML模型以及该智能照明网络的带宽通信限制来确定,ML模型考虑了由该ML模型的窗口大小所确定的聚集节点的数量。

附图说明

将参考附图仅通过示例方式对本发明的另外的细节、方面和实施例进行描述。图中的要素是为了简明和清楚而图示的,并且不一定依比例绘制。在附图中,与已经描述过的要素相对应的要素可以具有相同的附图标记。在附图中:

图1示意性示出了系统要素的实施例的示例。

图1a示意性示出了户外照明系统的实施例。

图2示意性示出了图1的系统要素的节点中的组件的实施例的示例的细节。

图3示意性示出了图1的系统要素的集中式操作的实施例的示例。

图4示意性示出了将CNN的第一层分布至IoT网络的实施例的示例。

图5示意性示出了2×2和3×3卷积窗口中的多个本地通信的示例。

图6示意性示出了多个窗口和聚集节点的实施例的示例。

图7示意性示出了用以优化在IoT网络中部署ML模型的方式的方法的示例。

图8示出了可以被用来分布图1的系统要素的节点的空间窗口函数的示例。

具体实施方式

虽然本发明允许许多不同形式的实施例,但是一个或多个具体实施例在附图中被示出并且将在本文中被详细描述,其中应理解,本公开应被视为是本发明原理的示例,而并非意在将本发明限制为所示出和描述的具体实施例。

在下文中,为了便于理解,在操作中对实施例的要素进行描述。然而,将显然的是,相应要素被部置成执行被描述为由它们所执行的功能。

另外,本发明不局限于实施例,并且本发明在于本文所描述或者在互相不同的从属权利要求中记载的每一个新颖特征或特征的组合。

图1示出了根据本发明的一个实施例的系统要素的表示形式。如图1所示,n个节点10被部署在感兴趣分区(ROI)11中。节点10监视ROI 11中的感兴趣特征(FOI)。如上文提到的,FOI例如可以是占用、土壤运动或者ROI中的任何其它特性或变量。在一个实施例中,FOI是ROI的占用量度,例如人数或人员密度。FOI可以通过照明系统的常规组织以外的一些手段来获得。例如,可以使用相机来统计人数,或者人可以在地面上统计人数。人员可以例如通过他们的移动电话而被标记从而检测他们的存在。

节点10收集数据,该数据随后被发送(可能在一定程度的预处理之后)至云端20(或者云计算网络),在云端20处的机器学习(ML)单元包含处理来自节点10的数据以获得有关FOI的给定见解(insight)的算法。该过程根据经训练的ML模型22完成。训练ML模型的过程涉及到为ML算法(也就是学习算法)提供训练数据以从中进行学习。训练数据必须包含被称之为目标或目标属性的正确答案。该学习算法找出训练数据中将输入数据属性映射至目标(所要预测的答案)的模式,并且其输出捕捉到这些模式的经训练的ML模型22。经训练的ML模型22可以被用来获得有关新数据的预测,其中新数据的目标是未知的。

图1a示出了根据本发明实施例的户外照明系统的另一种配置。

如图1a所示,户外照明系统100包括被配置为充当节点10的一个或多个照明单元(LU1-LU8)。LU(LU1-LU8)可以包括发光机件101、一个或多个传感器102、数据库103、通信接口104和光水平控制器105。

传感器102可以被用来检测预定感测范围(ROI)内的一个或多个对象/特征(FOI)。传感器102可以是用以实现该结果的任何适当的传感器。例如,可以使用被动红外、雷达传感器、GPS或相机来给出检测结果。这样的传感器102可以于在传感器102的感测范围内检测到对象或特征的情况下发送感测数据结果形式的“检测”。传感器102也可以定期尝试检测感测范围内的对象,并且如果检测到对象则为“检测”结果,否则则为“无检测”结果。

通信接口104例如可以是与DSRC、3G、LTE、WiFi、RFID、无线网状或另一类型的无线通信系统和/或可见光通信相兼容的硬线链路和/或无线接口。通信接口104可以是用以在LU(1-8)中的一个或多个、控制单元200和/或云端20之间传输数据的任何适当的通信布置。

数据库103不需要被包括在LU(1-8)中。由于LU(1-8)可以与一个或多个其它LU(1-8)和/或中间节点(图1a中未示出)通信,将需要被特定LU(LU1-LU8)存储或访问的任何数据都可以被存储在处于另一LU(LU1-LU8)中、中间节点中或者按照需要的其它网络存储中的数据库103中并且从那里被访问。

如图1a所示,照明系统100还可以包括控制单元200(例如服务中心、后勤办公室、维护中心等)。控制单元200可以位于LU(LU1-LU8)附近或者在远程位置处。中央控制单元200包括通信单元201,并且还可以包括数据库202。通信单元201被用来与LU(LU1-LU8)和/或诸如云端20(图1a中未示出)的其它外部网络通信。控制单元200直接或间接地通信耦合至LU(LU1-LU8)和/或云端20。例如,控制单元200可以经由有线和/或无线/无线网状连接直接通信或者经由网络间接通信,其中网络诸如是因特网、内联网、广域网(WAN)、城域网(MAN)、局域网(LAN)、陆上广播系统、线缆网络、卫星网络、无线网络、电线或电话网络(POTS)以及这些的部分或组合和其它类型的网络。

控制单元200包括用于操作、调用开/关时间和排序、调光时间和百分比以及其它控制功能的算法。控制单元200还可以执行参数的数据日志记录,所述参数诸如是运行时数或能量使用、警报和日程安排功能。

如上文关于通信单元201所提到的通信接口104可以是用以向和/或从控制单元200传输数据的任何适当通信布置。就此而言,经由通信接口104,每个LU(LU1-LU8)可能按照需要而直接和/或经由另一LU(LU1-LU8)与控制单元200进行通信。通信接口104实现LU(LU1-LU8)的远程命令、控制和监视。

部署在照明系统100各处的传感器102捕捉数据。该数据可以涉及到传感器102的范围内的各种特征、对象、特性(FOI)。原始数据和/或预处理数据(称作“数据”)可能被传送至控制单元200、云端20或其它网络设备以便进行如下文所讨论的处理。

应当理解的是,图1和/或1a的实施例可以被部署(或者被修改以部署)在建筑物中,例如办公楼、医院等。连接的照明系统对于实施例而言并非是必要的,例如,传感器等可以在没有连接的照明系统或者与之不同的情况下被安装。然而,发明人发现,连接的照明系统的基础设施使其自身很好地适于安装本发明的实施例。

图2示出了另一实施例的节点10的系统组件。在该实施例中,节点10包括至少一个传感器12(例如,PIR传感器、GPS传感器或加速度计,等等)。在其它实施例中,FOI可以包括(1)显示传感器12在数据被查询时的即时输出的即时特征,例如包括光水平、二元运动、CO2浓度、温度、湿度、二元PIR和房门状态(开/关);(2)记录传感器12的输出在最近一分钟内变化次数的计数特征(运动净计数、PIR净计数和房门净计数);(3)显示传感器12在某个时段内的输出的平均值的平均特征(占用传感器、声音平均值(例如每5秒钟))。

来自传感器12的数据可以被CPU 13处理和/或存储在本地存储器14中。节点10随后可以例如使用局域网(LAN)接口16来将信息发送至LAN中的其它节点10,发送至控制单元200,和/或使用广域网(WAN)接口15通过WAN发送至云端20。

在其它实施例中,上文提到的在节点10、云端20和控制单元200之间的通信接口中的一些可以包括诸如以太网线缆的有线接口或者诸如Wi-Fi或ZigBee接口的无线接口等。

图1、1a和2中的节点10可以是IoT(物联网)设备。IoT是指日益增长的以用于互联网连接的IP地址为特征的物理对象的网络,以及在这些对象和其它支持互联网的设备和系统之间发生的通信。IoT是嵌入有电子器件、软件、传感器、致动器和使得这些对象能够连接并交换数据的网络连接的物理设备、车辆、家用电器和其它项的网络。每个物体都能够通过其嵌入计算系统而被唯一识别,但是能够在现有因特网基础设施内交互操作。

IoT允许对象被感测或者跨现有网络基础设施被远程控制,这产生了将物理世界更直接地集成到基于计算机的系统之中的机会,并且在减少人为介入之外还带来了有所提高的效率、准确性和经济利益。当IoT通过传感器和致动器而被增强时,该技术就成为了更普遍类型的信息物理系统的实例,其还涵盖了诸如智能网格、虚拟电厂、智能家居、智慧运输和智能城市之类的技术。

节点10(即,IoT设备)可以处理来自传感器12的原始数据,或者可以将原始数据的处理转移至诸如云端20的远程设备或与之共享。

在描述处理功能可以如何在云端20与节点10和/或控制单元200之间以及在节点10和/或控制单元200之内划分之前,首先描述CNN网络可以如何在云端20被集中应用。就此而言,图3描绘了一种多层架构,其中第一层对应于在ROI(参见图1)中部署的节点10(被示出为天花板中的照明单元)。图3示出了办公室设置中的示例,该办公室中的占用率要被确定。在该情况下,层1对应于一个节点10在给定时刻T的输出。图3中描绘的特定滤波器具有表示要被扫描的给定空间区域的给定维度。应当理解的是,可以使用其它维度。在应用ReLU函数之后,利用输入数据的值的此滤波器的卷积被用来获得层2的值(其随后被用于后续层,等等)。卷积使用加权窗口来执行。还请注意,以上描述并不包括子采样阶段,然而该阶段也可以被包括。

现在已经描述了集中式系统的以上描述,对处理功能可以如何在云端20和节点10和/或控制单元200(即,IoT网络)之间划分进行描述。这在图4中被描绘。这里,CNN的第一层可以被部署到IoT网络,从而对应于该层的操作在本地(即,在节点10和/或控制单元200中)执行。

识别两种类型的节点10:感测节点和聚集节点。感测节点的功能局限于感测并将所感测值发送(如其在之前所解释的集中式实施例中那样)至聚集节点。聚集节点的功能包括以下动作中的一个或几个:(i)感测;(ii)从紧密定位的节点10接收所感测值;(iii)利用加权窗口对从紧密定位的节点接收的数据执行卷积;(iv)对卷积输出应用sigmoid函数;(v)对输出进行子采样;(vi)向云端发送包含在步骤(iii)、(iv)和(v)之后的每个值的消息。

云端从聚集节点10接收的输入被输入到CNN的更高层。在该示例中,其将是层2的输入。

感测节点10和聚集节点10之间的通信可以通过使用LAN接口16来进行。聚集节点10和云端12之间的通信可以使用LAN接口16来达到网关(未示出),该网关包括其自己的WAN网络接口,或者可替换地直接在WAN接口15上进行。

现在描述作为软件定义的深度学习的一部分的向节点10和/或控制单元200(即,IoT网络)部署ML参数的过程。如上文提到的,一旦已经学习了经训练的ML模型22,云端20就将具有IoT网络的模式(通常是深度学习算法或机器学习算法)。在该阶段,云端20必须对经训练的ML模型22被部署到IoT网络的方式进行优化以获得最佳性能。

图5中描绘了整体过程。作为输入,该过程接收经训练的ML模型22、节点10的物理位置(例如,节点在户外放置的GPS坐标,或者节点10在建筑物中的布局),以及节点10的LAN连接矩阵(即,节点可以如何互相通信——这可以包括物理层的信号强度、MAC层的分组吞吐量、路由结构等)。

给定这些输入,ML单元21将确定适当的感测节点10和聚集节点10。该步骤可以使用集群算法来完成。集群是将人群或数据点划分为多个群组而使得相同群组中的数据点与相同群组中的其它数据点的相似性高于与其它群组中的数据点的相似性的任务。其目的是将具有相似特点的群组进行隔离并且将它们指派为集群。存在许多类型的集群算法,诸如连接模型、重心模型、分布模型和密度模型,以及诸如k均值和层级之类的集群类型。

在本发明的一个实施例中,使用k均值集群算法,其考虑到聚集节点10的数量完全被ML模型22的窗口大小以及整体通信限制(能够从节点10的网络向云端20发送的字节和消息的量)确定。给定聚集节点10的初始数量,节点10随后可以根据给定网格和关于物理位置及LAN连接的使用数据来放置,以确定使得本地通信最小化且性能最大化的节点10的集合。

一旦聚集节点10被确定,则ML单元21将确定哪些感测节点10应当将其数据发送至哪些聚集节点10。可替换地,ML单元21可以确定聚集节点10应当订阅哪些感测节点10以接收它们的数据。这是以聚集节点10接收由周边节点10所生成的以及生成下一层(包括子采样)的输入数据所要求的所有数据的方式来确定的。此外,ML单元21将确定每个聚集节点10需要利用所收集的数据实现的操作(通常为卷积、Sigmoid函数、子采样),并且随后确定用于向云端20发送消息的逻辑。

最终步骤是以具体配置向网络中的每个节点10发送消息:感测或聚集节点;所感测信息应当如何分布;聚集节点10中的子ML模型。在通信中还可以存在一些握手,以确保云端20的信息已经被节点10正确接收(可靠性)。

现在对上文所描述的集中式和分布式深度学习处理方法的优势和劣势进行比较。就此而言,描述分布式架构的三种不同配置:

(1)其中第一CNN层在IoT网络中运行且具有大小为2×2的加权窗口,

(2)其中第一CNN层在IoT网络中运行且具有大小为w×w的加权窗口,

(3)其中前两个CNN层在IoT网络中运行且具有大小为2×2的加权窗口。

请注意,该计算不包括子采样的影响,而是仅包括由于类似于如以上示图中所示的窗口大小所导致的类似缩减。

对性能分析加以分析,该分析考虑到(1)从节点到云端的通信开销,(2)本地通信要求以及(3)IoT网络中的深度学习迭代。

以下是用以估计将由本发明的方面和实施例实现的带宽节约的分析构架。给定发光器的网状网络(如图1所示),经一跳进行的本地通信可以在该分析构架中被概括为任何跳数。

2×2和3×3大小的卷积窗口可以单纯由本地通信所处理。图6示出了为了在这样的窗口上计算卷积而需要交换的本地通信消息的数量。也就是说,在2×2个节点10的情况下为三个,而在3×3个节点10的情况下为八个。对于节点10(例如,户外照明系统100中的发光器)的n×n网格,2×2卷积窗口的数量由(n − 1)2给出。

接下来,考虑节点10的n×n网格的聚集节点10的数量。这取决于n是奇数还是偶数。如果n为奇数,则聚集节点10的数量由((n-1)/2)2给出,而如果n为偶数,则聚集节点的数量由(n/2)2所给出。

参见计算卷积窗口和聚集节点10的数量的示例的图7(6)。本地通信消息的总数量小于或等于(w2 – 1) ×窗口数量。聚集节点10到网关的消息的总数量等于聚集节点10的数量×窗口数量(每个窗口产生一个值)。对个2×2窗口来说,一个聚集节点10最多处理四个窗口。

如上文描述的实施例所示,将功能移至IoT网络(例如,节点10和/或户外照明系统100)使得从IoT网络到云端20的通信明显减少,这是因为(多个)第一层在IoT网络中被执行,这已经抽取了较高级别的特征。虽然这使得本地通信的价格有所升高,然而,因为其是本地的,所以只要节点10包括LAN网络接口16这就不会涉及到高成本。利用本发明的这些方面,对来自传感器12的原始数据的处理中的一些可以轻易地在聚集节点10和/或控制单元200中分布并处理。这意味着需要中央地完成或者在云端20完成的计算较少。

在另一实施例中,加权窗口——卷积滤波器——的权重可以由函数Wxo,yo (x, y)(空间窗口)所定义,其中(xo, yo)确定该函数在哪里被采样,而(x, y)则确定被应用于关于(xo, yo)位于位置(x, y)的传感器的输出的权重。图8中示出了这样的函数Wxo,yo (x, y)的一个示例。例如,该实施例在智能照明网络中是有利的,其中ML算法需要发光器并未被定位于的位置处的传感器数据。在这样的情况下,来自最近发光器的值可以被用来对所期望点处的值进行插值。

通过考虑到以上空间窗口运行在由传感器12生成的输入数据上并且仅在一些位置(xo, yo)处获得了将与CNN中的第二层的输入相对应的几个输出值,该步骤可以与CNN子采样步骤相结合。这样的函数非常有用,因为节点10(例如,LU的一部分)中的传感器12实际上可能不是根据完全规则的网格来分布。

在另一实施例中,针对层1的输入可以通过输出在一时段内计算的来自传感器21的值而获得,其等于相加、最大值、平均值。这意味着CNN网络的第一层并不需要仅在原始传感器数据上工作。节点10也可以利用如平均值、最大值、最小值等的聚集值来工作。

在涉及枪击检测的另一实施例中,节点10可以通过利用时间窗口执行卷积而运行CNN的第一层。就此而言,节点10包括作为麦克风的传感器,该第一层对应于利用来自枪击扳机的信号进行的卷积。

在又一实施例中,加权窗口的初始权重根据给定ML模型而被预先初始化,该给定ML模型是针对所要计算的信号定制的。更详细地,以上实施例已经覆盖了跨节点10部署模型,并且随后使用聚集节点10和感测节点10执行ML模型。该实施例是这两个步骤之前的过程:学习该ML模型的最优参数。在该实施例中,确定被用来跨节点10学习ML模型自身的数据。更具体地,生成用于迭代学习过程的初始种子值。

在各种实施例中,输入/通信接口可以从各种可替代方案中选取。例如,输入接口可以是针对局域网或者例如因特网的广域网的网络接口、针对内部或外部数据存储的存储接口、键盘等等。

存储或存储器可以被实施为电子存储器、闪存或者磁性存储器、硬盘等。存储可以包括共同构成该存储的多个分立存储器。存储也可以是临时存储器,也就是RAM。在临时存储的情况下。

通常,云端12、节点10、控制单元200各自包括执行存储于其中的适当软件的微处理器、CPU或处理器电路;例如,该软件可能已经被下载和/或存储在相对应的存储器中,例如,诸如RAM的易失性存储器或者诸如闪存(未单独示出)的非易失性存储器。可替换地,这样的设备可以整体或部分地以可编程逻辑来实施,例如被实施为现场可编程门阵列(FPGA),或者可以整体或部分地被实施为所谓的专用集成电路(ASIC),即针对它们的特定用途而定制的集成电路(IC)。例如,电路可以例如使用诸如Verilog、VHDL等的硬件描述语言而以CMOS来实施。处理器电路可以以分布式方式来实施,例如被实施为多个子处理器电路。存储可以在多个分布式子存储上分布。存储器的部分或全部可以是电子存储器、磁性存储器等。例如,存储可以具有易失性和非易失性部分。存储的部分可以是只读的。

在一个实施例中,户外照明系统100可以包括具有不同模态的传感器102。户外照明系统100可以具有层次级别,例如其中设备与相对应的更高或更低级别的设备进行通信的层次结构。请注意,在照明系统中,多个发光器和传感器在控制区中被分组在一起。在同一房间内可以定义多个控制区,例如一个控制区针对接近窗户的发光器而一个则针对其余发光器。接下来,多个房间位于同一楼层,等等。在每个层次级别有一个本地控制区。本地控制器可以扮演多个层次级别的控制器的角色。

如本领域技术人员将会清楚明白的,可能有许多不同的方式来执行以上所描述的方法。例如,步骤的顺序可以有所变化或者一些步骤可以并行执行。此外,可以在步骤之间插入其它方法步骤。所插入的步骤可以表示诸如本文所描述方法的改进,或者可能与该方法无关。

根据本发明的方法可以使用软件来执行,其中软件包括用于使得处理器系统执行该方法的指令。软件可以仅包括该系统的特定子实体所采取的那些步骤。软件可以被存储在适当存储介质中,诸如硬盘、软盘、存储器、光盘等。软件可以沿着线或无线或者使用例如因特网的数据网络而作为信号发送。该软件可能被使得可供下载和/或可供在服务器上远程使用。根据本发明的方法可以使用被布置以配置可编程逻辑来执行该方法的比特流来执行,所述可编程逻辑例如现场可编程门阵列(FPGA)。

将理解,本发明还扩展至适于将本发明加以实践的计算机程序,尤其是载体之上或之中的计算机程序。该程序可以为源代码、目标代码、源代码和目标代码中间的代码(诸如部分编译形式)的形式,或者为适于在实施根据本发明的方法时所使用的任何其它形式。有关计算机程序产品的实施例包括对应于所阐述的方法中的至少一个的每个处理步骤的计算机可执行指令。这些指令可以被细分为子程序和/或存储在一个或多个可以以静态或动态方式进行链接的文件中。有关计算机程序产品的另一个实施例包括对应于所阐述的系统和/或产品中的至少一个的每个构件的计算机可执行指令。

例如,计算机可读介质具有包括计算机程序的可写入部分,该计算机程序包括用于使得处理器系统执行根据实施例的本发明的方法的指令。该计算机程序可以在计算机可读介质上被体现为物理标记或者利用计算机可读介质的磁化来体现。然而,也可构想任何其它适当的实施例。此外,将理解,虽然计算机可读介质可能是光盘,但是计算机可读介质可以是任何适当的计算机可读介质,诸如硬盘、固态存储器、闪存等,并且可以是非可记录的或可记录的。计算机程序包括用于使得处理器系统执行方法的指令。

例如,在一实施例中,节点10、控制单元200和/或云端20可以包括处理器电路和存储器电路,该处理器被布置为执行存储在该存储器电路中的软件。例如,该处理器电路可以是Intel Core i7处理器、ARM Cortex-R8等。该存储器电路可以是ROM电路或非易失性存储器,例如闪存。该存储器电路可以是易失性存储器,例如SRAM存储器。在后者的情况下,验证设备可以包括被布置为提供软件的非易失性软件接口,例如硬盘、网络接口等。

以上详细描述已经阐述了本发明可以采用的许多形式中的一小部分。以上示例仅是本发明各个方面的若干可能实施例的说明,其中本领域技术人员在阅读并理解本发明和附图时将意识到等效的改变和/或修改。特别地,关于以上所描述的组件(设备、系统等)执行的各种功能,除非另外有所指示,否则用来描述这样的组件的术语(包括对“构件”的引用)意在对应于执行所描述组件的指定功能的(即,在功能上等效的)任何组件,诸如硬件或者其组合,即使其在结构上与所公开的执行本公开所说明的实施方式中的功能的结构并不等同。

本发明的原理可以被实施为硬件、固件和软件的任何组合。此外,软件优选地被实施为以有形方式体现在由某些设备和/或设备组合或者其一部分构成的程序存储单元或计算机可读存储介质上的应用程序。该应用程序可以被上传到包括任何适当架构的机器并且被其所执行。计算机平台还可以包括操作系统和微结构代码。本文所描述的各种处理和功能可以是微结构代码的一部分或者是应用程序的一部分,或者是它们的任何组合,其可以由CPU所执行,而无论这样的计算机或处理器是否被明确示出。此外,各种其它外围单元可以连接至该计算机平台,诸如附加的数据存储单元和打印单元。

虽然已经关于若干实施方式中的仅一种图示和/或描述了本发明的特定特征,但是如针对任何给定或特定应用可能期望并有利的,这样的特征可以与其它实施方式的一个或多个其它特征组合。此外,除非另外有所指定,否则对于单数组件或项的引用意在包含两个或更多这样的组件或项。而且,就在详细描述和/或权利要求中所使用的术语“包括”、“涵盖”、“具有”、“有着”、“带有”或者其变化形式的程度而言,这样的术语意在是以类似于术语“包括”的方式而是包含性的。

已经参考优选实施例对本发明进行了描述。然而,在阅读并理解之前的详细描述时将会意识到修改和改变。本发明意在被理解为包括所有这样的修改和改变。本发明的范围意在仅由包括所有等同形式的权利要求所限定。

在权利要求中,括号中的标记指代示例性实施例的附图中的附图标记或者实施例的公式,以由此提高权利要求的可理解度。这些标记不应被理解为对权利要求的限制。

21页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:射频电路中的增材制造技术(AMT)法拉第边界

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!