一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

传感器的运行时评价的制作方法

2022-04-27 08:50:37 来源:中国专利 TAG:


1.本文涉及传感器评估的领域。更具体地,本文涉及在多传感器环境中对传感器评估的使用。


背景技术:

2.许多感觉设备在人体上或附近的越来越多的可用性已经打开了全新的机遇以利用冗余传感器信号以用于开发强大的人类传感应用。例如,具有时变信号(例如,运动、音频等)的个人规模感觉推断可以单独地在多个设备(例如,智能电话、智能手表以及甚至耳塞)中的每个设备上执行,每个提供独特传感器质量、模型准确性、运行时行为和使用动态。然而,在执行时间,非常具有挑战性的是,评价和比较这些特性以选择用于准确且资源高效的感觉推断的最佳设备。
3.此外,冗余传感器的存在不仅限于人类传感情形;在工业自动化系统中,冗余传感器的部署被广泛地用于确保系统的可靠性。例如,在自动驾驶汽车是常态的未来,若干冗余传感器将确保高度的安全性和可靠性。汽车外部和内部的传感器将与驾驶员的身体上的可穿戴传感器一起工作以监测道路、汽车的状况以及驾驶员的身心状态。


技术实现要素:

4.在第一方面中,本说明书描述了一种装置,其包括:至少一个处理器;以及至少一个存储器,该至少一个存储器包括计算机程序代码。至少一个存储器和计算机程序代码被配置为,与至少一个处理器一起,使装置至少执行:接收在第一时间段期间所收集的来自多个传感器的传感器数据;通过神经网络的多个层处理所接收的传感器数据以生成指示多个传感器中的每个传感器针对任务的传感质量的输出;并且基于指示多个传感器中的每个传感器针对任务的适当性的输出使多个传感器的子集在第二时间段期间收集数据。
5.神经网络可以包括:多个输入子网络,每个输入子网络被配置为接收来自多个传感器中的一个传感器的输入传感器数据并从所述输入传感器数据提取一个或多个特征;以及多个完全连接层,多个完全连接层被配置为处理由多个输入子网络所提取的特征并生成指示多个传感器中的每个传感器针对给定任务的适当性的输出。输入子网络中的每个输入子网络可以包括一个或多个卷积层。输入子网络中的两个或更多输入子网络可以具有相同权重。
6.指示多个传感器中的每个传感器针对任务的适当性的输出可以是二元值的集合,每个二元值与多个传感器中的一个传感器相关联并且指示所述一个传感器用于执行任务的适当性。
7.第一时间段可以是固定时间段。第一时间段可以在大约1秒到5秒之间,例如在2秒到4秒之间。
8.第二时间段可以是固定时间段,例如在1秒到60秒之间,诸如在20秒到50秒之间。第二时间段可以是依赖于在第二时间段处所收集的传感器数据的阈值质量的可变时间段。
9.由装置执行的方法可以在第二时间段过去之后被迭代。
10.该装置可以是:用户设备;智能电话;智能手表;智能耳塞;或平板设备。该装置可以是远程服务器。
11.任务可以包括以下中的一项或多项:人类活动识别;热门词识别;健康监测;环境监测;生理监测;和/或运动监测。
12.多个传感器可以包括以下中的一项或多项:加速度计;麦克风;陀螺仪;温度计;磁力计;定位传感器;光传感器;计步器;气压计;心率传感器;和/或湿度传感器。
13.在另一方面中,本说明书描述了一种系统,该系统包括:多个用户设备,每个用户设备包括一个或多个传感器;以及本文描述的装置中的任一个装置。
14.在另一方面中,本说明书描述了一种方法,该方法包括:接收在第一时间段期间所收集的来自多个传感器的传感器数据;通过神经网络的多个层处理所接收的传感器数据以生成指示多个传感器中的每个传感器针对任务的传感质量的输出;以及基于指示多个传感器中的每个传感器针对任务的适当性的输出使多个传感器的子集/中的一个或多个传感器在第二时间段期间收集数据。
15.神经网络可以包括:多个输入子网络,每个输入子网络被配置为接收来自多个传感器中的一个传感器的输入传感器数据并从所述输入传感器数据提取一个或多个特征;多个完全连接层,多个完全连接层被配置为处理由多个输入子网络所提取的特征并生成指示多个传感器中的每个传感器针对任务的适当性的输出。输入子网络中的每个输入子网络可以包括一个或多个卷积层。输入子网络中的每个输入子网络可以具有相同权重。
16.指示多个传感器中的每个传感器针对任务的适当性的输出可以是二元值的集合,每个二元值与多个传感器中的一个传感器相关联并且指示所述一个传感器用于执行任务的适当性。
17.第一时间段可以是固定时间段。第一时间段可以在大约1秒到5秒之间,例如在2秒到4秒之间。
18.第二时间段可以是固定时间段,例如在1秒到60秒之间,诸如在20秒到50秒之间。第二时间段可以是依赖于在第二时间段处所收集的传感器数据的阈值质量的可变时间段。第二时间段可以是依赖于在第二时间段处所收集的传感器数据的阈值质量的可变时间段。
19.该方法可以在第二时间段过去之后被迭代。
20.该方法可以在以下装置上被执行:用户设备;智能电话;智能手表;智能耳塞;或平板设备。该方法可以在远程服务器上被执行。
21.任务可以包括以下中的一项或多项:人类活动识别;热门词识别;健康监测;环境监测;运动监测;和/或生理监测。
22.多个传感器可以包括以下中的一项或多项:加速度计;麦克风;陀螺仪;温度计;磁力计;定位传感器;光传感器;计步器;气压计;心率传感器;和/或湿度传感器。
23.在另一方面中,本说明书描述了一种方法,该方法包括:生成针对多个传感器中的每个传感器的地面真实质量数据,针对多个传感器中的每个传感器,地面真实质量数据包括由传感器收集的传感器数据和对应的针对给定任务的质量值;通过神经网络的多个层处理来自地面真实质量数据的传感器数据以生成指示多个传感器中的每个传感器针对给定任务的传感质量的输出;以及根据指示多个传感器中的每个传感器针对给定任务的传感质
量的输出与地面真实质量数据的质量值的比较来更新神经网络的权重。
24.生成针对多个传感器中的每个传感器的地面真实质量数据可以包括,针对多个传感器中的一个或多个传感器:将传感模型应用到从多个传感器中的传感器所收集的传感器数据以生成针对所述传感器数据的预测类;以及根据针对所述传感器数据的预测类与针对所述传感器数据的已知类的比较来生成地面真实质量。
25.处理来自地面真实质量数据的传感器数据和更新神经网络的权重的操作可以被迭代直到阈值条件被满足。
26.指示多个传感器中的每个传感器针对给定任务的传感质量的输出与地面真实质量数据的质量值的比较可以使用损失函数来执行。例如,交叉熵损失函数可以被使用。对权重的更新可以通过将优化过程应用到损失函数来确定。
27.神经网络可以包括:多个输入子网络,每个输入子网络被配置为接收来自多个传感器中的一个传感器的输入传感器数据并从所述输入传感器数据提取一个或多个特征;多个完全连接层,多个完全连接层被配置为处理由多个输入子网络所提取的特征并生成指示多个传感器中的每个传感器针对给定任务的适当性的输出。输入子网络中的每个输入子网络可以包括一个或多个卷积层。输入子网络中的两个或更多输入子网络可以具有相同权重。子网络中的所有子网络可以具有相同权重。
28.指示多个传感器中的每个传感器针对任务的适当性的输出是二元值的集合,每个二元值与多个传感器中的一个传感器相关联并且指示所述一个传感器用于执行给定任务的适当性。
29.在另外的方面中,本说明书描述了一种计算机可读指令,该计算机可读指令当由计算装置执行时使计算装置执行本文公开的方法中的一个或多个方法。
30.在另外的方面中,本说明书描述了一种装置,该装置被配置为执行本文公开的方法中的一个或多个方法。
31.在另外的方面中,本说明书描述了一种装置,该装置包括用于执行本文公开的方法中的一个或多个方法的部件。
32.在另外的方面中,本说明书描述了一种非瞬态计算机可读介质,其包括用于使装置执行本文公开的方法中的一个或多个方法的程序指令。
附图说明
33.图1示出了用于传感器的运行时评价的系统的示例实施例;
34.图2a示出了传感器的运行时评价的示例方法的概览;
35.图2b示出了传感器的运行时评价的示例方法的另外的概览;
36.图3示出了使用神经网络对传感器的运行时评价的示例方法的流程图;
37.图4示出了用于在传感器的运行时评价使用的神经网络结构的示例;
38.图5示出了训练神经网络用于传感器的运行时评价的示例方法的流程图;
39.图6示出了生成地面真实质量数据的示例方法的概览;
40.图7示出了使用启发式方法对传感器的运行时评价的示例方法的流程图;
41.图8示出了将传感器的运行时评价的方法应用到健康管理应用的示例;
42.图9示出了本文公开的运行时评价方法相对于若干基线的性能的示例的曲线图;
43.图10示出了装置或用户设备的电子系统的示例的示意性表示;以及
44.图11示出了计算机可读介质/计算机程序产品的示例。
具体实施方式
45.相比于单设备环境,多设备环境具有感知冗余的特征。换言之,存在多个传感器可用于计算关于用户和它们的环境的推断。这通过以下事实来实现:这些设备中的大多数设备现今共享公共的核心传感器的集合,诸如加速度计、陀螺仪或麦克风,并且因此提供冗余感觉信号以量化物理事件。例如,活动跟踪可以单独地在智能电话、智能手表以及甚至耳塞上被完成。类似地,音频可以通过选择性地使用这些设备中的一个设备或附近物联网(iot)设备上的麦克风用于在任何给定背景下的音频感知任务来识别。
46.这种情形提出了两个主要挑战:
47.(a)系统结束计算冗余推断,由此消耗所有设备上的宝贵电池功率。由于基于深度学习的现代推理模型可以是计算代价很昂贵的,所以该冗余计算对总体能量使用具有重大影响。
48.(b)组合个体设备推断并将统一视图呈现给用户并不简单。例如,由于它们在身体上的不同位置,智能电话可以推断用户正在“爬楼梯”而智能手表可以推断用户正在“跑步”。
49.一般而言,不同的设备提供不同的传感器质量、模型准确性、时空覆盖、运行时行为和使用动态。此外,这些特性由于包括设备变化性(例如,硬件和软件异质性、计算预算、能量预算等)和时间或背景变化性(例如,设备放置、用户和设备之间的距离、用户周围的情况等)的若干因素而随时间变化。
50.图1示出了用于传感器的运行时评价的系统100的实施例。系统100在多个设备102之间主动地相互影响,每个设备包含一个或多个传感器/传感设备和相应传感模型108(还在本文被称为“模型处理器”),以动态地选择一个或多个最佳传感器/传感设备用于手头的识别/传感任务。最佳执行设备可以通过执行给定任务动态地改变,即使传感器/传感器设备的可用性可以不改变。
51.基于质量的设备选择的主要目的是评价和比较来自运行时的每个设备的传感器数据的质量。如本文所使用的,质量捆绑于传感任务的准确性,换言之,给定n个传感器流,提供手头的推断任务的最高准确性的传感器流被认为具有最佳质量。传感器中的冗余性意味着,利用精心策划的调度,传感任务可以通过在不同的时间选择性地使用不同的设备而被支持得更久。由于每个设备是不同的并且提供不同的运行时特性和传感性能,所以更好的识别准确性可以通过在每个推断实例处选择针对手头的任务的最佳设备来实现。
52.系统100(还在本文被称为多设备环境)包括多个用户设备102,每个用户设备包括一个或多个传感器。在示出的示例中,用户设备102包括智能电话102a、智能手表102b和耳机的集合102c,但是一个或多个其他设备,诸如计算机平板、个人通信设备、静态/视频相机、iot设备、天线、发送器、接收器、处理器、存储器单元、车辆传感器、imu(惯性测量单元)、全球导航卫星系统(gnss)传感器、单个传感器设备等,或其任何组合,可以备选地或附加地被使用。可用于系统的传感器一起形成多个传感器。系统100还包括装置104(还在本文被称为“主持者”),装置104被配置为接收来自多个用户设备102的传感器数据,并且分析传感器
数据以确定多个传感器中的哪个传感器应当在执行给定任务时被激活。在示出的示例中,装置104包括智能电话(诸如102a),但是一个或多个其他设备(诸如任何用户设备102、个人计算机、服务器、边缘服务器、云计算单元、无线通信接入点、引擎控制模块(ecm)等),或其任何组合,可以备选地或附加地被使用。装置104协调针对多设备环境的传感器数据的收集。
53.每个设备102包括一个或多个传感器/传感设备(未示出)。每个设备102的传感器可以由驻留在设备102上的传感器管理器106控制。每个设备102还可以包括传感模型108,传感器模型108被配置为在传感器数据上实现一个或多个任务特定传感模型。例如,在人类活动识别(har)任务的情况下,存在用户正在携带的所有har使能设备(诸如智能电话、智能手表和智能耳塞)上的har推断模型。
54.系统中的可用传感器的集合在本文被表示为{di},其中di是第i个传感器/传感设备。每个传感器可以与传感模型mi相关联,其中mi是第i个传感器/传感设备的传感模型。在时间t处,传感器生成传感器数据的集合s
t
={s
ti
},其中s
ti
是在时间t处从第i个传感器/传感设备收集的传感器数据。附加地,每个传感器可以具有一个或多个传感模型m。
55.系统100中的多个传感器可以包括冗余传感器的一个或多个集合(即测量相同或等价变量的传感器的集合)。冗余传感器可以驻留在不同设备102上(即用户设备102中的两个或更多用户设备包括测量相同或等价变量的传感器)。作为说明性示例,多个传感器可以包括以下中的一项或多项:加速度计的集合;麦克风的集合;陀螺仪的集合;温度计的集合;磁力计的集合;定位传感器(诸如卫星定位传感器)的集合;光传感器的集合;计步器的集合;气压计的集合;心率传感器的集合;和/或湿度传感器的集合。
56.系统100还包括装置104(还在本文被称为“主持者”),装置104被配置为接收来自多个用户设备102的传感器数据并分析传感器数据以确定多个传感器中的哪个传感器应当被激活以执行手头的任务的。装置104包括至少一个处理器和至少一个存储器,该存储器包括计算机程序代码,该计算机程序代码当执行时使装置执行本文公开的方法中的一个或多个方法。
57.装置104可以包括连接管理器110。连接管理器110管理多设备环境中的注册连接器并在运行时检测可用的设备。连接管理器可以与装置104中的网络接口交互以连接到设备102。
58.装置104可以包括质量评价器112。质量评价器112被配置为使用质量评价模型来评价在运行时可用传感器/传感设备的传感质量。下面参考图3至图7描述质量评价模型的示例。
59.装置104还可以包括执行规划器114。执行规划器114被配置为接收来自质量评价器112的可用传感器/传感设备的传感质量并且确定针对手头的任务的执行规划。确定执行规划包括基于可用传感器/传感设备的传感质量来选择可用传感器/传感设备中的哪一项用于任务。附加地,执行规划还可以包括针对执行工作周期212、评价窗口202、传感窗口和执行窗口210的时间间隔的确定。一旦执行规划由执行规划器114确定,装置104就管理传感器和传感模型的执行。
60.装置104可以是与用户设备102的集合分离的“主设备”,诸如如图1所示。在其他实施例中,装置104可以是用户设备102中的一个或多个设备或者可以驻留于用户设备102中
的一个或多个设备中。在一些实施例中,在多个用户设备102能够实现/托管装置104的情况下,可以基于一个或多个预定准则从多个用户设备102之中动态地选择用作主设备的用户设备。例如,主设备可以基于用户设备102或可用装置104中的每项上的计算资源(例如存储器、带宽、处理功率等)的可用性来选择。附加地或备选地,主设备可以基于诸如跑步或走路的选定任务和/或诸如醒着、睡着、在家或在工作的相关背景信息来动态地选择。在一些实施例中,装置104可以是例如在云中操作的远程服务器。
61.图2a和图2b示出了传感器的运行时评价的方法200的概览。图2a示出了利用神经网络的基于学习的方法。图2b示出了基于学习的方法和启发式方法两者。这些方法可以例如在图1的系统中执行。
62.在第一时间段202(在本文还被称为“评价窗口”)期间,从多设备环境中的多个传感器/传感设备204收集传感器数据。在第一时间段期间对传感器数据的收集可以例如由质量评价器112或执行规划器管理。第一时间段202可以是固定时间段。例如,第一时间段202可以持续在一秒到五秒之间。第一时间段202的长度可以是可变的,例如第一时间段可以依赖于以下中的一项或多项:由传感器/传感设备执行的任务;被收集的传感器数据的类型;被收集的传感器数据的量;多个传感器/传感设备中的冗余传感器的数目。在第一时间段202可变的实施例中,可以存在第一时间段202的上阈值。例如,上阈值可以持续在一秒到五秒之间。
63.在第一时间段202期间,一个或多个质量评价模型206被应用到所收集的传感器数据以估计给定任务和/或背景中的可用传感器/传感设备和/或相关联的传感模型(m或sm)204的传感质量。一个或多个质量评价模型可以被应用到由可用传感器/传感设备204和/或相关联的传感模型收集的原始传感器数据以得到来自传感器数据的经处理的特征(即,经预处理的传感器数据,例如已经由传感模型214处理的传感器数据)。在一些实施例中,背景数据还被供应到一个或多个质量评价模型以用于在确定传感器/传感设备和传感模型的质量中使用。
64.在一些实施例中,质量评价模型206可以包括一个或多个学习的模型206a,诸如经预训练的神经网络。使用经预训练的神经网络作为质量评价模型的示例下面参考图3至图6进一步详细描述。备选地或附加地,质量评价模型206可以包括一个或多个启发式模型206b。使用启发式模型作为质量评价模型的示例下面参考图7进一步详细描述。
65.质量评价模型206可以各自针对特定任务定制。例如,质量评价模型206的库可以被提供,各自针对不同任务定制,其中第一时间段202中使用的一个或多个质量评价模型206基于正在执行的当前任务/多个任务来选择。库可以包含启发式模型206b和学习的模型206a两者,其中使用的特定类型的模型基于当前任务。指示用户的当前背景的背景数据还可以被用于选择一个或多个质量评价模型206。
66.基于质量评价模型206的输出,一个或多个传感器/传感设备208和/或一个或多个传感模型(sm)被选择用于在当前传感任务中使用。输出(例如,可以是例如向量、二元变量和/或连续变量的质量得分)被用于选择具有最佳数据质量的设备和/或传感模型用于潜在的推断任务,换言之,最可能提供针对当前传感任务的最佳准确性的设备和/或传感模型被选择。备选地,输出(例如,质量得分)被用于选择具有最佳或充分数据质量组合(诸如准确性)的一个或多个设备和/或一个或多个传感设备用于潜在的推断任务,使得它们最可能提
供针对当前传感任务的最佳准确性。特定传感器/传感设备208可以具有一个或多个相关传感模型(m或sm),其中每个传感模型可以被定义用于特定任务和/或背景。
67.其后,一个或多个所选择的传感器/传感设备208被用于第二时间段210(还在本文被称为“执行窗口”)以收集传感器数据和/或用于与任务相关的计算推断。在一些实施例中,未被选择的传感器/传感设备被解激活。
68.第二时间段210可以持续预定时间量。例如,预定时间量可以在1秒到60秒之间,优选在5秒到60秒之间。在一些实施例中,第二时间段可以持续直到任务完成。在一些实施例中,第二时间段可以是可变的,并且依赖于例如在第二时间段210期间收集的传感器数据的量和/或复杂性。例如,如果在第二时间段期间收集的传感器数据落入预定质量阈值以下,那么第二时间段可以结束,并且另外的评价窗口开始。另外,第二时间段210可以被划分为一个或多个“传感”和“传感模型”(sm)时段,其中在“传感”时段期间,从所选择的一个或多个设备204收集传感器数据,并且在“传感模型”时段期间,所收集的传感器数据利用所选择的一个或多个传感模型来分析。“传感”和“传感模型”(sm)时段可以持续预定时间量,或者它们可以持续直到任务完成。附加地,“传感”和“传感模型”时段可以是可变的,并且依赖于所收集的传感器数据的量和/或复杂性。另外,如果在“传感”时间段期间收集的传感器数据落入预定数据质量阈值以下,那么第二时间段210可以结束,并且另外的评价窗口202开始。另外,如果在相关时段期间的“传感模型”的质量落入预定传感质量阈值以下,那么第二时间段210可以结束,并且另外的评价窗口202开始。
69.在每个执行工作周期212(即评价窗口 执行窗口)之后,评价传感质量和选择最佳设备的过程可以再次被执行。换言之,评价窗口跟随有执行窗口的周期212可以被迭代。执行工作周期212是连续的过程。
70.图3示出了使用神经网络对传感器的运行时评价的示例方法300的流程图。该方法可以由图1的装置104执行。在一些实施例中,方法300在诸如智能电话、智能手表或其他移动计算设备的用户设备102上被执行。在一些实施例中,方法300远程地被执行,例如在云中被执行。
71.在操作3.1处,在第一时间段期间从多个传感器接收传感器数据s
t
。传感器数据s
t
的接收可以由装置104的连接管理器110管理。传感器数据源自于驻留在多个用户设备上的一个或多个传感器。所接收的传感器数据中的至少一些传感器数据可以是经预处理的传感器数据。所接收的传感器数据中的至少一些传感器数据可以是原始传感器数据。第一时间段(或评价窗口)可以是固定时间段。固定时间段可以在大约1秒到5秒之间。
72.在操作3.2处,通过神经网络的多个层处理所接收的传感器数据s
t
以生成指示多个传感器中的每个传感器和它们的关联传感模型针对任务的传感质量的输出。操作3.2可以例如由装置104的质量评价器112执行。任务可以包括以一些方式使用传感器数据的任务。任务可以包括以下中的一项或多项:人类活动识别;热门词识别;健康监测;环境监测;生理监测;运动监测,工业处理监测,装置处理监测、通信系统监测、车辆功能监测等,以其任何组合。在要求两个或更多传感器的激活的复杂任务中,质量评价器112评价两个或更多传感器的组合准确性。
73.到神经网络的输入s
t
是形式为s
t
=《s
t1
,s
t2
,s
t3
…stk
》的k元组,其表示在时间t处捕获的来自k个传感器的传感器数据/在时间t处的来自k个传感器的传感器数据的分段。
74.输出可以是一个或多个质量得分。针对每个传感器i的质量得分可以是二元变量qi,其指示该传感器和/或它的关联传感模型是否适合于当前任务(例如,针对传感器i的得分得分1指示传感器i适合于给定任务,而针对传感器i的得分0指示传感器i不适合于给定任务)。备选地,质量得分可以是连续变量。附加地,质量得分可以描述两个或更多个传感器的质量,其指示两个或更多传感器和/或它们的关联传感模型是否一起适合于当前任务。
75.下面参考图4提供可以用于该操作的神经网络的结构的示例。
76.在操作3.3处,基于指示多个传感器中的每个传感器针对给定任务的传感质量的输出来激活多个传感器中的一个或多个传感器以在第二时间段期间收集数据。装置104的执行管理器114可以使一个或多个传感器被激活。第二时间段可以是固定时间段。例如,第二时间段可以持续在大约1秒到大约60秒之间,优选地在大约5秒到60秒之间。在一些实施例中,工作周期持续大约10秒,具有大约1秒的评价时间。
77.在一些实施例中,除了指示多个传感器中的每个传感器针对任务的传感质量的输出之外的另外的数据可以被用于选择传感器的子集以激活。例如,与传感器位于其上的设备相关的资源量度可以被使用。关于设备的当前状态的附加信息,诸如剩余电量或cpu和存储器负载,可以附加地被用作针对设备选择过程的输入。这样,传感器设备的子集可以不仅基于它的传感器的信号质量而且基于当前可用的资源而被选择。
78.在一些实施例中,执行规划器114可以允许对准确性或能量效率排优先次序的策略的定义。这些策略可以基于系统的当前状态来动态地更新/切换以随着系统演进而适应。例如,当设备中可用的总能量开始耗尽时,可以采用更长的工作周期窗口。利用来自设备的可用性资源量度,应当能够实现根据期望策略来分布计算的自适应执行规划器。
79.在第二时间期间收集的传感器数据用于执行手头的任务/在手头的任务的执行中使用。例如,由麦克风收集的音频数据被用于执行热门词检测。加速度计数据可以用于被确定当前用户活动/对当前用户活动进行分类。许多其他示例是可能的。
80.图4示出了用于在图3的方法中使用的神经网络结构400的示例。神经网络400是被配置为处理输入传感器数据以生成指示多个传感器中的每个传感器针对给定任务的传感质量的输出的神经网络。神经网络400包括多个层节点,每个节点与一个或多个参数相关联。神经网络400的每个节点的参数可以包括一个或多个权重和/或偏置。节点将先前层中的节点的一个或多个输出当作输入或输入传感器数据。先前层中的节点的一个或多个输出由节点用于使用激活函数和神经网络的参数来生成激活值。如下面参考图5所描述的,神经网络的参数可以使用训练过程来确定。
81.神经网络400包括多个输入子网络402(还在本文被称为“塔”),每个输入子网络402被配置为接收来自多个传感器中的一个传感器的输入传感器数据404并从所述输入传感器数据提取一个或多个特征。每个塔402接收来自不同传感器/传感设备的传感器数据x
it
并提取更高阶特征。
82.输入子网络402中的一个或多个输入子网络可以是相同的(即具有相同结构和权重w),并且可以因此,神经网络400可以被称为“暹罗神经网络”。在一些实施例中,与相同类型的传感器相关的输入子网络402是相同的。例如,与来自多个设备的加速度计数据相关的输入神经网络402可以使用共享权重的相同的子网络402来提取更高阶特征。通过跨多个子网络共享权重,模型的尺寸可以被减小,因此使其在具有有限运行时存储器的设备上更可
行。
83.在一些实施例中,输入子网络402可以包括一个或多个卷积层。输入子网络402还可以包括一个或多个池化层。例如,输入子网络402可以包括用于特征提取的三个2d卷积和池化层。然而,更大或更少的卷积层可以被使用。输入子网络402还可以包括全局平均池化层。
84.神经网络400还包括多个完全连接层406,多个完全连接层406被配置为处理由多个输入子网络所提取的特征并生成指示多个传感器中的每个传感器针对给定任务qi的适当性的输出410。多个完全连接层406被配置为将由输入子网络402所提取的特征进行比较以确定哪些传感器用于在第二时间段中收集传感器数据。输入子网络402的输出可以被串联并输入到完全连接层中。网络的最终层可以具有s型(sigmoid)激活函数。
85.在一些实施例中,神经网络400还包括一个或多个注意块/注意机制。这些可以允许模型通过将内部特征相应地加权到在每个时刻可用的传感器数据来自动地处理输入中的传感器数据的缺乏。一旦模型已经被训练,它就提供附加灵活性。
86.图5示出了训练神经网络的示例方法500的流程图,其可以在一些实施例中由质量评价器112管理用于传感器的运行时评价。在一些实施例中,方法500在用户设备104上执行。在一些实施例中,方法500远程地被执行,例如在云中被执行。该方法是监督式学习技术的示例,但是无监督式学习可以被备选地使用,其中模型在不参考带标签的地面真实数据的情况下被训练。训练方法可以由系统100的设备/装置中的一项执行。备选地,其可以远程地被执行,例如在云中被执行。
87.在操作5.1处,针对多个传感器中的每个传感器生成地面真实质量数据,针对多个传感器中的每个传感器,地面真实质量数据包括由传感器收集的传感器数据和对应的针对给定任务的质量值。
88.用于神经网络的训练的地面真实数据集包括形式为x={x1,x2,x3…
xk}的一个或多个k元组,其中xk(k=1...k)表示来自传感器/传感设备dk的传感器数据集。每个传感器数据集包括在时间t处获取的一个或多个样本x
kt
。γ
t
表示针对在时间t处的样本的地面真实类。注意,如果k个传感器流被时间同步,那么它们将在时间t处共享相同地面真实。地面真实数据集还包括地面真实质量向量q
t
(其中|q
t
|=k),其表示k个传感器输入中的每个传感器输入的质量。
89.下面参考图6描述生成地面真实质量数据的示例。
90.在操作5.2处,通过神经网络的多个层处理来自地面真实质量数据的传感器数据以生成指示多个传感器中的每个传感器针对给定任务的传感质量的输出。在每次迭代时到神经网络的训练输入x
t
是形式为x
t
=《x
t1
,x
t2
,x
t3

x
tk
》的k元组,其表示在时间t处捕获的来自k个传感器的地面真实传感器数据。神经网络可以与以上参考图3或图4描述的神经网络中的任何神经网络相同。
91.在操作5.3处,根据指示多个传感器中的每个传感器针对给定任务的传感质量的输出与地面真实质量数据的质量值的比较来更新神经网络的参数。损失/目标函数可以被用于将指示多个传感器中的每个传感器针对给定任务的传感质量的输出与地面真实质量数据的质量值进行比较。可以被使用的损失/目标函数的示例包括但不限于交叉熵损失。优化流程可以被应用到损失/目标函数以确定参数更新。例如,梯度下降/上升算法可以被用
于确定参数更新。
92.操作5.2和5.3可以被迭代直到阈值条件被满足。阈值条件的示例包括:阈值迭代次数;一个或多个收敛准则;正在处理的地面真实质量数据的阈值量;和/或关于正在激活的测试数据集的阈值准确性。
93.图6示出了生成地面真实质量数据的示例方法600的概览,其可以在一些实施例中由质量评价器112管理。地面真实质量数据包括带标签的数据集p(x
t
,q
t
),其中x
t
是来自k个设备602的对齐的传感器数据的k元组。q
t
是表示质量地面真实604的k维向量,其中q
tk
是在时间t处的第k个传感器/传感设备的质量。换言之,q
t
=《q
t1
,q
t2
,q
t3
…qtk
》。在一些实施例中,带标签的数据集还可以包括地面真实类γ
t
,其将k元组x
t 602标记为与特定类相关(例如将传感器数据标记为与特定活动相关)。地面真实类可以是离散标签。备选地,地面真实类可以是连续数字标签。
94.在一些实施例中,质量地面真实604可以是二元变量的向量/集合,qi∈{0,1}。二元变量可以指示特定传感器/传感设备适合于给定任务。在一些实施例中,针对传感器i的得分1指示传感器i适合于给定任务,而针对传感器i的得分0指示传感器i不适合于给定任务。例如,如果存在三个传感器/传感设备d1、d2和d3,那么q=[1,1,0]指示d1和d2适合于该任务,并且d3不适合于该任务。
[0095]
在一些实施例中,质量地面真实604可以是连续变量的向量/集合。连续变量可以位于一些预定范围内,qi∈[a,b]。例如,连续变量可以位于范围[0,1]内,其中较大的数指示较高的传感器质量(即,更适合于给定任务)。
[0096]
如以上所讨论的,设备的质量是设备对给定传感任务的适当性。换言之,该质量表示传感器数据x
t 602针对手头的任务做出准确预测(例如,以准确地识别当前用户活动)的能力。质量地面真实604可以使用经预训练的设备特定传感模型606,mk来生成,该模型在给出传感器数据x
tk
的情况下预测输出标签608 y
tk
,即作为说明性示例,可以存在针对设备的har模型,其从在设备上收集的加速度计数据预测诸如跑步、走路、坐着的活动类。输出标签608 y
tk
可以是离散标签。备选地,输出标签608可以是连续数字标签。
[0097]
针对在时间t处的传感器数据602的每个集合,对应模型606,mk被应用到数据x
tk
以生成预测608 y
tk
。每个预测608 y
tk
与在步骤t处的对应地面真实类γ
t
相比较,以确定地面真实质量604 q
tk
。在一些实施例中,地面真实质量604可以由下式给出:
[0098][0099]
换言之,如果来自传感设备dk的预测匹配在时间t处的地面真实,那么来自该设备的数据具有好的质量并且q
tk
被设置为1。然而,其他方法可以备选地被使用。例如,表示预测y
tk
多么接近地面真实类γ
t
的得分可以被生成。
[0100]
所生成的质量地面真实和对应传感器数据可以然后被用于训练610神经网络质量评价模型以从输入传感器数据预测612质量得分,如上面参考图5所描述的。
[0101]
图7示出了使用启发式方法对传感器的运行时评价的示例方法700的流程图,其可以在一些实施例中由质量评价器112管理。该方法可以被用作以上描述的基于神经网络的方法的备选。
[0102]
评价传感质量的另外的方法是利用从传感分类器报告的置信度值。示例包括来自诸如朴素贝叶斯和逻辑回归的概率分类器的概率、来自神经网络中的softmax层的概率以及到支持向量机(svm)中的超平面边界的距离。置信度值表示分类器关于来自给定输入数据的推断输出多么确信。这些可以因此被用作传感质量的度量。例如,概率值可以表示作为可能类的集合中的每个类的成员的给定传感器数据的概率。由模型输出的最高概率可以然后被用作质量的度量。
[0103]
使用置信度值作为传感质量的度量并不总是容易的。例如,尽管现代神经网络提供异常的准确性,但是据报道,它们的概率常常没有很好地被标准,尤其是在多类分类中。即,针对给定传感器数据,概率的相对次序足够准确以选择最可能的类,但是绝对概率值不能很好地表示预期准确性。换言之,仅仅通过查看针对给定任务的两个分类器的输出概率,不能总是判断出哪一个在它的预测中更准确(或确信)。
[0104]
为了解决这个问题,已经在机器学习文献中提出了许多技术来校准分类器的输出并使它们像训练数据的实际概率分布。作为示例,platt scaling可以被用于校准推理模型。platt scaling可以由于它易于实现和良好性能而与神经网络一起被使用。
[0105]
为了从经校准的概率量化传感质量,不确定性抽样策略可以被用于测量实例的不确定性,即要被标记的给定实例不确定性如何。从对应传感器模型mi确定的传感器数据s
ti
的经校准的概率可以被定义为p
it
={p
it,k
},其中p
it,k
是s
ti
属于类ck的概率值,其中c是类的集合{ck}。启发式方法可以基于该定义来使用。
[0106]
在操作7.1处,在第一时间段202期间从多个传感器接收传感器数据。传感器数据源自于驻留在多个用户设备102上的传感器。所接收的传感器数据中的至少一些传感器数据可以是经预处理的传感器数据。所接收的传感器数据中的至少一些传感器数据可以是原始传感器数据。
[0107]
在操作7.2处,针对多个传感器中的每个传感器,对应传感模型mk被应用到从所述传感器捕获的传感器数据。每个传感模型生成在多个类上的概率分布,该概率分布表示对应传感器数据属于那些类中的每个类的概率p
it

[0108]
在操作7.3处,针对多个传感器中的每个传感器,基于针对该传感器的所生成的概率分布来确定传感质量。给定来自传感器i的传感器数据的输入集合sit与对应传感模型mi的传感质量可以被表示为q(sit,mi).
[0109]
在一些实施例中,最高置信度方法被用于确定传感质量。传感质量被认为是最高置信度。即,质量函数被定义为给定传感器数据的最可能标签的概率,即,q(sit,mi)=max(p
it
)。
[0110]
在一些实施例中,最高边际抽样方法被用于确定传感质量。最高边际抽样通过获取两个最可能类的概率之间的差来测量确定性。更具体地,质量函数q被定义为最高概率与次高概率之间的差,即,q(s
it
,mi)=max(p
it
)-max2nd(p
it
),其中max2nd是输出次大值的函数。
[0111]
在一些实施例中,基于熵的方法被用于测量确定性/不确定性。熵的概念已经在信息论的领域提出,而且还广泛地被用于在机器学习中测量不确定性或不纯度。这里,具有较低的熵的实例的分布可以被认为比具有较高的熵的实例的分布置信度更高。质量可以由分布的熵的倒数给出。质量函数q可以被定义为:
[0112][0113]
在操作7.4处,基于多个传感器中的每个传感器针对给定任务的所确定的传感质量来激活多个传感器的子集以在第二时间段210期间收集数据。具有最高质量度量的传感器可以被选择,并且用于在执行窗口期间收集针对给定任务的传感器数据。
[0114]
在第二时间期间收集的传感器数据被用于执行给定任务/在给定任务的执行中使用。例如,由麦克风收集的音频数据被用于执行热门词检测。
[0115]
图8示出了将传感器的运行时评价的方法应用到健康管理应用的结果800的示例。该示例仅仅是本文公开的系统、方法和装置可以被应用到的许多示例中的一个示例。该应用包括使用imu来捕获运动活动(例如走路、站立和坐着)和使用麦克风来捕获情绪状态的健康监测应用。这些属性然后被求和并被提供给用户,例如与它们的身心健康的视觉和对话反馈一起。该应用被示出为在智能电话802上被执行,但是可以备选地在诸如智能手表、平板计算机等的任何有能力的装置上被执行。
[0116]
智能电话802(或备选装置)可以连接到多个感觉设备,例如通过无线网络协议(例如ble和/或wi-fi)。感觉设备可以提供例如运动和音频数据。这样的传感设备可以例如包括智能电话802(在图8中被标记为“p”)、智能手表(在图8中被标记为“w”)和智能耳塞(在图8中被标记为“w”)。传感设备中的每个传感设备可以包括以下中的一项或多项:加速度计、陀螺仪和/或麦克风。
[0117]
该应用使用运行时质量评价和执行规划能力以选择性地使用传感设备和它们对应的传感模型中的一项或多项以跟踪健康属性。健康属性包括活动属性和情绪属性。
[0118]
针对两个用户804、806提供运行时评价的结果。针对每个用户804、806示出五个工作周期系列808、810。在每个工作周期期间,针对可用任务(在该示例中,活动评价或情绪评价)中的一个任务对可用传感器812、814的评价被执行以选择可用传感器中的一个或多个传感器来执行任务。在示出的示例中,智能耳塞、智能手表和智能电话均能够感知活动评价所要求的数据,而仅仅智能耳机和智能电话能够感知情绪评价所要求的数据。
[0119]
所选择的传感器816、818然后被用于在工作周期的剩余时间期间收集用于执行对应任务的传感器数据。注意在不同的工作周期期间,在评价阶段期间收集的传感器数据可以是不同的,和/或背景可以改变,因此可以在不同的工作周期期间针对相同任务选择不同的传感设备。例如,在针对第一用户示出的示例中,智能手表被选择以在第一工作周期期间收集用于活动评价的数据,但是智能耳塞和智能电话被选择以相应地在第四工作周期和第五工作周期期间收集用于活动评价的传感器数据。
[0120]
针对每个工作周期的理想选择820、822出于比较的目的而被示出。
[0121]
图9示出了本文公开的运行时评价方法相对于若干基线的性能的示例的曲线图900。
[0122]
每个曲线图900示出了作为条形图的识别准确性得分902(“f1得分”)和作为线状图的在一个小时内的针对任务的总能量消耗904。两个示例任务被示出:活动监测任务906和音频理解任务908。针对每个活动,使用两个数据集的结果被示出。这些设备被使用在执行每个任务中:用于活动监测的智能电话、智能手表和计算设备(例如rpi zero w))和用于音频理解任务的智能电话、智能手表和计算设备(例如rpi3)。
[0123]
三个基线被示出。一个基线是“单个设备”基线,其表示传统感知实践,其中每个设备单独地做出感知推断而没有与其他设备的任何协作。注意,每个模型针对每个设备使用来自该设备的数据来训练。针对该基线的总能量消耗是三个设备的能量消耗之和。另一基线是“投票”基线。针对投票基线,在任何给定时间点处,从每个设备单独地计算推断,并且已经由大多数设备预测的输出被选择。另一基线是“融合”基线。在融合基线中,使用获取来自所有设备的传感器流作为输入并输出所预测的活动的经训练的模型。
[0124]
如曲线图900中所图示的,基于学习的质量评价(lqa)和基于启发式的质量评价(hqa)比其他基线方法消耗更少能量,同时提供比单个设备基线更好的准确性以及与融合和投票基线相当的准确性或更好的准确性。
[0125]
图10示出了装置104或用户设备102的电子系统1000的示例的示意性表示。
[0126]
电子系统1000包括处理器装备(arrangement)1002。处理器装备1002和其他硬件组件可以经由系统总线(未示出)连接。每个硬件组件可以直接或经由接口连接到系统总线。电源被配置为向电子系统提供功率。
[0127]
处理器装备1002控制电子系统的其他硬件组件的操作。处理器装备1002可以是一个或多个任何种类的集成电路。处理器装备1002可以例如是一个或多个通用处理器。它可以是单核设备或多核设备。处理器装备1002可以是中央处理单元(cpu)或通用处理单元(gpu)。备选地,它可以是更专门的单元,例如risc处理器或具有嵌入式固件的可编程硬件。多个处理器1002可以被包括。处理器装备1002可以被命名为处理部件。
[0128]
电子系统包括一个或多个工作或易失性存储器1004。处理器装备1002可以访问易失性存储器1004以便处理数据并且可以控制数据在存储器中的存储。易失性存储器1004可以是任何类型的ram,例如静态ram(sram)、动态ram(dram),或者它可以是闪存。多个易失性存储器1004可以被包括,但是从附图省略。
[0129]
电子系统包括一个或多个非易失性存储器1006。非易失性存储器1006存储用于控制处理器装备1002的正常操作的操作指令1008的集合。非易失性存储器1006可以是任何种类的存储器,诸如只读存储器(rom)、闪存或磁性驱动存储器。其他非易失性存储器可以被包括,但是从附图省略。
[0130]
处理器装备1002在操作指令1008的控制下操作。操作指令1008可以包括与电子系统的硬件组件相关的代码(即驱动程序)以及与装置的基本操作相关的代码。操作指令1008还可以引起存储在非易失性存储器1006中的一个或多个软件模块的激活。一般来说,处理器装备1002执行永久地或半永久地存储在非易失性存储器1006中的操作指令1008中的一个或多个指令,使用易失性存储器1004暂时存储在操作指令的运行期间生成的数据。
[0131]
处理器装备1002、易失性存储器1004和非易失性存储器1006可以被提供为由片外总线连接的分离的集成电路芯片,或者它们可以被提供在单个集成电路芯片上。处理器装备1002、易失性存储器1004和非易失性存储器1006可以被提供为微控制器。
[0132]
电子系统还包括一个或多个接收器和/或发送器1010。接收器和/或发送器1010可操作用于接收和/或发射电磁信号。
[0133]
电子系统1000包括时钟1012。时钟1012可以是时钟晶体,例如石英晶体振荡器。时钟1012可以是与处理器装备1002分离的组件,其被配置为将时钟信号提供到处理器装备1002。处理器装备1002可以被配置为基于来自时钟1012的信号来提供实时时钟。备选地,时
钟1012可以是时钟晶体,其与处理器装备1002一起被提供在单个集成电路芯片上。
[0134]
在一些实施例中,电子系统包括一个或多个无线和/或有线网络接口1014。网络接口1014促进装置到一个或多个计算机网络的连接以及在装置104/用户设备102与网络的其他成员之间的双向信息交换。这些网络可以包括互联网、局域网(lan)、个域网(pan)、体域网(ban)、无线体域网(wban)、身体传感器网络(bsn)、医学体域网(mban)、车域网(van)、车辆总线网络或由装置104/用户设备102与彼此通信所要求的任何其他网络。网络接口1014包括网络接口控制器,诸如以太网适配器、wi-fi适配器和/或蓝牙适配器。网络接口1014与用于标识网络上的装置的一个或多个网络地址相关联。一个或多个网络地址可以以ip地址、mac地址和/或ipx地址的形式。网络接口1014可以被连接到接收器/发送器1010以便连接到无线网络。
[0135]
电子系统可以被提供有电池1016以向装置104/用户设备102供电。
[0136]
实施例可以以软件、硬件、应用逻辑或软件、硬件和应用逻辑的组合来实现。软件、应用逻辑和/或硬件可以驻存在存储器或任何计算机介质上。在示例实施例中,应用逻辑、软件或指令集被维持在各种常规计算机可读介质中的任何一个常规计算机可读介质上。在本文的上下文中,“存储器”或“计算机可读介质”可以是可以包含、存储、传送、传播或运输用于由指令执行系统、装置或设备(诸如计算机)使用或结合指令执行系统、装置或设备(诸如计算机)使用的指令的任何介质或部件。
[0137]
如相关,对“计算机可读存储介质”、“计算机程序产品”、“有形地体现的计算机程序”等或“处理器”或“处理电路”等的引用应当被理解为不仅包含具有诸如单/多处理器体系结构和顺序/并行体系结构的不同体系结构的计算机,而且包含诸如现场可编程门阵列fpga、专用电路asic、信号处理设备和其他设备的专门电路。对计算机程序、指令、代码等的引用应当被理解为将用于诸如硬件设备的可编程内容的可编程处理器固件的软件表示为用于固定功能设备、门阵列、可编程逻辑器件等的处理器或配置的设置或配置设置的指令。
[0138]
如本说明书中所使用的,术语“电路系统”是指以下中的全部项:(a)仅硬件电路实现(诸如以仅模拟和/或数字电路系统的实现);以及(b)电路和软件(和/或固件)的组合,诸如(如果适用):(i)(多个)处理器的组合或者(ii)(多个)处理器/软件的部分(包括一起工作以使诸如移动电话或服务器的装置执行各种功能的(多个)数字信号处理器、软件和(多个)存储器);以及(c)电路,诸如(多个)微处理器或(多个)微处理器的部分,其要求软件或固件以进行操作,即使软件或固件物理上不存在。
[0139]“电路系统”的该定义适用于本说明书中,包括任何权利要求中,对该术语的所有使用。作为另一示例,如在本说明书中所使用的,术语“电路系统”还将覆盖仅处理器(或多个处理器)或处理器及它的(或它们的)伴随软件和/或固件的部分的实现。例如并且如果适用于特定权利要求元件,术语“电路系统”还将覆盖用于移动电话的基带集成电路或应用处理器集成电路或者服务器、蜂窝网络设备或其他网络设备中的类似集成电路。
[0140]
图11示出了计算机可读介质/计算机程序产品1100、1106的示例。在一些示例中,计算机可读介质1100采用便携式存储器设备(诸如“记忆棒”)的形式。在一些示例中,计算机可读介质包括计算机可读磁盘1106,诸如cd-rom或dvd。许多其他示例是可能的。计算机程序产品1100包括包含可以提供使得计算装置能够执行本文描述的功能的逻辑和例程的计算机可读指令的存储器1102。其还可以包括用于与计算装置通信的接口1104,诸如以usb
接口为例。在一些示例中,计算机可读介质/计算机程序产品可以是非瞬态的。
[0141]
尽管本文描述的方法和装置的各个方面被阐述在独立权利要求中,但是其他方面可以包括来自所描述的实施例和/或从属权利要求的特征与独立权利要求的特征的其他组合,而不只是明确阐述在权利要求中的组合。
[0142]
本文还要指出的是,尽管上面描述了各种示例,但是这些描述不应当在限制性的意义上来查看。相反,存在可以在不脱离如随附权利要求书中所限定的本发明的范围的情况下做出的若干变型和修改。保护范围由随附权利要求书限定,适当考虑等同于权利要求中指定的元件的任何元件。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献