CN110999263B - Iot装置集群的分层数据处理 - Google Patents

Iot装置集群的分层数据处理 Download PDF

Info

Publication number
CN110999263B
CN110999263B CN201880049215.9A CN201880049215A CN110999263B CN 110999263 B CN110999263 B CN 110999263B CN 201880049215 A CN201880049215 A CN 201880049215A CN 110999263 B CN110999263 B CN 110999263B
Authority
CN
China
Prior art keywords
data
model
layer
data processing
local
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201880049215.9A
Other languages
English (en)
Other versions
CN110999263A (zh
Inventor
S·M·卡萨拉戈德
A·卡纳
C·Y-R·郭
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Amazon Technologies Inc
Original Assignee
Amazon Technologies Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US15/660,859 external-priority patent/US11108575B2/en
Priority claimed from US15/660,860 external-priority patent/US11902396B2/en
Priority claimed from US15/660,857 external-priority patent/US10980085B2/en
Application filed by Amazon Technologies Inc filed Critical Amazon Technologies Inc
Priority to CN202210823633.7A priority Critical patent/CN115086326A/zh
Publication of CN110999263A publication Critical patent/CN110999263A/zh
Application granted granted Critical
Publication of CN110999263B publication Critical patent/CN110999263B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/14Network analysis or design
    • H04L41/147Network analysis or design for predicting network behaviour
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/70Services for machine-to-machine communication [M2M] or machine type communication [MTC]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Computer And Data Communications (AREA)

Abstract

网络的边缘装置收集数据。边缘装置可以确定是使用局部数据处理模型处理所述数据还是将所述数据发送到层装置。所述层装置可以从所述边缘装置接收所述数据,并且确定是否使用所述层装置的较高层数据处理模型处理所述数据。如果所述层装置确定处理所述数据,则所述层装置使用所述较高层数据处理模型处理所述数据,基于所述处理生成结果,并且将所述结果发送到端点(例如,发送回到所述边缘装置、发送到另一层装置或发送到控制装置)。如果所述层装置确定不处理所述数据,则所述层装置可以将所述数据发送到另一层装置,以供另一个较高层模型处理。

Description

IOT装置集群的分层数据处理
技术领域
本公开涉及IOT装置集群的分层数据处理。
背景技术
物联网(IoT)是对在现有的互联网基础设施内分散在全球范围内的计算装置的互连赋予的一个短语。IoT装置可以嵌入各种产品中,如家用电器、制造装置、打印机、汽车、恒温器、智能交通信号灯、摄像机等。
在一些情况下,IoT装置利用与中枢装置的连接成为装置的局部网络的一部分。中枢装置通常是比IoT装置强大的装置,其能够执行较多计算并且速度较快。例如,房屋可以具有中枢装置,其形成与多个不同传感器IoT装置的无线连接,如用于测量不同房间的温度的恒温器或不同房间中的运动传感器。中枢装置可以接收温度值或运动数据,并且将温度值或运动数据传输到一个或多个其它端点。如果中枢装置连接到互联网,则所述值可以传输到提供商网络或用户装置,如用户的智能电话。
一些IoT装置强大到足以实施相对简单的数据处理模型来分析数据并且生成结果,如预测。然而,这种预测的可靠性可能不如在更强大的计算装置上运行的较大模型的可靠性高。例如,由服务提供商网络或服务器计算机实现的大型模型可能使用数亿个参数,而在IoT装置上运行的模型可能仅使用数十万个参数。此外,给定IoT装置处的模型接收的数据的量和类型可能会随时间变化。例如,摄像机可以捕获其未被明确训练的新颖物体的图像或在其未被明确训练的新颖照明条件下捕获图像。因此,即使相机上的模型可能已经基于足够的训练数据进行了初始训练,所述模型也可能会失去准确性,并且随时间变得越来越无用。
发明内容
根据本公开的一个方面,提供了一种系统,其包括连接到网络的一个或多个层装置,所述一个或多个层装置包括相应数据处理模型,其中所述层装置中的个别层装置被配置成:接收数据;基于与所述数据处理模型和较高层数据处理模型中的至少一个相关联的准则确定是使用所述层装置的所述数据处理模型处理所述数据还是将所述数据发送到连接到所述网络的一个或多个其它层装置;并且响应于所述确定而使用所述数据处理模型处理所述数据,或将所述数据发送到所述一个或多个其它层装置。
根据本公开的又一个方面,提供了一种方法,其包括连接到网络的一个或多个层装置,所述一个或多个层装置包括相应数据处理模型,其中所述层装置中的个别层装置执行以下:接收数据;基于与所述数据处理模型和较高层数据处理模型中的至少一个相关联的准则确定是使用所述层装置的所述数据处理模型处理所述数据还是将所述数据发送到连接到所述网络的一个或多个其它层装置;以及响应于所述确定而使用所述数据处理模型处理所述数据,或将所述数据发送到所述一个或多个其它层装置。
根据本公开的又一个方面,提供了一种非暂时性计算机可读存储介质,其存储程序指令,所述程序指令当由计算装置执行时使所述计算装置实施本公开的方法。
附图说明
图1展示了根据一些实施例的用于基于中枢装置和提供商网络的局部模型来实施拆分预测的系统。
图2是根据一些实施例的实施局部模型和结果管理器的示例数据中枢装置的框图。
图3是展示了根据一些实施例的基于中枢装置和提供商网络的局部模型来实施拆分预测的流程图。
图4展示了根据一些实施例的用于基于边缘装置和提供商网络的局部模型来实施拆分预测的系统。
图5A是展示了根据一些实施例的基于边缘装置和提供商网络的局部模型来实施拆分预测的流程图。
图5B是展示了根据一些实施例的提供商网络的数据处理服务的流程图,所述提供商网络生成结果并且将所述结果传输到远程网络的计算装置。
图6展示了根据一些实施例的用于通过提供商网络来更新边缘装置的模型的系统。
图7是根据一些实施例的实施局部模型的边缘装置的框图。
图8A是展示了根据一些实施例的通过提供商网络来更新边缘装置的模型的流程图。
图8B是展示了根据一些实施例的更新边缘装置的局部模型的流程图。
图9展示了根据一些实施例的用于通过中枢装置来更新边缘装置的模型的系统。
图10是展示了根据一些实施例的通过中枢装置来更新边缘装置的模型的流程图。
图11是根据一些实施例的实施多个局部模型的边缘装置的框图。
图12是展示了根据一些实施例的选择局部模型以在边缘装置处处理数据的流程图。
图13展示了根据一些实施例的用于在网络的多个装置之间实施模型分层的系统。
图14是根据一些实施例的实施模型和层管理器的边缘装置的框图。
图15是展示了根据一些实施例的在网络的多个装置之间实施模型分层的流程图。
图16是展示了根据一些实施例的在网络的多个装置之间实施模型分层以生成预测的流程图。
图17展示了根据一些实施例的用于通过将不同数据部分发送到不同模型来实施模型分层的系统。
图18是展示了根据一些实施例的通过将不同数据部分发送到不同模型来实施模型分层的流程图。
图19是展示了根据一些实施例的实施本文所述的技术中的一些或全部的示例计算机系统的框图。
尽管本文通过举例的方式针对若干实施例和说明性附图描述了实施例,但是本领域技术人员将认识到,实施例不限于所描述的实施例或附图。应理解的是,附图和对其的详细描述并非旨在将实施例限制于所公开的特定形式,而相反,意图是覆盖落入由所附权利要求限定的精神和范围内的所有修改、等效物和替代方案。本文所使用的标题只是出于组织目的,而不意图用于限制本说明书或权利要求的范围。如在整个本申请中使用的,词语“可以(may)”以允许的意义(即,意指“有可能”),而不是强制意义(即,意指“必须”)使用。类似地,词语“包含(include、including和includes)”意指“包含但不限于”。
具体实施方式
本文所述的系统和方法实施用于配置可连接互联网的装置(例如,IoT装置)的局部网络以实施数据处理模型来快速生成局部结果(例如,局部预测),同时还利用在基于相同数据生成较准确的结果的功能较强大的装置(例如,提供商网络的服务器)上运行的较大、较准确的数据处理模型的技术。
在实施例中,远程提供商网络和局部网络装置(例如,中枢装置或边缘装置)可以用于生成拆分预测。例如,局部网络的中枢装置可以从传感器接收数据并且使用局部模型(例如,数据处理模型)处理数据以生成局部预测。传感器数据也可以传输到远程提供商网络,所述远程提供商网络返回另一预测。如果从提供商网络返回的预测较准确,则可以通过返回的预测来校正局部预测。
在一些实施例中,提供商网络和/或中枢装置可以基于由边缘装置收集的数据来更新边缘装置的局部数据模型。例如,提供商网络和/或中枢装置可以周期性地从边缘装置接收数据,并且基于新数据生成对局部模型的新更新。提供商网络和/或中枢装置可以然后将更新部署到相应边缘装置。在实施例中,部署局部模型的全新版本以替代相应边缘装置的当前模型。
在实施例中,可以在网络的多个相应边缘装置(例如,层装置)之间实施多个模型。一些层装置可以与其它层装置相比实施较大、较准确的模型。当层装置(例如,从传感器)接收到数据时,层装置可以决定使用层装置的局部模型处理数据还是将数据发送到具有用于处理数据的较大、较准确的模型的另一层装置。
如本文所使用的,模型可以是适合于处理输入数据以生成一个或多个结果的任何数据处理模型。例如,模型可以包含神经网络、深度神经网络、静态或动态神经网络、存储器网络和/或适合于处理所收集的数据并且生成一个或多个结果/预测的任何其它模型架构。因此,在实施例中,模型可以包含适合于处理数据并且生成一个或多个结果的任何计算模型、机器学习模型或人工智能模型。此外,在一些实施例中,不同装置(例如,边缘装置、层装置、中枢装置、服务器等)可以包含不同的模型架构和/或基于相同或不同的训练数据来训练。
在各个实施例中,可以使用任何合适的安全通信协议来保护在任何装置(例如,边缘装置、层装置、中枢装置、服务器等)之间以及不同网络(例如,局部网络、蜂窝网络、提供商网络)的装置之间发送的数据。例如,可以使用安全套接字层(SSL)、传输层安全性(TLS)、安全超文本传输协议(HTTPS)和/或任何其它合适的网络安全协议对数据进行加密。
在实施例中,可以将由数据收集器(例如,传感器)收集的任何数据转换成训练数据,并且将其用于训练模型和/或生成对模型的更新。因此,分析数据和/或基于分析生成模型可以包含创建训练数据和基于训练数据来创建对模型的修改和/或更新。
术语“预测”在本文中用于各个实例。然而,在各个实施例和附图中,可以用任何其它合适的结果(例如,非预测结果)代替预测。结果可以是基于从传感器接收的数据的识别。例如,结果可以是基于使用图像分类器进行的图像数据的分析的对特定人、动物或物体的识别。在一些实施例中,可以使用词语“预测”代替“结果”,反之亦然。
此外,预测可以是识别对象、环境、人、动物或随时间改变状态或位置的任何其它东西的预测成效或预测未来状态的结果。例如,预测可以是距当前时间一天的区域或位置的温度。作为另一实例,预测可以是距当前时间5秒的物体的位置。在实施例中,预测可以是围绕图像中某些类型的对象的框,或者可以是系统对一个或多个环境条件和/或事件的所生成的响应。
图1展示了根据一些实施例的用于基于中枢装置和提供商网络的局部模型来实施拆分预测的系统。在实施例中,图1所描绘的中枢装置100、提供商网络102、局部网络108、边缘装置106和任何其它部件可以与图2-18中的任一个所描绘的中枢装置、提供商网络、边缘装置和任何其它部件相同或可以包含与其相同的部件中的一个或多个。在实施例中,图1-16中的任一个所描绘的中枢装置、提供商网络、局部网络、边缘装置、层装置和其它部件可以是与图1-16中的任一个所描绘的中枢装置、提供商网络、局部网络、边缘装置、层装置和其它部件相同的部件(例如,相同类型的部件)或包含与其相同的部件中的一个或多个。
虽然图1-16可以描述局部网络的单个中枢装置,但是在各个实施例中,可使用任何数量的中枢装置代替单个中枢装置。例如,在一些实施例中,多个中枢装置可用作冗余中枢装置,以提高系统的容错性。如果一个或多个中枢装置发生故障,则剩余的一个或多个中枢装置可以继续如所描述的那样操作。因此,在实施例中,中枢装置可以与一个或多个其它中枢装置同步状态(例如,以周期性间隔或在检测到如添加新中枢装置或中枢装置故障的事件时)。
在一些实施例中,代替只是一个中枢装置,两个或更多个中枢装置可共同执行各种所描述的操作。因此,两个或更多个中枢装置可各自执行所描述的操作的特定部分(例如,分布式处理)。在其它实施例中,冗余和分布式处理的组合可通过两个或更多个中枢装置来实施。在实施例中,中枢装置可以代表本文所述的任何计算装置,包含边缘装置或层装置。
在所描绘的实施例中,中枢装置100包含局部模型108,所述边缘模型可以从一个或多个边缘装置106接收数据并且处理接收到的数据。局部模型108可以包含对接收到的数据执行一个或多个操作的软件和/或硬件。在实施例中,一个或多个操作可以包含分析数据、基于分析修改数据和/或基于分析生成结果(例如,预测、新数据、一个或多个命令或其它某一结果)。例如,结果可以是局部预测110。在实施例中,局部预测可以由结果管理器112接收。
在一些实施例中,中枢装置100(例如,结果管理器112)也可以将从一个或多个边缘装置106接收的数据传输到提供商网络102。可以通过广域网114(例如,互联网)来传输数据。因此,提供商网络102可以被认为是远程提供商网络,并且可以位于不同于中枢装置的另一物理位置,如另一城市、州或国家。在实施例中,提供商网络102包含数据处理服务116,所述数据处理服务包含模型118,所述模型从中枢装置112接收数据并且处理接收到的数据。
类似于局部模型108,模型118可以包含对接收到的数据执行一个或多个操作的软件和/或硬件。在实施例中,一个或多个操作可以包含分析数据、基于分析修改数据和/或基于分析生成结果(例如,预测、新数据、一个或多个命令或其它某一结果)。例如,结果可以是预测120。数据处理服务116可以然后通过网络114而将预测120传输到中枢装置100。
在实施例中,结果管理器112接收预测120。结果管理器112可以然后基于预测120和/或局部预测110确定是否校正局部预测110。如果结果管理器112确定不校正局部预测110,则结果管理器112基于局部预测110生成响应。例如,结果管理器112可以生成使中枢装置100执行动作的命令或其它消息。在实施例中,结果管理器112可以将命令或消息发送到端点,如局部网络104的另一边缘装置或局部网络104外部的另一计算装置。
如果结果管理器112确定校正局部预测110,则结果管理器112将基于预测120来校正局部预测110。例如,结果管理器112可以基于预测120修改局部预测110。在一些实施例中,为了校正局部预测110,结果管理器112用预测120替代局部预测110。
在实施例中,结果管理器112然后基于经过校正的预测生成响应。例如,结果管理器112可以生成使中枢装置100执行动作的命令或其它消息。在实施例中,结果管理器112可以将命令或消息发送到端点,如局部网络104的另一边缘装置或局部网络104外部的另一计算装置。
在一些实施例中,为了基于预测120和/或局部预测110确定是否校正局部预测110,结果管理器112可以首先确定局部预测110的置信水平和预测120的置信水平。如果局部预测110的置信水平低于预测120的置信水平,则结果管理器112可以确定校正局部结果。在实施例中,如果局部预测110的置信水平等于或大于预测120的置信水平,则结果管理器112可以确定不校正局部结果。
在一些实施例中,结果管理器112可以确定局部预测110的置信水平是否高于阈值水平。若是,则结果管理器112可以在从提供商网络102接收预测120之前或者在基于预测120和/或局部预测110确定是否校正局部预测110之前基于局部预测110生成初始响应。在一些实施例中,结果管理器112确定预测120的置信水平,并且如果局部预测110的置信水平低于预测120的置信水平,则结果管理器112确定校正局部结果。在这样的实施例中,基于经过校正的结果的响应可以不同于初始响应。
因此,在实施例中,结果管理器112可以使用局部预测110生成响应,而无需等待接收预测120。此外,结果管理器112可能不校正局部预测110,并且可能不使用预测120。例如,在结果管理器112使用局部预测110生成响应之后,结果管理器112然后可以忽略在以后的时间接收的预测120。在一些实施例中,结果管理器可以使用接收到的预测120来更新和/或修改局部模型108,以基于在稍后时间接收的附加数据来提高局部模型108在进行预测中的准确性。
在实施例中,中枢装置100和边缘装置106可以各自连接到同一局部网络104。在各个实施例中,中枢装置100和边缘装置106中的一个或多个可以能够通过有线线路和/或通过无线传输而将数据发送到局部网络104的任何其它装置。
如所描绘的实施例中所示,每一边缘装置110包含数据收集器122。数据收集器122可以包含用于收集和/或生成数据并且将数据发送到中枢装置100的任何合适的装置。例如,数据收集器122可以是检测一个或多个环境条件(例如,温度、湿度等)并且基于所检测的环境条件生成和/或收集环境数据的环境传感器装置。因此,所生成的数据可以指示边缘装置106或局部网络104的一个或多个环境条件。
在实施例中,数据收集器122可以是检测网络的性能和/或其它操作方面(例如,网络带宽或流量、数据源装置的功耗等)并且基于所检测的性能生成数据的传感器或其它装置。因此,所生成的数据可以指示局部网络和/或边缘装置106的性能或其它操作方面。在实施例中,所生成的数据可以发送到中枢装置100,也可以发送到提供商网络102。
在一些实施例中,由数据收集器122收集的数据是时间序列数据集,并且数据收集器122对时间序列数据集执行一个或多个操作,以生成将传输到中枢装置100的数据。例如,数据收集器122可以基于所收集的数据的两个或更多个数据值来计算平均值,以便生成将传输的数据。
在实施例中,提供商网络102还可以包含部署服务124,所述部署服务生成局部模型108和/或结果管理器112和/或将其部署到中枢装置100。在一些实施例中,部署服务124可以基于描述中枢装置100的一个或多个性能规格和/或能力的数据生成局部模型108和/或结果管理器112。
通过如上所述实施拆分预测,与中枢装置等待从提供商网络接收预测的时间相比,可以在较少量的时间内提供基于局部预测的初始响应。此外,通过提供校正局部预测的能力,中枢装置可以利用提供商网络的较强大的模型来更改或改变由中枢装置生成的响应。因此,以上技术实现基于局部预测的较快响应,同时还利用从提供商网络接收的较准确的预测,所述预测可以用于校正局部预测并且对响应作出适当调整。
在实施例中,边缘装置可以是通过一个或多个传感器而从环境收集数据的任何类型的计算装置。例如,边缘装置可以是麦克风、照相机、温度感测装置、湿度检测器、振动检测器、烟雾检测器、运动传感器等。在实施例中,边缘装置可以是能够与其它计算装置通信的任何类型的智能IoT装置。
图2是根据一些实施例的实施局部模型和结果管理器的示例中枢装置的框图。在所描绘的实施例中,中枢装置100包含处理器200、存储器202、电池204和网络接口206。存储器202包含结果管理器112和局部模型108。处理器200可以是任何合适的处理器,如图形处理单元(GPU)、GPU加速器、现场可编程门阵列(FPGA)、数字信号处理器(DSP)、DSP加速器或专用集成电路(ASIC)。在实施例中,ASIC还可以包含图2的存储器202和/或任何其它组件。
在一些实施例中,存储器202包含可执行指令,并且处理器208执行指令以便实施结果管理器112和/或局部模型108。在实施例中,网络接口206将中枢装置100通信耦合到局部网络。因此,中枢装置100可以通过网络接口206而将数据传输到边缘装置并且从边缘装置接收数据。在实施例中,网络接口206可通过有线或无线接口而传输数据。
在一些实施例中,与提供商网络102用于实施数据处理服务116和/或模型118的部件(例如,处理器和存储器)相比,中枢装置及其部件中的一个或多个(例如,处理器和存储器)可以相对轻便且较小。例如,提供商网络102的一个或多个服务器用于实施数据处理服务116和/或模型118的一个或多个存储器和/或一个或多个处理器的大小可以比中枢装置100使用的存储器和/或处理器的大小大至少一个量级。因此,在实施例中,数据处理服务116的模型118可以与局部模型108相比以较高置信水平并且以较快速率产生较准确的结果(例如,预测)。
图3是展示了根据一些实施例的基于中枢装置和提供商网络的局部模型来实施拆分预测的流程图。在实施例中,中枢装置可以是边缘装置、层装置或适合于执行所描述的功能的任何其它类型的计算装置。在框302处,中枢装置从局部网络的一个或多个边缘装置接收数据。在框304处,中枢装置使用中枢装置的局部模型对数据执行一个或多个操作。在框306处,中枢装置还将数据发送到远程提供商网络。
在实施例中,框304和/或308的步骤中的至少一些可以与框306和/或框310大约同时或并行发生。在实施例中,响应于从局部网络的一个或多个边缘装置接收到数据,中枢装置将数据发送到远程提供商,并且将数据发送到局部模型以开始使用局部模型对数据执行一个或多个操作。
在框308处,中枢装置和/或局部模型响应于执行一个或多个操作而生成局部预测。在框310处,中枢装置从远程提供商网络接收预测,其中所述预测基于发送到远程提供商网络的数据。在实施例中,中枢装置响应于局部预测的生成而将局部预测发送到结果管理器,和/或中枢装置响应于从提供商网络接收到预测而将预测从提供商网络发送到结果管理器。因此,结果管理器可以首先接收局部预测或首先接收预测,这取决于局部预测或预测何时首先就绪。
在框312处,中枢装置(例如,结果管理器)确定是否校正局部预测以生成经过校正的预测。在实施例中,结果管理器基于接收到的结果和局部结果确定是否校正局部结果以生成经过校正的结果。结果管理器可以然后基于所述确定生成响应。例如,结果管理器可以确定局部结果的置信水平,并且确定结果的置信水平。如果局部结果的置信水平低于结果的置信水平,则结果管理器可以校正局部结果以生成经过校正的结果。
在一些实施例中,接收到的结果包含对中枢装置的数据处理模型的更新。因此,中枢装置可以使用从提供商网络接收的更新来更新局部模型。
如果中枢装置确定不校正局部预测,则在框314处,中枢装置基于局部预测生成响应。如果中枢装置确定校正局部预测,则在框316处,中枢装置校正局部预测。在框318处,中枢装置基于经过校正的预测生成响应。
图4展示了根据一些实施例的用于基于边缘装置和提供商网络的局部模型来实施拆分预测的系统。边缘装置400包含结果管理器112、局部模型108和一个或多个数据收集器122。提供商网络102包含数据处理服务116,所述数据处理服务包含模型118。提供商网络102还包含部署服务124。
在所描绘的实施例中,边缘装置400包含局部模型108,所述局部模型可以从一个或多个数据收集器122(例如,传感器)接收数据并且处理接收到的数据。局部模型108可以包含对接收到的数据执行一个或多个操作的软件和/或硬件。在实施例中,一个或多个操作可以包含分析数据、基于分析修改数据和/或基于分析生成结果(例如,预测、新数据、一个或多个命令或其它某一结果)。例如,结果可以是局部预测110。在实施例中,局部预测110可以由结果管理器112接收。
在一些实施例中,边缘装置400(例如,结果管理器112)也可以将从一个或多个数据收集器122接收的数据传输到提供商网络102。可以通过广域网114(例如,互联网)来传输数据。因此,提供商网络102可以被认为是远程提供商网络,并且可以位于不同于边缘装置的另一物理位置,如另一城市、州或国家。在实施例中,数据处理服务116和/或模型118接收从中枢装置112发送的数据并且处理接收到的数据。
如上所述,模型118可以包含对接收到的数据执行一个或多个操作的软件和/或硬件。一个或多个操作可以包含分析数据、基于分析修改数据和/或基于分析生成结果(例如,预测120、新数据、一个或多个命令或其它某一结果)。数据处理服务116可以然后通过网络114而将预测120传输到边缘装置400。
在实施例中,结果管理器112接收预测120。结果管理器112可以然后基于预测120和/或局部预测110确定是否校正局部预测110。如果结果管理器112确定不校正局部预测110,则结果管理器112基于局部预测110生成响应。例如,结果管理器112可以生成使边缘装置400执行动作的命令或其它消息。在实施例中,结果管理器112可以将命令或消息发送到端点,如局部网络104的另一边缘装置、局部网络104外部的另一计算装置或边缘装置400内的另一端点。
如果结果管理器112确定校正局部预测110,则结果管理器112将基于预测120来校正局部预测110。例如,结果管理器112可以基于预测120修改局部预测110。在一些实施例中,为了校正局部预测110,结果管理器112用预测120替代局部预测110。
在实施例中,结果管理器112然后基于经过校正的预测生成响应。例如,结果管理器112可以生成使边缘装置400执行动作的命令或其它消息。在实施例中,结果管理器112可以将命令或消息发送到端点,如局部网络104的另一边缘装置、局部网络104外部的另一计算装置或边缘装置400内的端点。
在一些实施例中,为了基于预测120和/或局部预测110确定是否校正局部预测110,结果管理器112可以首先确定局部预测110的置信水平和预测120的置信水平。如果局部预测110的置信水平低于预测120的置信水平,则结果管理器112可以确定校正局部结果。在实施例中,如果局部预测110的置信水平等于或大于预测120的置信水平,则结果管理器112可以确定不校正局部结果。
在一些实施例中,结果管理器112可以确定局部预测110的置信水平是否高于阈值水平。若是,则结果管理器112可以在从提供商网络102接收预测120之前或者在基于预测120和/或局部预测110确定是否校正局部预测110之前基于局部预测110生成初始响应。在一些实施例中,结果管理器112确定预测120的置信水平,并且如果局部预测110的置信水平低于预测120的置信水平,则结果管理器112确定校正局部结果。在这样的实施例中,基于经过校正的结果的响应可以不同于初始响应。
在实施例中,边缘装置400和一个或多个其它边缘装置106可各自连接到同一局部网络。在一些实施例中,由数据模型接收的数据中的至少一些是从一个或多个其它边缘装置106接收。在各个实施例中,边缘装置400和边缘装置106中的一个或多个可以能够通过有线线路和/或通过无线传输而将数据发送到局部网络104的任何其它装置。
在实施例中,数据收集器122可以包含用于收集和/或生成数据的任何合适的装置。例如,数据收集器122可以是检测一个或多个环境条件(例如,温度、湿度等)并且基于所检测的环境条件生成和/或收集环境数据的环境传感器装置。因此,所生成的数据可以指示边缘装置106或局部网络104的一个或多个环境条件。
在实施例中,数据收集器122可以是检测边缘装置400的性能和/或其它操作方面(例如,网络带宽或流量、边缘装置的功耗等)并且基于所检测的性能生成数据的传感器或其它装置。因此,所生成的数据可以指示边缘装置400的性能或其它操作方面。在实施例中,所生成的数据可以发送到提供商网络102。
在一些实施例中,由数据收集器122收集的数据是时间序列数据集,并且数据收集器122对时间序列数据集执行一个或多个操作,以生成将发送到局部模型108的数据。例如,数据收集器122可以基于所收集的数据的两个或更多个数据值来计算平均值,以便生成将发送的数据。
在实施例中,提供商网络102还可以包含部署服务124,所述部署服务生成局部模型108和/或结果管理器112和/或将其部署到边缘装置400。在一些实施例中,部署服务124可以基于描述边缘装置400的一个或多个性能规格和/或能力的数据生成局部模型108和/或结果管理器112。
通过如上所述实施拆分预测,与边缘装置等待从提供商网络接收预测的时间相比,可以在较少量的时间内提供基于局部预测的初始响应。此外,通过提供校正局部预测的能力,边缘装置可以利用提供商网络的较强大的模型(例如,使用较大数量的参数和/或计算能力)来更改或改变由边缘装置生成的响应。因此,以上技术实现基于局部预测的较快响应,同时还利用从提供商网络接收的较准确的预测,所述预测可以用于校正局部预测并且对响应作出适当调整。
图5A是展示了根据一些实施例的基于边缘装置和提供商网络的局部模型来实施拆分预测的流程图。在框502处,边缘装置从一个或多个数据收集器接收数据。在框504处,边缘装置使用边缘装置的局部模型对数据执行一个或多个操作。在框506处,边缘装置还将数据发送到远程提供商网络。
在实施例中,框504和/或508的步骤中的至少一些可以与框506和/或框510大约同时或并行发生。在实施例中,响应于从一个或多个数据收集器接收到数据,边缘装置将数据发送到远程提供商,并且将数据发送到局部模型以开始使用局部模型对数据执行一个或多个操作。
在框508处,边缘装置和/或局部模型响应于执行一个或多个操作而生成局部预测。在框510处,边缘装置从远程提供商网络接收预测,其中所述预测基于发送到远程提供商网络的数据。在实施例中,边缘装置响应于局部预测的生成而将局部预测发送到结果管理器,和/或边缘装置响应于从提供商网络接收到预测而将预测从提供商网络发送到结果管理器。因此,结果管理器可以首先接收局部预测或首先接收预测,这取决于局部预测或预测何时首先就绪。
在框512处,边缘装置(例如,结果管理器)确定是否校正局部预测以生成经过校正的预测。如果边缘装置确定不校正局部预测,则在框514处,边缘装置基于局部预测生成响应。如果边缘装置确定校正局部预测,则在框516处,边缘装置校正局部预测。在框518处,边缘装置基于经过校正的预测生成响应。
图5B是展示了根据一些实施例的提供商网络的数据处理服务的流程图,所述提供商网络生成结果并且将所述结果传输到远程网络的计算装置。在实施例中,计算装置可以是边缘装置、中枢装置、层装置或适合于执行所描述的功能的任何其它计算装置。
在框520处,数据处理服务从远程网络的计算装置(例如,边缘装置400或中枢装置100)获得数据。在实施例中,可以从计算装置的一个或多个数据收集器(例如,传感器)收集数据。在实施例中,边缘装置400可以被认为是远程网络的计算装置,即使边缘装置400可以是远程网络的唯一边缘装置也是如此。
在框522处,数据处理服务从计算装置的远程数据处理模型获得远程结果,其中远程结果基于数据。因此,计算装置的数据处理模型可能已经生成远程结果并且将其传输到数据处理服务。
在框524处,数据处理服务通过数据处理服务的数据处理模型对数据执行一个或多个操作以生成结果。在框526处,数据处理服务修改结果。例如,数据处理服务可以基于远程结果与结果之间的一个或多个差异修改结果。在一些实施例中,数据处理服务可以基于远程结果的置信水平与结果的置信水平之间的差异修改结果。
在实施例中,可以通过以下方式修改结果:至少基于远程结果与结果之间的差异确定一个或多个增量值;以及然后通过用一个或多个增量值替代结果(例如,按梯度或递增改变来替代)来修改结果。在实施例中,传输到远程网络的计算装置的一个或多个增量值的大小小于被一个或多个增量值替代的结果的大小。因此,在将结果发送到远程网络的计算装置时使用较少带宽,从而优化结果的传输。
在一些实施例中,数据处理服务还可以基于远程结果和结果生成对计算装置的远程数据处理模型的更新,并且然后将对远程数据处理模型的更新传输到远程网络的计算装置。计算装置可以然后使用所述更新来更新远程数据处理模型。例如,数据处理服务可以基于远程结果与结果之间的一个或多个差异确定为了提高远程数据处理模型的准确性而需要进行的一个或多个改变。仅发送对远程数据处理模型的改变,而不是发送新的远程数据处理模型。因此,较少带宽用于更新远程数据处理模型。
图6展示了根据一些实施例的用于通过提供商网络来更新边缘装置的模型的系统。在所描绘的实施例中,边缘装置600连接到局部网络104,并且包含局部模型602和数据收集器122。提供商网络102包含模型训练服务604,所述模型训练服务生成一个或多个模型更新606。
边缘装置中的一个或多个可以从相应数据收集器122收集数据,并且通过局部网络104和网络114而将数据发送到提供商网络。例如,边缘装置600a可以收集数据608a并将其发送到提供商网络102,并且边缘装置600n可以收集数据608n并将其发送到提供商网络102。
在实施例中,提供商网络102的模型训练服务604可以从边缘装置600中的一个或多个接收数据608。例如,模型训练服务604可以接收数据608a和数据608n。模型训练服务604可以然后分析接收到的数据。模型训练服务604可以然后基于对数据608a的分析生成对局部模型602a的局部模型更新606a,并且基于对数据608n的分析生成对局部模型602n的局部模型更新606n。
在实施例中,局部模型更新606a被配置成更新局部模型602a,并且局部模型更新606n被配置成更新局部模型602n。例如,局部模型更新606a,606n中的每一个可以包含计算机可执行指令和/或其它数据,其中计算机可执行指令和/或其它数据被配置成加载到存储器中并且在由相应边缘装置600a、600n的处理器执行时更新对应局部模型602a、602n。
响应于局部模型更新606a、606n的生成,模型训练服务604可以将局部模型更新606a、606n部署到局部网络104和/或将局部模型更新606a、606n部署到相应边缘装置600a、600n。虽然以上实例仅包含两个模型更新,但是可以按上述方式由模型训练服务604基于接收到的数据生成任何其它数量的局部模型更新606并且将其部署到相应边缘装置600。
在实施例中,模型更新中的一个或多个可以包含被配置成替代相应局部模型的相应局部模型的一个或多个新版本。因此,代替只是修改现有的局部模型,在一些情况下,将通过作为较新版本的不同模型替代所述现有局部模型。
在一些实施例中,边缘装置600中的一个或多个可以包含模型训练器612,所述模型训练器生成局部模型更新614,并且应用局部模型更新614以更新局部模型602。例如,边缘装置600可以从数据收集器122接收数据并且分析数据。边缘装置600可以然后基于对数据的分析生成对局部模型602的更新614,其中更新614被配置成更新局部模型602。模型训练器612可以然后将更新614应用到局部模型602。
在实施例中,边缘装置600还可以将从数据收集器122接收的数据发送到模型训练服务604。边缘装置600可以然后从模型训练服务接收另一局部模型更新606,其中局部模型更新606基于从数据收集器122接收的数据。边缘装置600和/或模型训练器612可以然后将局部模型更新606应用到局部模型602。
在一些实施例中,局部模型更新606是局部模型的新版本,并且边缘装置600和/或模型训练器612用局部模型的新版本替代局部模型602替代。在实施例中,边缘装置600和/或模型训练器612从数据收集器122接收初始数据,并且分析初始数据以初始生成局部模型602。在其它实施例中,边缘装置600最初从提供商网络102的模型训练服务接收局部模型602。
在实施例中,模型训练器612从模型训练服务604接收全局数据,其中全局数据基于由一个或多个其它远程边缘装置610的一个或多个其它边缘装置收集的数据。模型训练器612可以然后分析全局数据并且基于对全局数据的分析生成更新614。
在一些实施例中,从模型训练服务接收的局部模型更新606基于从数据收集器122接收的数据与由一个或多个其它边缘装置610的一个或多个其它边缘装置收集的全局数据两者。例如,模型训练服务604可以基于从数据收集器122接收的数据以及由一个或多个其它边缘装置610的一个或多个其它边缘装置收集的全局数据生成局部模型更新606。
在实施例中,模型训练器612和/或边缘装置600定期从提供商网络102的模型训练服务604接收附加局部模型更新606,其中附加局部模型更新606是至少基于由数据收集器122收集并定期发送到提供商网络102的模型训练服务604的附加数据。例如,模型训练服务604可以每天一次使用数据收集器122来收集附加数据并且将附加数据发送到提供商网络102的模型训练服务604。作为响应,模型训练服务604生成附加局部模型更新606,并且将其发送到模型训练器612和/或边缘装置600。
通过使用以上技术,边缘装置可以通过应用更新614来更新局部模型以提高局部模型的准确性。然后,可以从模型训练服务接收另一局部模型更新606,并且边缘装置可以应用局部模型更新606以更进一步提高局部模型的准确性。这是可能的,因为模型训练服务604可以使用较大模型和/或使用附加训练数据生成边缘装置不可用的局部模型更新606。
如上所述,模型训练服务可以最初创建给定局部模型并且将其部署到远程网络和/或边缘装置。例如,模型训练服务可以为远程网络的相应边缘装置中的一个或多个生成局部模型中的一个或多个,并且然后将一个或多个局部模型部署到远程网络。在实施例中,模型训练服务可以基于拓扑数据或从将实施局部模型的对应边缘装置接收的任何其它数据生成给定局部模型。
在实施例中,模型训练服务可以从一个或多个其它边缘装置610的一个或多个其它边缘装置接收全局数据,分析全局数据,并且基于对接收到的数据的分析以及对全局数据的分析生成对局部模型的一个或多个更新。可以然后将更新部署到相应边缘装置。例如,由来自许多不同家庭和/或企业的相机捕获的图像可以用于增强用于生成局部模型的训练数据。
在一些实施例中,模型训练服务可以在对接收到的数据的分析以及对全局数据的分析期间将不同权重应用到接收到的数据中的至少一些和全局数据中的至少一些。例如,在对接收到的数据的分析以及对全局数据的分析期间,与应用到全局数据的权重相比,可以将较高权重应用到从局部网络接收的数据。因此,由模型训练服务从局部网络接收的一定量的数据与由模型训练服务接收的相同量的全局数据相比可以对局部模型的训练具有较大影响。
相反,在一些实施例中,在对接收到的数据的分析以及对全局数据的分析期间,与应用到从局部网络接收的数据的权重相比,可以将较高权重应用到全局数据。因此,由模型训练服务接收的一定量的全局数据与由模型训练服务从局部网络接收的相同量的数据相比可以对局部模型的训练具有较大影响。
在实施例中,对来自两个或更多个不同边缘装置的数据的分析可以用于生成特定边缘装置的局部模型的更新。因此,可以不仅基于来自特定边缘装置的数据,还基于来自同一局部网络和/或其它网络的一个或多个其它边缘装置的数据,来更新和/或训练特定边缘装置的一个局部模型。换句话说,对特定局部数据处理模型的更新中的至少一个的生成可以基于对模型训练服务从两个或更多个不同边缘装置接收的数据的一部分的分析。
在一些实施例中,模型训练服务可以定期和/或响应于触发事件而为相应局部数据处理模型中的一个或多个生成一个或多个附加更新并且将其部署到一个或多个相应边缘装置。例如,可以每小时、每天或每周或者响应于模型训练服务接收到更新相应边缘装置的局部模型中的一个或多个的命令,而基于接收到的数据生成更新并且将其部署到边缘装置。
图7是根据一些实施例的实施局部模型的边缘装置的框图。在所描绘的实施例中,边缘装置600包含处理器200、存储器202、电池204和网络接口206。存储器202包含局部模型602。
在一些实施例中,存储器202包含可执行指令,并且处理器208执行指令以便实施局部模型108。在实施例中,网络接口206将边缘装置600通信耦合到局部网络。因此,边缘装置600通过网络接口206而将数据传输到中枢装置100。在实施例中,网络接口206可通过有线或无线接口而传输数据。
在一些实施例中,与提供商网络用于实施模型训练服务的部件(例如,处理器和存储器)相比,边缘装置及其部件中的一个或多个(例如,处理器和存储器)可以相对轻便且较小。例如,提供商网络的一个或多个服务器用于实施模型训练服务的一个或多个存储器和/或一个或多个处理器的大小可以比边缘装置使用的存储器和/处理器的大小大至少一个数量级。
图8A是展示了根据一些实施例的通过提供商网络来更新边缘装置的模型的流程图。在框802处,提供商网络的模型训练服务从远程网络的一个或多个相应边缘装置接收数据。在框804处,模型训练服务分析接收到的数据。
在框806处,模型训练服务基于对接收到的数据的分析生成对一个或多个局部模型的更新,其中一个或多个更新被配置成更新相应边缘装置处的一个或多个局部模型。在实施例中,模型训练服务基于一个或多个相应边缘装置的状态和/或远程网络的状态生成对相应局部模型处的一个或多个相应局部模型的一个或多个更新。边缘装置的状态可以包含边缘装置的一个或多个性能和/或硬件规格(例如,空闲存储器的量、处理器速度等)、边缘装置的健康状态或用于表示边缘装置的状态的任何其它合适的参数。在一些实施例中,边缘装置或其它装置可以将描述边缘装置的状态的一个或多个配置文件提供到模型训练服务。远程网络的状态可以是网络的任何计算装置之间的可用带宽、网络的计算装置中的一个或多个的状态或用于表示网络的状态的任何其它合适的参数。在框808处,模型训练服务将一个或多个更新部署到远程网络和/或相应边缘装置。
图8B是展示了根据一些实施例的更新边缘装置的局部模型的流程图。在框810处,边缘装置(例如,模型训练器)从数据收集器接收数据。在实施例中,边缘装置接收的数据中的至少一些可以是来自其它位置处的一个或多个其它边缘装置的全局数据。例如,提供商网络可以收集全局数据并且将其发送到边缘装置。在框812处,边缘装置分析接收到的数据。在框814处,边缘装置基于对接收到的数据的分析生成对局部模型的更新,其中所述更新被配置成更新边缘装置的局部模型。
在框816处,边缘装置将更新应用到局部模型。在框818处,边缘装置将数据发送到远程提供商网络的模型训练服务。在实施例中,边缘装置可以大约同时和/或并行将数据发送到模型训练服务并且从数据收集器接收数据。在框820处,边缘装置从模型训练服务接收对局部模型的另一局部模型更新,其中另一局部模型更新基于来自其它位置的一个或多个其它边缘装置的数据和/或全局数据。在框822处,边缘装置将另一局部模型更新应用到局部模型。在实施例中,另一更新可以包含对由边缘装置生成的更新的一个或多个改变(例如,增量值或梯度值)。
图9展示了根据一些实施例的用于通过中枢装置来更新边缘装置的模型的系统。在所描绘的实施例中,边缘装置600连接到局部网络104,并且包含局部模型602和数据收集器122。中枢装置100连接到局部网络104,并且包含生成一个或多个模型更新606的模型训练器902。
边缘装置中的一个或多个可以从相应数据收集器122收集数据,并且通过局部网络104而将数据发送到中枢装置100。例如,边缘装置600a可以收集数据608a并将其发送到中枢装置100,并且边缘装置600n可以收集并
在实施例中,中枢装置100的模型训练器902可以从边缘装置600中的一个或多个接收数据608。例如,模型训练器902可以接收数据608a和数据608n。模型训练器902可以然后分析接收到的数据。模型训练器902可以然后基于对数据608a的分析生成对局部模型602a的局部模型更新606a,并且基于对数据608n的分析生成对局部模型602n的局部模型更新606n。
在实施例中,局部模型更新606a被配置成更新局部模型602a,并且局部模型更新606n被配置成更新局部模型602n。例如,局部模型更新606a,606n中的每一个可以包含计算机可执行指令和/或其它数据,其中计算机可执行指令和/或其它数据被配置成加载到存储器中并且在由相应边缘装置600a、600n的处理器执行时更新对应局部模型602a、602n。
响应于局部模型更新606a、606n的生成,模型训练器902可以将局部模型更新606a、606n部署到相应边缘装置600a、600n。虽然以上实例仅包含两个模型更新,但是可以按上述方式由模型训练器902基于接收到的数据生成任何其它数量的局部模型更新606并且将其部署到相应边缘装置600。
在一些实施例中,由模型训练器接收的数据可以发送到提供商网络102,以用于分析和生成局部模型更新606。模型训练器可以然后从提供商网络102接收一个或多个局部模型更新606。可以然后将局部模型更新606部署到一个或多个相应边缘装置600。因此,在实施例中,可以存在多层模型训练器和/或模型训练服务。在每一较高层,模型训练器和/或模型训练服务可以较大,可以访问较大训练数据集,并且可以生成被配置成与前一层或其它较低层相比提供结果的较高水平的准确性和置信度的局部模型更新和/或局部模型。
在实施例中,模型更新中的一个或多个可以包含被配置成替代相应局部模型的相应局部模型的一个或多个新版本。因此,代替只是修改现有的局部模型,在一些情况下,将通过作为较新版本的不同模型替代所述现有局部模型。
在一些实施例中,模型训练器可以最初创建给定局部模型并且将其部署到边缘装置。例如,模型训练器可以为相应边缘装置中的一个或多个生成局部模型中的一个或多个,并且然后将一个或多个局部模型部署到相应边缘装置。在实施例中,模型训练器可以基于拓扑数据或从将实施局部模型的对应边缘装置接收的任何其它数据生成给定局部模型。
在实施例中,模型训练器可以从一个或多个其它远程网络接收全局数据(例如,由其它网络的一个或多个其它边缘装置收集),分析全局数据,并且基于对接收到的数据的分析以及对全局数据的分析生成对局部模型的一个或多个更新。可以然后将更新部署到相应边缘装置。例如,由来自许多不同家庭和/或企业的相机捕获的图像可以用于增强用于生成局部模型的训练数据。
在一些实施例中,模型训练器可以在对接收到的数据的分析以及对全局数据的分析期间将不同权重应用到接收到的数据中的至少一些和全局数据中的至少一些。例如,在对接收到的数据的分析以及对全局数据的分析期间,与应用到全局数据的权重相比,可以将较高权重应用到从局部网络接收的数据。因此,由模型训练器服务从局部网络接收的一定量的数据与由模型训练器接收的相同量的全局数据相比可以对局部模型的训练具有较大影响。
相反,在一些实施例中,在对接收到的数据的分析以及对全局数据的分析期间,与应用到从局部网络接收的数据的权重相比,可以将较高权重应用到全局数据。因此,由模型训练器接收的一定量的全局数据与由模型训练器从局部网络接收的相同量的数据相比可以对局部模型的训练具有较大影响。
在实施例中,对来自两个或更多个不同边缘装置的数据的分析可以用于生成特定边缘装置的局部模型的更新。因此,可以不仅基于来自特定边缘装置的数据,还基于来自同一局部网络和/或其它网络的一个或多个其它边缘装置的数据,来更新和/或训练特定边缘装置的一个局部模型。换句话说,对特定局部数据处理模型的更新中的至少一个的生成可以基于对模型训练器从两个或更多个不同边缘装置接收的数据的一部分的分析。
在一些实施例中,模型训练器可以定期和/或响应于触发事件而为相应局部数据处理模型中的一个或多个生成一个或多个附加更新并且将其部署到一个或多个相应边缘装置。例如,可以每小时、每天或每周或者响应于模型训练器接收到更新相应边缘装置的局部模型中的一个或多个的命令,而基于接收到的数据生成更新并且将其部署到边缘装置。
图10是展示了根据一些实施例的通过中枢装置来更新边缘装置的模型的流程图。在框1002处,中枢装置的模型训练器从局部网络的一个或多个相应边缘装置接收数据。在框1004处,模型训练器分析接收到的数据。
在框1006处,模型训练器基于对接收到的数据的分析生成对一个或多个局部模型的更新,其中一个或多个更新被配置成更新相应边缘装置处的一个或多个局部模型。在框1008处,模型训练器将一个或多个更新部署到相应边缘装置。
在实施例中,提供商网络的模型训练服务和/或模型训练器可以获得装置配置文件(例如,从边缘装置或其它源),所述装置配置文件可以用于优化和/或生成发送到边缘装置并应用到局部模型以更新局部模型的局部模型更新。例如,装置配置文件可以包含一个或多个参数,其中一个或多个参数指示边缘装置的一个或多个软件和/或硬件配置(例如,存储器的大小、处理器速度等)。
在一些实施例中,提供商网络的模型训练服务和/或模型训练器可以获得一个或多个边缘装置的状态的一个或多个指示。指示可以用于优化和/或生成相应局部模型更新,其中相应局部模型更新发送到边缘装置并且应用到局部模型以更新局部模型。例如,指示可以包含边缘装置的连接的可靠性、边缘装置处可用的空闲存储器的量、边缘装置处可用的非易失性存储的量、边缘装置的健康状态(例如,相对于先前健康状态或相对于局部网络的其它边缘装置)以及边缘装置的状态的任何其它合适的指示,其中状态可以影响如何优化和/或生成局部模型。此外,在一些实施例中,可以基于边缘装置的装置配置文件和/或基于一个或多个边缘装置的状态的指示生成、优化和/或修改模型训练服务和/或提供商网络的模型。
图11是根据一些实施例的实施多个局部模型的边缘装置的框图。在所描绘的实施例中,边缘装置600包含局部模型管理器1102,所述局部模型管理器确定在任何给定时间将使用局部模型602a-602n中的哪一个处理从一个或多个数据收集器122接收的数据。
在实施例中,边缘装置可以按与上文针对附图所描述相同或相似的方式接收对其局部模型602中的一个或多个的更新和/或可以接收作为所部署的模型的局部模型602。例如,提供商网络的模型训练服务和/或中枢装置的模型训练器可以从边缘装置600接收数据,分析接收到的数据,基于分析来为相应局部模型602中的一个或多个生成一个或多个更新,并且将一个或多个更新部署到相应局部模型602中的一个或多个。
在一些实施例中,局部模型602相互不同(例如,对给定输入数据执行一个或多个相互不同的操作),并且不同局部模型602被配置成处理由至少一个边缘装置在不同时间接收的不同数据。因此,局部模型管理器1102可以将特定时间段分配给局部模型中的每一个以处理接收到的数据。例如,局部模型602a可以由局部模型管理器1102选择以处理由数据收集器122在早晨(am)数小时内接收的数据,并且局部模型602n可以由局部模型管理器1102选择以处理由数据收集器122在夜晚(pm)数小时接收的数据。
在实施例中,局部模型管理器1102可以响应于检测到不同环境条件而选择局部模型122中的不同局部模型。例如,当局部模型管理器1102确定由数据收集器122检测的日光量高于阈值水平时,则局部模型管理器1102可以选择模型602a以处理从数据收集器122接收的数据。相反,当局部模型管理器1102确定由数据收集器122检测的日光量等于或低于阈值水平时,则局部模型管理器1102可以选择模型602n以处理从数据收集器122接收的数据。
在各个实施例中,不同的模型602可以具有不同架构,并且使用不同机器学习技术和/或数据集来训练。例如,提供商网络的模型训练服务、中枢装置的模型训练器和/或边缘装置的局部模型训练器可以使用集成方法来使用不同机器学习算法生成不同模型(例如,神经网络、深度神经网络、记忆网络等)。通过使用两个或更多个模型处理相同的所收集的数据,可以使用来自多个模型(例如,多数或法定人数)的结果的共识选择结果/预测。
在实施例中,增强和/或堆叠可用于利用边缘装置上的多个不同模型。例如,增强可以包含通过训练每一新模型以重视先前模型误分类的训练实例生成多个模型。堆叠可以包含组合来自多个预测模型的信息以生成新模型(例如,堆叠模型或二阶模型)。在一些实施例中,堆叠模型的性能优于个别模型中的每一个,这是因堆叠模型对性能最好(例如,与其它模型相比,作出较准确的预测)的每一基本模型的结果使用或给予较多权重的能力和/或堆叠模型对性能最差(例如,比其它模型相比,作出较不准确的预测)的每一基本模型的结果撤销权重或使用较少权重的能力所致。在实施例中,基本模型越相互不同,堆叠模型可以提供的结果越准确。
图12是展示了根据一些实施例的选择局部模型以在边缘装置处处理数据的流程图。在框1202处,提供商网络的模型训练服务和/或中枢装置的模型训练器将两个或更多个局部模型部署到局部网络的边缘装置。在框1204处,边缘装置接收数据。例如,边缘装置可以从边缘装置的一个或多个传感器(例如,环境传感器)和/或从局部网络的一个或多个其它边缘装置接收数据。
在框1206处,局部模型管理器至少基于当前时间选择边缘装置的局部模型之一以处理数据。在一些实施例中,局部模型管理器至少基于环境条件(例如,由传感器收集的环境数据)选择边缘装置的局部模型之一以处理数据。在一些实施例中,局部模型管理器至少基于边缘装置的状态选择边缘装置的局部模型之一以处理数据。例如,如果边缘装置的电池的剩余使用寿命低于阈值时间量,则局部模型管理器可以选择消耗最少量的电力的模型之一以处理数据,如从需要边缘装置的GPU来执行的模型切换到仅需要边缘装置的CPU来执行的模型。在框1208处,边缘装置使用所选择的局部模型处理数据。
图13展示了根据一些实施例的用于在网络的多个装置之间实施模型分层的系统。在所描绘的实施例中,局部网络包含边缘装置1300和层装置1302。如图所示,给定边缘装置1300或层装置1302包含模型1304。模型1304可以按与上文针对局部模型108所描述相同或相似的方式操作。因此,模型1304可以包含对接收到的数据执行一个或多个操作的软件和/或硬件。在实施例中,一个或多个操作可以包含分析数据、基于分析修改数据和/或基于分析生成结果(例如,预测、新数据、一个或多个命令或其它某一结果)。例如,结果可以是局部预测。在一些实施例中,局部预测可以由层管理器1306接收。
在一些实施例中,层装置1302a(例如,层管理器1306a)也可以将从一个或多个层装置1302b-1302n接收的数据传输到提供商网络102。可以通过广域网114(例如,互联网)来传输数据。因此,提供商网络102可以被认为是远程提供商网络,并且可以位于不同于中枢装置的另一物理位置,如另一城市、州或国家。在实施例中,提供商网络102包含层服务1308以及从层装置1302a接收数据并且处理接收到的数据的模型1310。
在一些实施例中,层装置1302a按类似于如上所述的中枢装置的方式表现。在其它实施例中,层装置1302a可以实际上包含多个不同层装置1302,所述多个不同层装置各自可以与提供商网络通信。因此,在实施例中,可以实施层和边缘装置任何级别的冗余或任何其它拓扑方案和/或任何数量的层和边缘装置。例如,可以将层装置和/或边缘装置布置在网络拓扑中,其中所述网络拓扑包含以下中的一个或多个:树拓扑、网状拓扑、星形拓扑、完全连接的拓扑、部分连接的拓扑、总线拓扑、环形拓扑、线形拓扑、点对点拓扑、菊花链拓扑和混合拓扑。
在实施例中,边缘装置1300包含数据收集器122。边缘装置可以通过数据收集器而收集数据1312。在一些实施例中,层管理器1306可以接收和/或分析数据1312。层管理器1306可以确定是使用边缘装置的模型1304处理数据1312,还是将数据1312发送到网络104的一个或多个层装置1302。取决于确定,层管理器1306或者使用模型1304处理数据1312,或者将数据1312发送到层装置1302。
在实施例中,层装置1302从边缘装置1302接收数据1312,并且层装置1302的层管理器1306确定是否使用层装置1302的较高层模型1304处理数据。在一些实施例中,层装置1302的层管理器1306接收和/或分析数据1312。在实施例中,较高层模型1304大于边缘装置1300的模型1304和/或针对给定数据1312,与边缘装置1300的模型1304相比以较高置信水平生成结果(例如,预测)。在实施例中,层装置具有较大存储器和/或较快处理器。
响应于确定使用较高层模型1304处理数据,层装置1302的层管理器1306使用较高层模型1304处理数据,基于所述处理生成结果1314,并且将结果1314发送到边缘装置1300和/或另一端点。在实施例中,边缘装置1300响应于接收到结果1314而执行动作和/或生成命令。
响应于确定不使用较高层模型1304处理数据1312,层装置1302的层管理器1306将数据1312发送到另一层装置1302(或到提供商网络102),其中在另一层装置处,数据由另一模型处理以生成结果1314。在实施例中,层装置1302然后从另一层装置1302(或从提供商网络102)接收结果1314,其中结果基于数据1312。层装置1302可以然后将结果1314发送到边缘装置1300和/或另一端点。
在实施例中,边缘装置(例如,边缘装置的层管理器)可以基于准则确定是使用边缘装置的模型处理数据,还是将数据发送到层装置。准则可以包含以下中的一个或多个:模型处理数据所需的能量的量、模型处理数据所需的时间的量、从模型更新以来的时间的量、可用于将数据发送到层装置的带宽的量(在一些情况下,不包含带宽)以及边缘装置与局部网络的一个或多个其它装置之间的网络连接的可靠性(例如,存在连接的时间量对没有连接的时间量)。
例如,边缘装置的层管理器可以确定模型处理数据所需的时间和/或能量的量高于阈值量,并且作为响应,将数据发送到层装置。相反,边缘装置的层管理器可以确定模型处理数据所需的时间和/或能量的量不高于阈值量,并且作为响应,使用边缘装置的模型处理数据。
在实施例中,层管理器可以确定从模型更新以来的时间的量高于阈值量,并且作为响应,将数据发送到层装置。相反,边缘装置的层管理器可以确定从模型更新以来的时间的量不高于阈值量,并且作为响应,使用边缘装置的模型处理数据。
在一些实施例中,层管理器可以确定可用于将数据发送到层装置的带宽的量高于阈值,并且作为响应,将数据发送到层装置。相反,边缘装置的层管理器可以确定可用于将数据发送到层装置的带宽的量不高于阈值,并且作为响应,使用边缘装置的模型处理数据。
在实施例中,以上准则也可以由层装置的层管理器用于确定是使用层装置的模型处理数据还是将数据发送到另一层装置(或提供商网络)。因此,在实施例中,可以通过一个或多个层装置来传播数据,直到特定层装置处理数据为止。在特定的层装置处理数据之后,来自处理的结果可以传播回边缘装置和/或一个或多个其它端点。
在一些实施例中,边缘装置或层装置可以基于使用边缘装置或层装置的模型而进行的数据1312的处理生成预测。层管理器可以然后确定预测的置信水平是否低于阈值置信水平。若是,则层管理器可以将数据发送到层装置(或另一层装置)以由层装置(或其它层装置)的模型处理。若否,则边缘装置或层装置可以使用预测(例如,以生成响应),而无需将数据发送到层装置(或另一层装置)上。
因此,在实施例中,数据可以传播到一个或多个层装置,直到预测的置信水平不低于阈值水平为止。在那时,预测可以传播回边缘装置和/或一个或多个其它端点。在实施例中,提供商网络可以包含最高层模型。因此,数据可以传播的最远处可以是提供商网络的模型1310。因此,在实施例中,层服务1308如上文针对层管理器1306所描述而作出确定。
图14是根据一些实施例的实施模型和层管理器的边缘装置的框图。在所描绘的实施例中,边缘装置1300包含处理器200、存储器202、电池204、网络接口206以及一个或多个数据收集器122。存储器202包含层管理器1306和模型1304。在实施例中,层装置1302可以包含针对边缘装置1300而描述的部件中的一些或全部。
在一些实施例中,存储器202包含可执行指令,并且处理器208执行指令以便实施层管理器1306和/或模型1304。在实施例中,网络接口206将边缘装置1300通信耦合到局部网络。因此,边缘装置1300可以通过网络接口206而将数据传输到层装置并且从层装置接收数据。在实施例中,网络接口206可通过有线或无线接口而传输数据。
在一些实施例中,与层装置或提供商网络用于实施模型的部件(例如,处理器和存储器)相比,边缘装置及其部件中的一个或多个(例如,处理器和存储器)可以相对轻便且较小。例如,层装置或提供商网络的服务器使用的一个或多个存储器和/或一个或多个处理器的大小可以比边缘装置1300使用的存储器和/处理器的大小大至少一个数量级。
因此,在实施例中,层装置或提供商网络的模型可以与边缘装置的模型相比以较高置信水平并且以较快速率产生较准确的结果(例如,预测)。在实施例中,层装置在层装置的层次结构中越高,模型越大。因此,每一层级的提高可以与一个或多个较低层级相比以较高置信水平和/或以较快速率提供较准确的结果。
图15是展示了根据一些实施例的在网络的多个装置之间实施模型分层的流程图。在框1502处,数据收集器在边缘装置处收集数据。在框1504处,层管理器确定是使用边缘装置的模型处理数据还是将数据发送到连接到网络的层装置。如果层管理器确定在边缘装置处处理数据,则在框1506处,边缘装置使用边缘装置的模型处理数据。然后,在框1514处,模型生成结果。
如果层管理器确定不在边缘装置处处理数据,则在框1508处,边缘装置将数据发送到层装置。在实施例中,层装置可以位于层装置的层次结构的最底层级处。在框1510处,层装置的层管理器确定是使用层装置的模型处理数据还是将数据发送到连接到网络的另一层装置。在实施例中,另一层装置可以位于距当前层装置较高的下一层级处。如果层管理器确定将数据发送到另一层装置,则过程返回到框1508。
如果层管理器确定使用层装置的模型处理数据,则在框1512处,层装置使用层装置的模型处理数据。然后,在框1514处,层装置的模型生成结果。在框1516处,层装置将结果发送到端点。例如,层装置可以将结果发送回其接收的数据所来自的层装置或边缘装置,和/或层装置可以将结果发送到一个或多个其它端点。
图16是展示了根据一些实施例的在网络的多个装置之间实施模型分层以生成预测的流程图。在框1602处,数据收集器在边缘装置处收集数据。在框1604处,边缘装置的模型处理数据。在实施例中,层管理器确定使用边缘装置的模型处理数据,并且作为响应,模型处理数据。
在框1606处,模型生成预测。在框1504处,层管理器确定预测的置信水平是否低于阈值水平。如果层管理器确定置信水平不低于阈值水平,则在框1610处,层管理器基于所述预测生成响应。过程然后返回到框1602。
如果层管理器确定置信水平低于阈值水平,则在框1612处,层管理器将数据发送到层装置。在框1614处,层装置使用层装置处的模型处理数据。在实施例中,层装置的层管理器确定使用层装置的模型处理数据,并且作为响应,层装置的模型处理数据。
在框1616处,层装置的模型生成预测。在框1618处,层装置的层管理器确定预测的置信水平是否低于阈值水平。如果层管理器确定置信水平不低于阈值水平,则在框1620处,层管理器基于所述预测生成响应。过程然后返回到框1602。
在框1616处,如果层管理器确定置信水平低于阈值水平,则过程返回到框1612,其中层管理器将数据发送到另一层装置。例如,层装置可以是如上所述的层装置的层次结构的一部分。因此,层管理器可以将数据发送到层次结构中的下一个层装置。如上所述,此过程可以继续直到以不低于阈值水平(例如,最小置信水平)的置信水平生成预测为止。
图17展示了根据一些实施例的用于通过将不同数据部分发送到不同模型来实施模型分层的系统。在所描绘的实施例中,局部网络包含边缘装置1300和层装置1302。如图所示,可以将层装置布置在不同层的层次结构中。在实施例中,可以将局部网络布置在上文针对图13所论述的拓扑中的一个或多个中。
在实施例中,层中的一个或多个可以包含局部网络外部的其它装置,如基站1702和提供商网络102。例如,在实施例中,基站1702可以包含在包含相应模型1304的一个或多个相应层装置1302上操作的一个或多个层管理器1306。基站1302可以通过广域网114(例如,互联网)而与提供商网络102和局部网络的层装置1302中的至少一些通信。
如上文所论述的,模型1304可以包含对接收到的数据执行一个或多个操作的软件和/或硬件。在实施例中,一个或多个操作可以包含分析数据、基于分析修改数据和/或基于分析生成结果(例如,预测、新数据、一个或多个命令或其它某一结果)。例如,结果可以是局部预测。在一些实施例中,局部预测可以由层管理器1306接收。
在实施例中,可以存在各自包含层管理器、至少一个模型和至少一个数据收集器的一个或多个边缘装置。层装置的每一层级可以包含各自包含层管理器和至少一个模型的一个或多个层装置。在实施例中,可以存在边缘和/或层装置的任何数量的层级。
在实施例中,边缘装置1300可以通过一个或多个数据收集器而收集数据。在一些实施例中,所收集的数据可以包含两个或更多个不同数据部分1704。层管理器1306可以接收和/或分析数据1312。在一些实施例中,层管理器1306可以将接收到的数据拆分为两个或更多个不同数据部分1704。例如,从照相机捕获的图像数据可以被解复用为红色图像数据、绿色图像数据和蓝色图像数据。作为另一实例,数据的一部分可以是从一个传感器收集的数据(例如,来自麦克风的音频数据),并且数据的另一部分可以是从另一传感器(例如,照相机)收集的图像数据。
层管理器1306可以确定是在边缘装置的一个或多个相应模型1304处处理数据部分1704,还是将数据部分1704发送到一个或多个相应层装置1302。取决于确定,层管理器1306或者使用相应模型1304处理数据部分1704,或者将数据部分1704发送到层装置1302的第一层级或最底层级处的相应层装置。在一些实施例中,由相应边缘装置1300的不同模型生成数据部分1704。因此,在一些实施例中,可以由相应边缘装置的多个层管理器作出上述确定(例如,使用分布式计算/处理、多数共识等的适当技术)。
在一些实施例中,层管理器1306可以确定在边缘装置的一个或多个相应模型1304处处理数据部分1704,并且将经过处理的数据部分1704发送到一个或多个相应层装置1302。因此,发送到一个或多个相应层装置1302的数据部分1704可以是已通过一个或多个相应模型1304修改和/或变换的由数据收集器122收集的数据。
在实施例中,相应层装置1302从相应边缘装置1302接收数据部分1704,并且相应层装置1302的层管理器1306确定是否使用层装置1302的相应较高层模型1304处理数据部分1704。在一些实施例中,层装置1302的层管理器1306接收和/或分析数据部分1704以作出上述确定。
在实施例中,较高层模型1304大于边缘装置1300的模型1304和/或针对给定数据部分1704,与边缘装置1300的模型1304相比以较高置信水平生成一个或多个结果(例如,预测)。在实施例中,层装置具有较大存储器和/或较快计算硬件。在一些实施例中,仅一个层管理器而不是多个层管理器作出上述确定。在一些实施例中,相应层管理器共同作出上述确定(例如,使用分布式计算/处理、多数共识等的适当技术)。
响应于确定使用较高层模型1304处理数据部分1704,层装置1302的层管理器1306使用较高层模型1304处理数据部分1704,基于所述处理生成结果,并且将结果发送到边缘装置1300和/或另一端点(例如,下一层的一个或多个层装置1302)。例如,任何给定层级处的层装置1302的层管理器1306可以使用相应模型1304修改和/或变换从较低层装置1302接收的数据,并且将经过修改/经变换的数据1706、1708、1710发送到一个或多个层装置1302的下一层级或层服务1308。在实施例中,一个或多个边缘装置1300响应于接收到结果而执行动作和/或生成命令。此外,在一些实施例中,结果被合并为一个结果或较少数量的结果。
在一些实施例中,响应于确定不使用较高层模型1304处理数据部分1704、1706、1708,层装置1302的层管理器1306可以将数据部分1704发送到层装置1302的另一层级(或提供商网络102),其中在另一层级处,数据部分1704、1706、1708、1710由其它模型处理以生成一个或多个结果。在实施例中,层装置1302然后从其它层装置1302(或从提供商网络102)接收一个或多个结果,其中一个或多个结果基于数据部分1704、1706、1708、1710。层装置1302可以然后将一个或多个结果发送到边缘装置1300和/或一个或多个其它端点。例如,特定层装置的一个图像处理模型可以处理来自红色光谱的传感器数据,另一层装置的另一图像处理模型可以处理来自绿色光谱的传感器数据,并且另一层装置的另一图像处理模型可以处理来自蓝色光谱的传感器数据。
如上文针对单个边缘装置所论述的,边缘装置(例如,边缘装置的层管理器)可以基于准则确定是使用边缘装置的模型处理数据部分1704,还是将数据部分1704发送到层装置。如上文所论述的,准则可以包含以下中的一个或多个:模型处理数据部分1704所需的能量的量、模型处理数据部分1704所需的时间的量、从模型更新以来的时间的量以及可用于将数据部分1704发送到层装置的带宽的量。
例如,一个或多个边缘装置的一个或多个层管理器可以确定模型处理数据部分1704所需的时间和/或能量的量高于阈值量,并且作为响应,将数据部分1704发送到层装置。相反,一个或多个边缘装置的一个或多个层管理器可以确定模型处理数据部分1704所需的时间和/或能量的量不高于阈值量,并且作为响应,使用边缘装置的模型处理数据部分1704。
在实施例中,一个或多个层管理器可以确定从模型更新以来的时间的量高于阈值量,并且作为响应,将数据部分1704发送到层装置。相反,边缘装置的一个或多个层管理器可以确定从模型更新以来的时间的量不高于阈值量,并且作为响应,使用边缘装置的模型处理数据部分1704。
在一些实施例中,一个或多个层管理器可以确定可用于将数据部分1704发送到层装置的带宽的量高于阈值,并且作为响应,将数据部分1704发送到层装置。相反地,边缘装置的一个或多个层管理器可以确定可用于将数据部分1704发送到层装置的带宽的量不高于阈值,并且作为响应,使用边缘装置处理数据部分1704。
在实施例中,以上准则也可以由层装置的一个或多个层管理器用于确定是使用层装置的模型处理数据部分1704、1706、1708还是将数据部分1704、1706、1708、1710发送到另一层的其它层装置(或提供商网络)。因此,在实施例中,可以通过一层或多层的层装置来传播数据部分1704、1706、1708、1710(作为经过修改/经变换的数据或作为未经过修改的数据),直到特定层装置群组(或提供商网络)处理数据部分1704(或完成修改和/或变换数据部分1704、1706、1708、1710)为止。在层装置处理数据部分1704或完成修改和/或变换数据部分1704、1706、1708、1710之后,来自处理的一个或多个结果可以传播回边缘装置和/或一个或多个其它端点。
如上文针对个别边缘装置或层装置所论述的,边缘装置或层装置可以基于数据部分1704、1706、1708、1710的处理生成预测。一个或多个层管理器可以然后确定预测的置信水平是否低于阈值置信水平。若是,则一个或多个层管理器可以将数据发送到层装置(或层装置的下一层级)以由层装置(或层装置的下一层级)的模型处理。若否,则边缘装置或层装置可以使用预测(例如,以生成一个或多个响应),而无需将数据部分1704、1706、1708发送到层装置(或层装置的下一层级)上。
因此,在实施例中,数据部分1704、1706、1708、1710可以传播到一个或多个层装置,直到预测的置信水平不低于阈值水平为止。在那时,预测可以传播回边缘装置中的一个或多个和/或一个或多个其它端点。在实施例中,提供商网络可以包含最高层模型。因此,数据部分1704、1706、1708、1710可以传播到的最远处可以是提供商网络的模型1310。因此,在实施例中,层服务1308如上文针对层管理器1306所描述而作出确定。
图18是展示了根据一些实施例的通过将不同数据部分发送到不同模型来实施模型分层的流程图。在框1802处,一个或多个数据收集器在边缘装置处收集数据。如上所述,数据可以由不同边缘装置收集。
在框1804处,一个或多个边缘装置将数据的相应部分发送到相应层装置。在框1806处,层装置在层装置的相应模型处处理数据的相应部分。如上所述,在一些实施例中,数据部分可以在返回到层装置之前传播到层装置的一个或多个附加层级。在框1808处,一个或多个边缘装置从层装置接收一个或多个结果。在框1810处,一个或多个边缘装置基于一个或多个结果生成响应(或多个响应)。
在一些实施例中,图1-图18中描述的模型中的任一个都可以在用于训练/修改模型的强化学习过程的上下文内操作。例如,提供商网络和/或中枢装置可以在多个时间点(例如,定期)从局部网络获得拓扑数据,并且基于拓扑数据来周期性地修改或替代模型以提高模型的准确性、提高由模型生成的结果(例如,预测)的置信水平和/或提高网络的性能。
在实施例中,强化学习过程用于获得预测的最小置信水平,同时最小化与获得预测相关联的一个或多个成本。例如,因网络流量/等待时间和/或边缘装置的功耗所致的成本可以被最小化,同时仍然获得最小水平的准确性。在实施例中,可以按百分比(例如,99%或90.5%)或适合于从无置信度或准确性(例如,0%)到完全置信度或准确性(例如,100%)来量化置信度或准确性的水平的任何其它值来测量置信水平和/或准确性水平。
在一些实施例中,图1-图18中描述的中枢装置、边缘装置、层装置或提供商网络的模型中的任一个都可以在事件驱动式执行环境的上下文内操作。例如,模型的一个或多个功能可以分配给相应事件,使得响应于事件驱动式执行环境检测到分配给特定功能的事件(例如,从一个或多个特定边缘装置接收数据)而触发特定功能。在实施例中,功能可以包含一个或多个操作以处理接收到的数据,并且可以生成结果(例如,预测)。
各种计算机系统中的任一个都可以被配置成实施与以上附图的提供商网络、基站、中枢装置、边缘装置、层装置或任何其它部件相关联的过程。例如,图19是展示了根据一些实施例的实施本文所述的技术中的一些或全部的示例计算机系统的框图。在各个实施例中,图1-图18中的任一个的提供商网络、基站、中枢装置、边缘装置、层装置或任何其它部件可以各自包含一个或多个计算机系统1900,如图19所展示的计算机系统。在实施例中,提供商网络、基站、中枢装置、边缘装置、层装置或任何其它部件可以包含计算机系统1900的一个或多个部件,其中部件按与上文针对计算机系统1900所描述相同或相似的方式起作用。
在所展示的实施例中,计算机系统1900包含通过输入/输出(I/O)接口1930而耦合到系统存储器1920的一个或多个处理器1910。计算机系统1900进一步包含耦合到I/O接口1930的网络接口1940。在一些实施例中,计算机系统1900可以说明实施企业逻辑或可下载应用程序的服务器,而在其它实施例中,服务器可以与计算机系统1900相比包含较多、较少或不同的元件。
在各个实施例中,计算机系统1900可以是包含一个处理器1910的单处理器系统,或包含若干处理器1910(例如,两个、四个、八个或另一合适数量)的多处理器系统。处理器1910可以是能够执行指令的任何合适的处理器。例如,在各个实施例中,处理器1910可以是实施各种指令集架构(ISA)中的任一种的嵌入式处理器,如x106、PowerPC、SPARC或MIPSISA或者任何其它合适的ISA。在多处理器系统中,处理器1910中的每一个通常可以但未必实施同一ISA。
系统存储器1920可以被配置成存储可由处理器1910访问的指令和数据。在各个实施例中,系统存储器1920可以使用任何合适的存储器技术来实施,如静态随机存取存储器(SRAM)、同步动态RAM(SDRAM)、非易失性/闪速存储器或任何其它类型的存储器。在所展示的实施例中,实施如上文针对文件网关、对象存储系统、客户端装置或服务提供商描述的那些方法和技术的期望功能的程序指令和数据被示出为作为程序指令1925存储在系统存储器1920内。在一些实施例中,系统存储器1920可以包含可以如本文所述而配置的数据1935。
在一个实施例中,I/O接口1930可以被配置成通过网络接口1940或其它外围接口而协调处理器1910、系统存储器1920与系统中的任何外围装置之间的I/O流量。在一些实施例中,I/O接口1930可以执行任何必要的协议、定时或其它数据变换,以将来自一个部件(例如,系统存储器1920)的数据信号转换为适合于由另一部件(例如,处理器1910)使用的格式。在一些实施例中,I/O接口1930可以包含对通过各种类型的外围总线(如外围部件互连(PCI)总线标准或通用串行总线(USB)标准的变体)而附接的装置的支持。在一些实施例中,I/O接口1930的功能可以拆分成两个或更多个独立部件,如北桥和南桥。并且,在一些实施例中,I/O接口1930的功能中的一些或全部(如系统存储器1920的接口)可以直接并入到处理器1910中。
网络接口1940可以被配置成允许数据在计算机系统1900与其它计算机系统1900或附接到网络(如上文所论述的局部网络、广域网或提供商网络内的局部网络)的装置之间交换。明确地说,网络接口1940可以被配置成允许计算机系统1900和/或各种I/O装置1950之间的通信。如本文所述,I/O装置1950可以包含扫描装置、显示装置、输入装置和/或其它通信装置。网络接口1940通常可以支持一个或多个无线网络协议(例如,Wi-Fi/IEEE802.11或另一种无线网络标准)。然而,在各个实施例中,网络接口1940可以支持通过任何合适的有线或无线通用数据网络(如其它类型的以太网)而进行的通信。此外,网络接口1940可以支持通过电信/电话网络(如模拟语音网络或数字光纤通信网络)、通过存储区域网络(如光纤信道SAN)或通过任何其它合适类型的网络和/或协议而进行的通信。
在一些实施例中,系统存储器1920可以是被配置成如上所述存储程序指令和数据的计算机可访问介质的一个实施例。然而,在其它实施例中,程序指令和/或数据可以是在不同类型的计算机可访问介质上接收、发送或存储。一般来说,计算机可访问介质可以包含计算机可读存储介质或存储器介质,如磁性介质或光学介质,例如,通过I/O接口1930而耦合到计算机系统1900的磁盘或DVD/CD-ROM。计算机可读存储介质也可以包含任何易失性或非易失性介质,如RAM(例如,SDRAM、DDR SDRAM、RDRAM、SRAM等)、ROM等,其可作为系统存储器1920或另一类型的存储器而包含在计算机系统1900的一些实施例中。此外,计算机可访问介质可以包含传输介质或信号(如电信号、电磁信号或数字信号),其通过通信介质(如网络和/或无线链路)而输送,如可以通过网络接口1940而实施。
在一些实施例中,I/O装置1950可以是相对简单或“精简”的客户端装置。例如,I/O装置1950可以被配置成具有显示、数据输入和通信能力但除此之外几乎没有计算功能的哑终端。然而,在一些实施例中,I/O装置1950可以是类似于计算机系统1900而配置的计算机系统,包含一个或多个处理器1910和各种其它装置(尽管在一些实施例中,实施I/O装置1950的计算机系统1900可以具有稍微不同的装置或不同类别的装置)。
在各个实施例中,根据,I/O装置1950(例如,扫描仪或显示装置以及其它通信装置)可以包含但不限于以下各个实施例中的一个或多个:手持装置、由人佩戴或附着到人的装置以及集成到或安装在任何移动或固定设备上的装置。I/O装置1950可以进一步包含但不限于以下中的一个或多个:个人计算机系统、台式计算机、机架式计算机、膝上型或笔记本计算机、工作站、网络计算机、“哑”终端(即,几乎没有集成处理能力或没有集成处理能力的计算机终端)、个人数字助理(PDA)、移动电话或其它手持装置、专有装置、打印机或适合于与计算机系统1900通信的任何其它装置。通常,I/O装置1950(例如,光标控制装置1960、键盘1970或一个或多个显示器1980)可以是能够与计算系统1900的元件通信的任何装置。
本公开的实施例还可以根据以下条款来描述:
1.一种系统,其包括:
连接到网络的一个或多个边缘装置,其中所述边缘装置中的个别边缘装置被配置成:
收集数据;
确定是使用所述边缘装置的数据处理模型处理所述数据还是将所述数据发送到连接到所述网络的一个或多个层装置;并且
使用所述数据处理模型处理所述数据,或
将所述数据发送到所述一个或多个层装置;以及
所述一个或多个层装置,其中所述层装置中的个别层装置被配置成:
从所述边缘装置接收所述数据;
确定是否使用所述层装置的较高层数据处理模型处理所述数据;并且
响应于确定使用所述较高层数据处理模型处理所述数据而:
使用所述较高层数据处理模型处理所述数据;
基于所述处理生成结果;并且
将所述结果发送到端点。
2.根据条款1所述的系统,其中所述层装置的所述较高层数据处理模型大于所述边缘装置的所述数据处理模型,并且其中所述结果是预测,并且其中所述较高层数据处理模型被配置成:
与所述边缘装置的所述数据处理模型相比以较高置信水平生成所述预测。
3.根据条款1所述的系统,其中所述边缘装置被配置成:
基于准则确定是使用所述边缘装置的所述数据处理模型处理所述数据还是将所述数据发送到所述层装置,其中所述准则包括以下中的一个或多个:
所述数据处理模型处理所述数据所需的能量的量;
所述数据处理模型处理所述数据所需的时间的量;
从所述数据处理模型更新以来的时间的量;以及
可用于将所述数据发送到所述层装置的带宽的量。
4.根据条款1所述的系统,其中所述边缘装置被配置成:
基于使用所述边缘装置的所述数据处理模型而进行的所述数据的处理生成预测;
确定所述预测的置信水平低于阈值置信水平;并且
响应于所述确定而将所述数据发送到所述一个或多个层装置。
5.根据条款1所述的系统,其中所述层装置被配置成:
响应于确定不使用所述较高层数据处理模型处理所述数据而:
将所述数据发送到另一层装置或提供商网络;
从所述另一层装置或所述提供商网络接收结果,其中所述结果基于所述数据;并且
将所述结果发送到所述边缘装置。
6.一种方法,其包括:
连接到网络的一个或多个层装置,所述一个或多个层装置包括相应数据处理模型,其中所述层装置中的个别层装置执行以下:
接收数据;
基于与所述数据处理模型和较高层数据处理模型中的至少一个相关联的准则确定是使用所述层装置的所述数据处理模型处理所述数据还是将所述数据发送到连接到所述网络的一个或多个其它层装置;以及
响应于所述确定而:
使用所述数据处理模型处理所述数据,或
将所述数据发送到所述一个或多个其它层装置。
7.根据条款6所述的方法,其中所述准则包括以下中的一个或多个:
所述数据处理模型处理所述数据所需的能量的量;
所述数据处理模型处理所述数据所需的时间的量;
从所述数据处理模型更新以来的时间的量;以及
先前由所述数据处理模型生成的一个或多个相应预测的置信水平。
8.根据条款6所述的方法,其中所述准则中的至少一些准则与所述其它层装置中的一个或多个层装置的所述较高层数据处理模型相关联,其中所述较高层数据处理模型大于所述层装置的所述数据处理模型。
9.根据条款8所述的方法,其中所述准则进一步包括:
可用于将所述数据从所述层装置发送到所述一个或多个其它层装置的带宽的量;
所述较高层数据处理模型处理所述数据所需的时间的量;
从所述较高层数据处理模型更新以来的时间的量;以及
先前由所述较高层数据处理模型生成的一个或多个相应预测的置信水平。
10.根据条款6所述的方法,其中所述数据包括多个数据部分,并且其中所述发送所述数据包括:
将所述数据的相应部分发送到多个所述其它层装置中的相应层装置;以及
从所述其它层装置中的一个或多个层装置接收一个或多个结果,其中所述一个或多个结果基于所述数据的所述相应部分。
11.根据条款6所述的方法,其进一步包括:
使用所述数据处理模型处理所述数据;以及
将经过处理的数据发送到所述一个或多个其它层装置,其中所述经过处理的数据包括已由所述数据处理模型变换的数据。
12.根据条款6所述的方法,其中将所述数据发送到所述一个或多个其它层装置包括将所述数据发送到远程提供商网络。
13.根据条款6所述的方法,其中所述接收数据包括:
从所述层装置的一个或多个环境传感器接收所述数据。
14.一种非暂时性计算机可读存储介质,其存储程序指令,所述程序指令当由连接到提供商网络的层装置执行时使所述层装置实施以下:
接收数据;
基于与所述数据处理模型和较高层数据处理模型中的至少一个相关联的准则确定是使用所述层装置的所述数据处理模型处理所述数据还是将所述数据发送到连接到所述网络的一个或多个其它层装置;以及
响应于所述确定而:
使用所述数据处理模型处理所述数据,或
将所述数据发送到所述一个或多个其它层装置。
15.根据条款14所述的非暂时性计算机可读存储介质,其中所述准则包括以下中的一个或多个:
所述数据处理模型处理所述数据所需的能量的量;
所述数据处理模型处理所述数据所需的时间的量;
从所述数据处理模型更新以来的时间的量;以及
先前由所述数据处理模型生成的一个或多个相应预测的置信水平。
16.根据条款14所述的非暂时性计算机可读存储介质,其中所述准则中的至少一些准则与所述其它层装置中的一个或多个层装置的所述较高层数据处理模型相关联,其中所述较高层数据处理模型大于所述层装置的所述数据处理模型。
17.根据条款16所述的非暂时性计算机可读存储介质,其中所述准则进一步包括:
可用于将所述数据从所述层装置发送到所述一个或多个其它层装置的带宽的量;
所述较高层数据处理模型处理所述数据所需的时间的量;
从所述较高层数据处理模型更新以来的时间的量;以及
先前由所述较高层数据处理模型生成的一个或多个相应预测的置信水平。
18.根据条款14所述的非暂时性计算机可读存储介质,其中所述数据包括多个数据部分,并且其中所述程序指令使所述层装置进一步实施以下:
将所述数据的相应部分发送到多个所述其它层装置中的相应层装置;以及
从所述其它层装置中的一个或多个层装置接收一个或多个结果,其中所述一个或多个结果基于所述数据的所述相应部分。
19.根据条款14所述的非暂时性计算机可读存储介质,其中所述程序指令使所述层装置进一步实施以下:
从所述层装置的一个或多个环境传感器接收所述数据。
20.根据条款14所述的非暂时性计算机可读存储介质,其中所述程序指令使所述层装置进一步实施以下:
将所述数据发送到远程提供商网络。
本公开的实施例还可以根据以下条款来描述:
1.一种系统,其包括:
连接到网络的至少一个中枢装置,所述至少一个中枢装置包括:
一个或多个处理器;以及
一个或多个存储器,其中所述一个或多个存储器在其上存储有指令,所述指令当由所述一个或多个处理器执行时使所述一个或多个处理器实施以下:
局部数据处理模型,其中所述局部数据处理模型被配置成对从连接到所述网络的一个或多个边缘装置接收到的数据执行一个或多个操作以生成局部结果;以及
结果管理器,其中所述结果管理器被配置成:
将从所述边缘装置接收到的所述数据发送到远程提供商网络;
从所述远程提供商网络接收结果,其中所述结果基于从所述边缘装置接收到的所述数据;并且
基于所述局部结果或接收到的结果生成响应。
2.根据条款1所述的系统,其中结果管理器被配置成:
基于所述接收到的结果和所述局部结果确定是否校正所述局部结果以生成经过校正的结果;并且
基于所述确定生成所述响应。
3.根据条款1所述的系统,其中为了确定是否校正所述局部结果以生成所述经过校正的结果,所述结果管理器被配置成:
确定所述局部结果的置信水平;
确定所述结果的置信水平;并且
如果所述局部结果的所述置信水平低于所述结果的所述置信水平,则校正所述局部结果以生成所述经过校正的结果。
4.根据条款1所述的系统,其中所述结果管理器被配置成:
确定所述局部结果的置信水平高于阈值水平;并且
响应于确定所述局部结果的所述置信水平高于所述阈值水平而在从所述提供商网络接收所述结果之前基于所述局部结果生成初始响应。
5.根据条款4所述的系统,其中所述结果管理器被配置成:
确定所述局部结果的置信水平;
确定所述结果的置信水平;并且
如果所述局部结果的所述置信水平低于所述结果的所述置信水平,则校正所述局部结果,其中基于所述经过校正的结果的所述响应不同于所述初始响应。
6.一种方法,其包括:
通过计算装置执行以下:
接收数据;
通过所述计算装置的数据处理模型对所述数据执行一个或多个操作以生成局部结果;
将所述数据发送到基于网络的数据处理服务;
从所述基于网络的数据处理服务接收结果,其中所述结果基于所述数据;以及
基于所述局部结果或接收到的结果生成响应。
7.根据条款6所述的方法,其进一步包括:
基于所述接收到的结果和所述局部结果确定是否校正所述局部结果以生成经过校正的结果;以及
基于所述确定生成所述响应。
8.根据条款6所述的方法,其进一步包括:
确定所述局部结果的置信水平;
确定所述结果的置信水平;以及
如果所述局部结果的所述置信水平低于所述结果的所述置信水平,则校正所述局部结果以生成所述经过校正的结果。
9.根据条款6所述的方法,其进一步包括:
确定所述局部结果的置信水平高于阈值水平;以及
响应于确定所述局部结果的所述置信水平高于所述阈值水平而基于所述局部结果生成初始响应。
10.根据条款9所述的方法,其进一步包括:
确定所述局部结果的置信水平;
确定所述结果的置信水平;以及
如果所述局部结果的所述置信水平低于所述结果的所述置信水平,则确定校正所述局部结果,其中基于所述经过校正的结果的所述响应不同于所述初始响应。
11.根据条款6所述的方法,其中所述接收到的结果包括对所述计算装置的所述数据处理模型的更新,并且所述方法进一步包括:
使用从所述提供商网络接收到的所述更新来更新局部模型。
12.根据条款6所述的方法,其中所述计算装置连接到网络,并且其中所述数据的至少一部分是从连接到所述网络的一个或多个环境传感器接收到的。
13.根据条款6所述的方法,其中连接到局部网络和所述基于网络的数据处理服务的所述计算装置是远程提供商网络的服务。
14.根据条款6所述的方法,其中基于所述局部结果或所述经过校正的结果生成响应包括:
生成使计算装置执行动作的命令;以及
将所述命令发送到所述计算装置。
15.一种非暂时性计算机可读存储介质,其存储程序指令,所述程序指令当由一个或多个计算装置针对提供商网络的数据处理服务执行时使所述一个或多个计算装置实施以下:
在所述数据处理服务处从远程网络的计算装置获得数据;
在所述数据处理服务处从所述计算装置的远程数据处理模型获得远程结果,其中所述远程结果基于所述数据;
通过数据处理模型对所述数据执行一个或多个操作以生成结果;
至少基于所述远程结果和所述结果修改所述结果;以及
将经过修改的结果从所述提供商网络传输到所述远程网络的所述计算装置。
16.根据条款15所述的非暂时性计算机可读存储介质,其中所述程序指令使所述一个或多个计算装置进一步实施以下:
基于所述远程结果和所述结果生成对所述计算装置的所述远程数据处理模型的更新;以及
将所述更新传输到所述远程网络的所述计算装置。
17.根据条款15所述的非暂时性计算机可读存储介质,其中所述程序指令使所述一个或多个计算装置进一步实施以下:
基于所述远程结果与所述结果之间的一个或多个差异修改所述结果。
18.根据条款15所述的非暂时性计算机可读存储介质,其中所述程序指令使所述一个或多个计算装置进一步实施以下:
基于所述远程结果的置信水平与所述结果的置信水平之间的差异修改所述结果。
19.根据条款15所述的非暂时性计算机可读存储介质,其中所述程序指令使所述一个或多个计算装置进一步实施以下:
至少基于所述远程结果与所述结果之间的一个或多个差异确定一个或多个增量值;以及
通过将用所述一个或多个增量值替代所述结果来修改所述结果。
20.根据条款19所述的非暂时性计算机可读存储介质,其中传输到所述远程网络的所述计算装置的所述一个或多个增量值的大小小于被所述一个或多个增量值替代的所述结果的大小。
本公开的实施例还可以根据以下条款来描述:
1.一种系统,包括:
一个或多个处理器;以及
一个或多个存储器,其中所述一个或多个存储器在其上存储有指令,所述指令当由所述一个或多个处理器执行时使所述一个或多个处理器实施提供商网络的模型训练服务,其中所述模型训练服务被配置成:
从远程网络的多个边缘装置接收数据;
分析接收到的数据;
基于对所述接收到的数据的所述分析生成对一个或多个相应局部数据处理模型的一个或多个更新,其中所述一个或多个更新被配置成更新所述远程网络的所述边缘装置中的相应一个或多个边缘装置处的所述一个或多个相应局部数据处理模型;并且
将所述一个或多个更新部署到所述远程网络。
2.根据条款1所述的系统,其中所述一个或多个更新包括所述相应局部数据处理模型的被配置成替代所述相应局部数据处理模型的一个或多个新版本。
3.根据条款1所述的系统,其中对一个或多个相应局部数据处理模型的所述一个或多个更新的所述生成至少基于所述一个或多个相应边缘装置的状态和所述远程网络的状态中的一个或多个。
4.根据条款1所述的系统,其中所述模型训练服务被配置成:
从一个或多个其它远程网络的一个或多个其它边缘装置接收全局数据;
分析所述全局数据;并且
基于对所述接收到的数据的所述分析以及对所述全局数据的所述分析生成对局部数据处理模型的所述一个或多个更新。
5.根据条款1所述的系统,其中所述一个或多个更新包括所述边缘装置中的至少一个边缘装置的两个或更多个不同局部数据处理模型,其中所述不同局部数据处理模型被配置成处理由所述至少一个边缘装置在不同时间接收到的不同数据。
6.一种方法,其包括:
通过连接到网络的至少一个中枢装置执行:
从所述网络的多个边缘装置接收数据;
分析接收到的数据;
基于对所述接收到的数据的所述分析生成对一个或多个相应局部数据处理模型的一个或多个更新,其中所述一个或多个更新被配置成更新所述网络的所述边缘装置中的相应一个或多个边缘装置处的所述一个或多个相应局部数据处理模型;以及
将所述一个或多个更新部署到所述网络的所述相应边缘装置。
7.根据条款6所述的方法,其中所述一个或多个更新包括所述相应局部数据处理模型的被配置成替代所述相应局部数据处理模型的一个或多个新版本。
8.根据条款6所述的方法,其中所述中枢装置执行以下:
至少基于所述一个或多个相应边缘装置的状态和所述网络的状态中的一个或多个生成所述一个或多个更新。
9.根据条款6所述的方法,其中所述中枢装置执行以下:
从一个或多个其它远程网络的一个或多个其它边缘装置接收全局数据;
分析所述全局数据;以及
基于对所述接收到的数据的所述分析以及对所述全局数据的所述分析生成对局部数据处理模型的所述一个或多个更新。
10.根据条款6所述的方法,其中所述中枢装置执行以下:
在对所述接收到的数据的所述分析以及对所述全局数据的所述分析期间将不同权重应用到所述接收到的数据和所述全局数据。
11.根据条款6所述的方法,其中所述中枢装置执行以下:
在对所述接收到的数据的所述分析以及对所述全局数据的所述分析期间,与应用到所述全局数据的权重相比,将较高权重应用到所述接收到的数据。
12.根据条款6所述的方法,其中所述一个或多个更新包括所述边缘装置中的至少一个边缘装置的两个或更多个不同局部数据处理模型,其中所述不同局部数据处理模型被配置成处理由所述至少一个边缘装置在不同时间接收到的不同数据。
13.根据条款6所述的方法,其中所述中枢装置执行以下:
基于对从所述网络的其它边缘装置接收到的所述数据的一部分的分析生成对特定边缘装置的特定局部数据处理模型的所述更新中的至少一个更新。
14.一种非暂时性计算机可读存储介质,其存储程序指令,所述程序指令当由计算装置执行时使所述计算装置实施以下:
从数据收集器接收数据;
分析接收到的数据;
基于对所述接收到的数据的所述分析生成对所述计算装置的局部数据处理模型的更新,其中所述更新被配置成更新所述局部数据处理模型;
将所述更新应用到所述局部数据处理模型;
将所述数据发送到远程提供商网络的模型训练服务;
从所述远程提供商网络的所述模型训练服务接收对所述局部数据处理模型的另一更新,其中所述更新基于所述数据;以及
将所述另一更新应用到所述局部数据处理模型。
15.根据条款14所述的非暂时性计算机可读存储介质,其中所述另一更新包括所述局部数据处理模型的新版本,并且其中所述程序指令使所述计算装置进一步实施以下:
用所述局部数据处理模型的所述新版本替代所述局部数据处理模型。
16.根据条款14所述的非暂时性计算机可读存储介质,其中所述程序指令使所述一个或多个计算装置进一步实施以下:
从所述数据收集器接收其它数据;以及
基于其它数据生成所述局部数据处理模型。
17.根据条款14所述的非暂时性计算机可读存储介质,其中所述程序指令使所述一个或多个计算装置进一步实施以下:
从所述模型训练服务接收全局数据,其中所述全局数据基于由一个或多个其它远程网络的一个或多个其它边缘装置收集的数据;
分析所述全局数据;以及
基于对所述全局数据的所述分析生成对所述局部数据处理模型的所述更新。
18.根据条款14所述的非暂时性计算机可读存储介质,其中所述另一更新进一步基于以下中的一个或多个:
由包含所述计算装置的局部网络的一个或多个其它边缘装置收集的其它数据,或
由一个或多个其它远程网络的一个或多个其它边缘装置收集的全局数据。
19.根据条款14所述的非暂时性计算机可读存储介质,其中所述另一更新包括对由所述计算装置生成的所述更新的一个或多个改变。
20.根据条款14所述的非暂时性计算机可读存储介质,其中所述程序指令使所述一个或多个计算装置进一步实施以下:
定期从所述远程提供商网络的所述模型训练服务接收对所述局部数据处理模型的附加更新,其中所述附加更新至少基于由所述数据收集器收集的附加数据;以及
应用所述附加更新。
如图中所展示且本文所描述的各种方法表示方法的说明性实施例。所述方法可手动、以软件、以硬件或以其组合来实施。可以改变任何方法的顺序,并且可以添加、重新排序、组合、省略、修改各种元件。例如,在一个实施例中,所述方法可由计算机系统实施,所述计算机系统包含执行存储在耦合到处理器的计算机可读存储介质上的程序指令的处理器。程序指令可被配置成实施本文所述的功能(例如,数据传输工具、各种服务、数据库、装置和/或其它通信装置等的功能)。
对于受益于本公开的本领域的技术人员来说显而易见的是,可进行各种修改和改变。旨在包含所有这些修改和变化,并且因此,以上描述被认为是说明性的而不是限制性的。
各个实施例可还包含在计算机可访问介质上接收、发送或存储根据前述描述而实施的指令和/或数据。一般来说,计算机可访问介质可以包含存储介质或存储器介质(如磁性介质或光学介质,例如,磁盘或DVD/CD-ROM)、易失性或非易失性介质(如RAM(例如,SDRAM、DDR、RDRAM、SRAM等)、ROM等)以及传输介质或信号(如通过通信介质(如网络和/或无线链路)而输送的电信号、电磁信号或数字信号)。

Claims (15)

1.一种用于分层数据处理的系统,其包括:
连接到网络的一个或多个层装置,所述一个或多个层装置包括相应数据处理模型,其中所述层装置中的个别层装置被配置成:
接收数据;
基于与所述数据处理模型和较高层数据处理模型中的至少一个相关联的准则确定是使用所述层装置的所述数据处理模型处理所述数据还是将所述数据发送到连接到所述网络的一个或多个其它层装置,其中
所述准则包括先前由所述数据处理模型生成的一个或多个相应预测的置信水平;并且
响应于所述确定而:
使用所述数据处理模型处理所述数据,或
将所述数据发送到所述一个或多个其它层装置。
2.根据权利要求1所述的系统,其中所述准则进一步包括以下中的一个或多个:
所述数据处理模型处理所述数据所需的能量的量;
所述数据处理模型处理所述数据所需的时间的量;以及
从所述数据处理模型更新以来的时间的量。
3.根据权利要求1所述的系统,其中所述其它层装置中的一个或多个层装置的所述较高层数据处理模型大于所述层装置的所述数据处理模型,并且其中所述准则中的至少一些准则与所述较高层数据处理模型相关联,并且其中所述准则包括:
可用于将所述数据从所述层装置发送到所述一个或多个其它层装置的带宽的量;
所述较高层数据处理模型处理所述数据所需的时间的量;
从所述较高层数据处理模型更新以来的时间的量;以及
先前由所述较高层数据处理模型生成的一个或多个相应预测的置信水平。
4.根据权利要求1所述的系统,其中所述数据包括多个数据部分,并且其中为了将所述数据发送到所述一个或多个其它层装置,所述层装置被配置成:
将所述数据的相应部分发送到多个所述其它层装置中的相应层装置;并
从所述其它层装置中的一个或多个层装置接收一个或多个结果,其中所述一个或多个结果基于所述数据的所述相应部分。
5.根据权利要求1所述的系统,其进一步包括:
连接到所述网络的一个或多个边缘装置,其中所述边缘装置中的个别边缘装置被配置成:
收集所述数据;
确定是使用所述边缘装置的另一数据处理模型处理所述数据还是将所述数据发送到连接到所述网络的所述一个或多个层装置;并且
使用所述另一数据处理模型处理所述数据,或
将所述数据发送到所述一个或多个层装置。
6.根据权利要求5所述的系统,其中所述层装置的所述数据处理模型大于所述边缘装置的所述另一数据处理模型,并且其中所述层装置的所述数据处理模型被配置成:
与所述边缘装置的所述另一数据处理模型相比,以较高置信水平生成预测。
7.根据权利要求5所述的系统,其中所述边缘装置被配置成:
基于其它准则确定是使用所述边缘装置的所述另一数据处理模型处理所述数据还是将所述数据发送到所述一个或多个层装置,其中所述准则包括以下中的一个或多个:
所述另一数据处理模型处理所述数据所需的能量的量;
所述另一数据处理模型处理所述数据所需的时间的量;
从所述另一数据处理模型更新以来的时间的量;以及
可用于将所述数据发送到所述一个或多个层装置的带宽的量。
8.一种用于分层数据处理的方法,所述方法由连接到网络的一个或多个层装置中的个别层装置执行,所述一个或多个层装置包括相应数据处理模型,所述方法包括:
接收数据;
基于与所述数据处理模型和较高层数据处理模型中的至少一个相关联的准则确定是使用所述层装置的所述数据处理模型处理所述数据还是将所述数据发送到连接到所述网络的一个或多个其它层装置,其中所述准则包括先前由所述数据处理模型生成的一个或多个相应预测的置信水平;以及
响应于所述确定而:
使用所述数据处理模型处理所述数据,或
将所述数据发送到所述一个或多个其它层装置。
9.根据权利要求8所述的方法,其中所述准则进一步包括以下中的一个或多个:
所述数据处理模型处理所述数据所需的能量的量;
所述数据处理模型处理所述数据所需的时间的量;以及
从所述数据处理模型更新以来的时间的量。
10.根据权利要求8所述的方法,其中所述准则中的至少一些准则与所述其它层装置中的一个或多个层装置的所述较高层数据处理模型相关联,其中所述较高层数据处理模型大于所述层装置的所述数据处理模型。
11.根据权利要求10所述的方法,其中所述准则进一步包括:
可用于将所述数据从所述层装置发送到所述一个或多个其它层装置的带宽的量;
所述较高层数据处理模型处理所述数据所需的时间的量;
从所述较高层数据处理模型更新以来的时间的量;以及
先前由所述较高层数据处理模型生成的一个或多个相应预测的置信水平。
12.根据权利要求8所述的方法,其中所述数据包括多个数据部分,并且其中所述发送所述数据包括:
将所述数据的相应部分发送到多个所述其它层装置中的相应层装置;以及
从所述其它层装置中的一个或多个层装置接收一个或多个结果,其中所述一个或多个结果基于所述数据的所述相应部分。
13.根据权利要求8所述的方法,其进一步包括:
使用所述数据处理模型处理所述数据;以及
将经过处理的数据发送到所述一个或多个其它层装置,其中所述经过处理的数据包括已由所述数据处理模型变换的数据。
14.根据权利要求8所述的方法,其中将所述数据发送到所述一个或多个其它层装置包括将所述数据发送到远程提供商网络。
15.一种非暂时性计算机可读存储介质,其存储程序指令,所述程序指令当由计算装置执行时使所述计算装置实施根据权利要求8到14中任一项所述的方法。
CN201880049215.9A 2017-07-26 2018-07-16 Iot装置集群的分层数据处理 Active CN110999263B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210823633.7A CN115086326A (zh) 2017-07-26 2018-07-16 Iot装置集群的分层数据处理

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
US15/660,859 2017-07-26
US15/660,859 US11108575B2 (en) 2017-07-26 2017-07-26 Training models for IOT devices
US15/660,860 US11902396B2 (en) 2017-07-26 2017-07-26 Model tiering for IoT device clusters
US15/660,857 2017-07-26
US15/660,860 2017-07-26
US15/660,857 US10980085B2 (en) 2017-07-26 2017-07-26 Split predictions for IoT devices
PCT/US2018/042224 WO2019022979A1 (en) 2017-07-26 2018-07-16 MULTI-LEVEL DATA PROCESSING FOR IOT DEVICE GROUPS

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN202210823633.7A Division CN115086326A (zh) 2017-07-26 2018-07-16 Iot装置集群的分层数据处理

Publications (2)

Publication Number Publication Date
CN110999263A CN110999263A (zh) 2020-04-10
CN110999263B true CN110999263B (zh) 2022-07-22

Family

ID=63207855

Family Applications (2)

Application Number Title Priority Date Filing Date
CN202210823633.7A Pending CN115086326A (zh) 2017-07-26 2018-07-16 Iot装置集群的分层数据处理
CN201880049215.9A Active CN110999263B (zh) 2017-07-26 2018-07-16 Iot装置集群的分层数据处理

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN202210823633.7A Pending CN115086326A (zh) 2017-07-26 2018-07-16 Iot装置集群的分层数据处理

Country Status (3)

Country Link
EP (2) EP3659321B1 (zh)
CN (2) CN115086326A (zh)
WO (1) WO2019022979A1 (zh)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102802169A (zh) * 2011-05-25 2012-11-28 中兴通讯股份有限公司 一种业务访问控制方法和系统
CN105282803A (zh) * 2014-07-25 2016-01-27 中兴通讯股份有限公司 通讯接口和基于通讯接口的信息传递方法及系统

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10749989B2 (en) * 2014-04-01 2020-08-18 Microsoft Technology Licensing Llc Hybrid client/server architecture for parallel processing
EP3180779A4 (en) * 2014-08-13 2018-04-25 Tyco Safety Products Canada Ltd. Method and apparatus for automation and alarm architecture
US9559971B2 (en) * 2014-08-29 2017-01-31 Metaswitch Networks Ltd Device configuration
US10362113B2 (en) * 2015-07-02 2019-07-23 Prasenjit Bhadra Cognitive intelligence platform for distributed M2M/ IoT systems
KR101752488B1 (ko) * 2016-06-24 2017-07-11 주식회사 삼진엘앤디 사물 인터넷 환경에서 온톨로지 기반의 상황인지 서비스를 제공하기 위한 시스템, 방법 및 컴퓨터 판독 가능한 기록 매체

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102802169A (zh) * 2011-05-25 2012-11-28 中兴通讯股份有限公司 一种业务访问控制方法和系统
CN105282803A (zh) * 2014-07-25 2016-01-27 中兴通讯股份有限公司 通讯接口和基于通讯接口的信息传递方法及系统

Also Published As

Publication number Publication date
WO2019022979A1 (en) 2019-01-31
EP3893471A1 (en) 2021-10-13
EP3659321A1 (en) 2020-06-03
EP3659321B1 (en) 2021-06-30
CN115086326A (zh) 2022-09-20
CN110999263A (zh) 2020-04-10

Similar Documents

Publication Publication Date Title
US11108575B2 (en) Training models for IOT devices
US11902396B2 (en) Model tiering for IoT device clusters
US11412574B2 (en) Split predictions for IoT devices
US10262019B1 (en) Distributed management optimization for IoT deployments
CN109698857B (zh) 用于自适应工业物联网(iiot)的系统和方法
CN111046027B (zh) 时间序列数据的缺失值填充方法和装置
WO2020168761A1 (zh) 训练模型的方法和装置
US20200372412A1 (en) System and methods to share machine learning functionality between cloud and an iot network
WO2022088082A1 (zh) 基于缺陷检测的任务处理方法、装置及设备及存储介质
US11830090B2 (en) Methods and systems for an enhanced energy grid system
US11429467B2 (en) Method and system for prediction of correct discrete sensor data based on temporal uncertainty
Rotib et al. Electric load forecasting for Internet of Things smart home using hybrid PCA and ARIMA algorithm
CN117131974A (zh) 一种模型的训练方法、功率预测方法及设备
WO2019087382A1 (ja) 稼働状況予測システム、稼働状況予測方法および稼働状況予測プログラム
CN112714446B (zh) 一种基于边缘智能的协作入侵感知方法
WO2022047470A1 (en) A method and system for testing machine learning models
CN110999263B (zh) Iot装置集群的分层数据处理
US20210133211A1 (en) Adaptive Usage of Storage Resources Using Data Source Models and Data Source Representations
EP4305552A1 (en) Technical system for a centralized generation of a plurality of trained, retrained and/or monitored machine learning models, wherein the generated machine learning models are executed decentral
US20230128271A1 (en) Method, electronic device, and computer program product for managing inference process
US11677634B1 (en) Selecting and deploying models based on sensor availability
Lakshman Narayana et al. An intelligent IoT framework for handling multidimensional data generated by IoT gadgets
US20220115148A1 (en) Self-assessment of machine learning
WO2023098460A1 (zh) 一种模型更新方法、装置及相关设备
US11860712B1 (en) Sensor fault prediction and resolution

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant