CN111602153A - 自动化的本地化机器学习训练 - Google Patents
自动化的本地化机器学习训练 Download PDFInfo
- Publication number
- CN111602153A CN111602153A CN201880086373.1A CN201880086373A CN111602153A CN 111602153 A CN111602153 A CN 111602153A CN 201880086373 A CN201880086373 A CN 201880086373A CN 111602153 A CN111602153 A CN 111602153A
- Authority
- CN
- China
- Prior art keywords
- sensor
- data
- model
- physical sensor
- physical
- 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.)
- Granted
Links
- 238000010801 machine learning Methods 0.000 title claims abstract description 278
- 238000012549 training Methods 0.000 title claims abstract description 254
- 238000000034 method Methods 0.000 claims abstract description 94
- 238000001514 detection method Methods 0.000 claims description 73
- 230000004044 response Effects 0.000 claims description 14
- 230000008569 process Effects 0.000 description 45
- 230000015654 memory Effects 0.000 description 25
- 238000005259 measurement Methods 0.000 description 23
- 238000011156 evaluation Methods 0.000 description 20
- 238000002329 infrared spectrum Methods 0.000 description 20
- 238000004891 communication Methods 0.000 description 19
- 238000003860 storage Methods 0.000 description 19
- 238000012545 processing Methods 0.000 description 16
- 238000004422 calculation algorithm Methods 0.000 description 15
- 241000282472 Canis lupus familiaris Species 0.000 description 12
- 238000003384 imaging method Methods 0.000 description 11
- 210000003128 head Anatomy 0.000 description 10
- 238000009434 installation Methods 0.000 description 9
- 238000012360 testing method Methods 0.000 description 9
- 238000005070 sampling Methods 0.000 description 8
- 241000282412 Homo Species 0.000 description 7
- 230000000670 limiting effect Effects 0.000 description 7
- 238000013459 approach Methods 0.000 description 6
- 230000008901 benefit Effects 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 230000009471 action Effects 0.000 description 5
- 230000000694 effects Effects 0.000 description 5
- 230000002829 reductive effect Effects 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 4
- 238000013527 convolutional neural network Methods 0.000 description 4
- 238000003066 decision tree Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 230000014509 gene expression Effects 0.000 description 4
- 230000033001 locomotion Effects 0.000 description 4
- 238000007726 management method Methods 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 238000007637 random forest analysis Methods 0.000 description 4
- 238000001931 thermography Methods 0.000 description 4
- 230000009466 transformation Effects 0.000 description 4
- 238000012384 transportation and delivery Methods 0.000 description 4
- 238000013135 deep learning Methods 0.000 description 3
- 230000007613 environmental effect Effects 0.000 description 3
- 230000007774 longterm Effects 0.000 description 3
- 238000012423 maintenance Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000012805 post-processing Methods 0.000 description 3
- 230000009467 reduction Effects 0.000 description 3
- 230000002411 adverse Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 238000012937 correction Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000009408 flooring Methods 0.000 description 2
- 239000011521 glass Substances 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 230000000737 periodic effect Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 238000002211 ultraviolet spectrum Methods 0.000 description 2
- 239000002023 wood Substances 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 239000008186 active pharmaceutical agent Substances 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 210000004556 brain Anatomy 0.000 description 1
- 230000010267 cellular communication Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 238000003708 edge detection Methods 0.000 description 1
- 238000005265 energy consumption Methods 0.000 description 1
- 238000012854 evaluation process Methods 0.000 description 1
- 230000001815 facial effect Effects 0.000 description 1
- 230000008921 facial expression Effects 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000003370 grooming effect Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000010348 incorporation Methods 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 238000012417 linear regression Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000000691 measurement method Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 238000012634 optical imaging Methods 0.000 description 1
- 238000013021 overheating Methods 0.000 description 1
- 230000036961 partial effect Effects 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 230000003449 preventive effect Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 238000009418 renovation Methods 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 238000013468 resource allocation Methods 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 210000001525 retina Anatomy 0.000 description 1
- 238000013432 robust analysis Methods 0.000 description 1
- 230000001932 seasonal effect Effects 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
- 230000008054 signal transmission Effects 0.000 description 1
- 238000004513 sizing Methods 0.000 description 1
- 230000005236 sound signal Effects 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012706 support-vector machine Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
- 238000009423 ventilation Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
- 238000001429 visible spectrum Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- 230000001755 vocal effect Effects 0.000 description 1
- 230000002087 whitening effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
- G06N20/20—Ensemble learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/217—Validation; Performance evaluation; Active pattern learning techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/25—Fusion techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/285—Selection of pattern recognition techniques, e.g. of classifiers in a multi-classifier system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
- G06T7/75—Determining position or orientation of objects or cameras using feature-based methods involving models
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/776—Validation; Performance evaluation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/80—Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/50—Context or environment of the image
- G06V20/52—Surveillance or monitoring of activities, e.g. for recognising suspicious objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/20—Movements or behaviour, e.g. gesture recognition
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/70—Services for machine-to-machine communication [M2M] or machine type communication [MTC]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- Multimedia (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Medical Informatics (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Databases & Information Systems (AREA)
- Evolutionary Biology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Mathematical Physics (AREA)
- Human Computer Interaction (AREA)
- Psychiatry (AREA)
- Social Psychology (AREA)
- Image Analysis (AREA)
Abstract
用于生成机器学习模型以从物理传感器数据中检测事件实例的技术,包括:将第一机器学习模型应用于来自一位置处的第一物理传感器的第一传感器数据以检测事件实例,确定使用该第一机器学习模型的性能度量不在期望参数范围内,在一时间段期间从与该第一物理传感器相同位置处的第二物理传感器获得第二传感器数据,在该时间段期间从该第一物理传感器获得第三传感器数据,通过基于使用该第二传感器数据检测到的训练事件实例选择该第三传感器数据的各部分来生成因位置而异的训练数据,使用该因位置而异的训练数据来训练第二ML模型,以及应用该第二ML模型而非该第一ML模型来检测事件实例。
Description
背景
机器学习(ML)技术在识别来自各种源的事件的发生方面提供了显著的改进。通过实现ML,计算设备标识事件的能力已经大大提高。尽管这些技术通常与基于云的实现相关联,但它们已经进入到诸如低功耗的物联网(IoT)设备之类的自包含的感测设备中。在一些情形中,设备可以包括传感器,该传感器被配置成捕捉各种类型的模态的数据。设备还可以包括旨在协助事件识别过程的ML模型。
然而,此类设备可以被放置在环境中,或者在其环境中经历变化,此时ML模型的有效性会降低。此外,可能难以既标识此类情景的发生(特别是在环境中发生间歇性变化所导致的情景中)并获得更有效的新ML模型。为了在这些和其他类型的情景中建立更可靠的ML模型,开发改进的ML模型训练过程是必要的。
概述
公开了一种用于生成ML模型以从物理传感器数据中检测事件实例的系统。该系统包括:第一物理传感器,该第一物理传感器在第一位置处;第二物理传感器,其中该第二物理传感器不同于该第一物理传感器;ML事件检测组件,该ML事件检测组件在第一位置处并被配置成应用第一ML模型以基于从该第一物理传感器获得的传感器数据来检测事件实例;以及机器可读介质,该机器可读介质包括当由该系统执行时使得该系统执行以下操作的指令:在该ML事件检测组件处接收从该第一物理传感器获得的第一传感器数据,在该ML事件检测组件处应用该第一ML模型以至少基于该第一传感器数据来检测第一事件并生成对应的第一事件实例数据,至少基于对该第一ML模型的该应用,计算在第一位置中使用该第一ML模型的第一性能度量,自动地确定该第一性能度量是否在期望参数范围内,并且响应于对该第一性能度量不在该期望参数范围内的确定:在第一时间段期间从第一位置处的该第二物理传感器获得第二传感器数据,在第一时间段期间从该第一物理传感器获得第三传感器数据,通过基于使用该第二传感器数据检测到的第一训练事件实例选择该第三传感器数据的各部分来生成第一因位置而异的训练数据,至少基于该第一因位置而异的训练数据来训练第二ML模型,以及重新配置该ML事件检测组件以应用该第二ML模型而非该第一ML模型。
在另一实现中,公开了一种用于生成ML模型以从物理传感器数据中检测事件实例的方法。该方法包括:在第一位置操作包括第一物理传感器和ML事件检测组件的第一设备,其中该ML事件检测组件被配置成应用第一ML模型以基于从该第一物理传感器获得的传感器数据来检测事件实例。该方法进一步包括:在该ML事件检测组件处接收从该第一物理传感器获得的第一传感器数据,以及在该ML事件检测组件处应用该第一ML模型以至少基于该第一传感器数据来检测第一事件并生成对应的第一事件实例数据。此外,该方法涉及:至少基于对该第一ML模型的该应用,计算在第一位置中使用该第一ML模型的第一性能度量,以及自动地确定该第一性能度量不在期望参数范围内。响应于对该第一性能度量不在该期望参数范围内的确定,该方法进一步涉及:在第一时间段期间从第一位置处的第二物理传感器获得第二传感器数据,其中该第二物理传感器不同于该第一物理传感器,在第一时间段期间从该第一物理传感器获得第三传感器数据,以及通过基于使用该第二传感器数据检测到的第一训练事件实例选择该第三传感器数据的各部分来生成第一因位置而异的训练数据。此外,该方法包括:至少基于该第一因位置而异的训练数据来训练第二ML模型,以及重新配置该ML事件检测组件以应用该第二ML模型而非该第一ML模型。
提供本概述以便以简化的形式介绍以下在详细描述中进一步描述的概念的选集。本概述并不旨在标识所要求保护的主题的关键特征或必要特征,亦非旨在用于限制所要求保护的主题的范围。此外,所要求保护的主题不限于解决在本公开的任一部分中提及的任何或所有缺点的实现。
附图简述
附图仅通过示例而非限制的方式描绘了根据本教导的一种或多种实现。在附图中,相同的附图标记指代相同或相似的元素。此外,应当理解,附图不必按比例绘制。
图1例示了用于生成机器学习(ML)模型的示例系统,该机器学习(ML)模型用于借助第二物理传感器从第一物理传感器中检测事件;
图2例示了用于生成训练数据的示例办法,该办法可以在图1中例示的系统上被实现并且结合针对该系统描述的各种特征;
图3A和3B例示了用于使用低成本传感器生成对事件检测有效的初始和经更新的ML模型,并将所得的ML模型应用于事件检测的示例架构;
图4例示了室内零售店或室内购物中心的部分;
图5例示了图4中的环境已经改变到正被应用的ML模型变得不那么有效的程度的示例;
图6描绘了图5中呈现的场景的延续,其中第二物理传感器已被安装成邻近于第一物理传感器;
图7是呈现用于通过传感器实现自我评估,以及使用临时安装的第二高成本物理传感器对传感器设备进行自动化再训练的示例过程的流程图;
图8例示了室外零售空间中的传感器设备的示例;
图9是具有包括两个物理传感器的第三传感器设备的室内零售店的示例;
图10是呈现用于实现传感器设备的评估模式特征的示例过程的流程图;
图11是例示示例软件架构的框图,其各个部分可以与各种硬件架构结合使用,其可以实现所描述的任何特征;以及
图12是例示被配置成从机器可读介质读取指令并执行所描述的任何特征的示例机器的各组件的框图。
详细描述
在下面的详细描述中,通过示例的方式阐述了许多具体细节以提供对相关教导的透彻理解。然而,显然的是,可以在没有此类细节的情况下实践本教导。在其他实例中,为了避免不必要地混淆本教导的各方面,众所周知的方法、程序、组件和/或电路系统在相对较高的层次上进行了描述而没有详细说明。在以下材料中,方向指示(诸如“顶部”或“左侧”)仅是为了在以下讨论期间提供参考框架,而非旨在指示所描述的物品的所需、期望或预期的取向。
如上所述,在对感兴趣的事件(以及那些事件的各实例)的标识中使用低成本物理传感器会带来很多挑战。物理传感器数据(或“传感器数据”)可通过使用对物理现象的发生和/或程度进行测量并提供与此类测量有关的信息的任何类型的物理传感器(在一些示例中,可能包括用于控制和/或通信的控制逻辑)来获得。通常,与高成本传感器相比,低成本物理传感器被认为提供较低可靠性或较低质量的数据。出于本说明书的目的,“低成本传感器”或“经济型传感器”是指与另一高成本物理传感器相比,其能够以相当低的能耗或功率使用、散发出相当少的热量、在一个或多个维度和/或体积上相当小、需要相当少的维护、不需要特定的操作条件、产生需要相当少的处理的传感器数据、和/或在制造和/或操作方面具有相当小的货币成本的物理传感器。高成本传感器可以具有与低成本传感器不同的传感器类型或相同的传感器类型。高成本传感器可以提供与低成本传感器不同的传感器数据类型或相同的传感器数据类型。在一些实现中,单个传感器可被选择性地作为低成本或高成本传感器来操作;例如,传感器可被选择性地以低保真度或高质量模式,或者以更多能量或处理器密集型高保真或高质量模式操作。
出于本公开的目的,“传感器类型”是指物理传感器被设计成以其操作和/或接收或检测有关信息的特定模态。例如,一些宽泛的模态可以包括但不限于:音频、光、触觉、流速、距离、压力、运动、化学、气压、湿度和温度。在这些模态中的每一者中,都有各种各样的特定模态或传感器类型,以及反映传感器测量值的各种各样的传感器数据类型。作为一个示例,光模态包括可见光谱(例如,RGB)、红外光谱(IR)、紫外光谱(UV)、以及电磁光谱的所有其他可能的子集。类似地,声音的所有频率范围(包括可听和不可听的声音)都落入音频模态。此外,振动、压力、触摸或接触数据类型与触觉模态相关联。
出于本公开的目的,术语“设备”可以在单个位置处涵盖一个或多个分别供电的多个硬件单元。例如,传感器设备可被具体化为两个单元,即第一单元和第二单元,其中第一单元包括低成本物理传感器、通信单元(无线或有线)和电池,而第二单元被配置成从第一单元接收物理传感器数据并对接收到的物理传感器数据应用机器学习模型。此类实施例可用于进一步利用通过使用低成本传感器获得的益处。例如,当低成本传感器在单独的单元中时,其功率需求可能低到足以让它由电池供电达延长的时间段,这可能有利于低成本传感器的安装和使用。设备可以被称为“机器”。
如上所述,使用低成本物理传感器来标识事件通常是更理想的,因为消费者希望降低所选传感器的初始购买成本和/或相关联的操作成本。但是,此类低成本传感器可能无法提供消费者特别希望的结果。例如,在一些情形中,用户可能希望捕捉或收集有关某位置中特定目标的数据。低成本传感器可能不够精密或分辨率不够高,以致于无法准确地检测所需的目标信息。然而,如上所述,高成本传感器在购买和/或操作方面可能具有若干缺点。零售商可能需要将设备安装在通风增强的区域中以最大程度地减少过热,该设备可能比零售区域的最佳尺寸大,从而阻碍了店面的一部分,或者难以融入周围环境。
图1例示了用于生成机器学习(ML)模型170的示例系统100,该机器学习(ML)模型170有效地借助第二物理传感器130从第一物理传感器120的第一类型的物理传感器数据122中检测事件,以生成因位置而异的训练数据152。由此得到的经训练的ML模型170可然后在不使用第二物理传感器130的情况下,基于从第一物理传感器120获得的传感器数据来检测事件实例。
第一物理传感器120被定位在位置110中并且被布置成执行对环境112的测量,并且基于所执行的测量来生成第一传感器数据类型的第一传感器数据122。环境112也可以被称为场景112。在由第一物理传感器120执行的一些测量中,环境112内的主体114可以影响并且被记录在第一传感器数据122的相应部分中。第一物理传感器120可以被配置成以选定的采样率捕捉新的样本。第二物理传感器130也被定位在位置110中并且被布置成执行对环境112的测量,并且基于所执行的测量来生成第二传感器数据类型的第二传感器数据132。在由第一物理传感器120执行的一些测量中,环境112内的主体114可以影响并且被记录在第一传感器数据122的相应部分中。在不同的示例中,第一物理传感器120或第二物理传感器130可以是IR相机、RGB相机、话筒阵列或被配置成检测物理现象的任何其他类型的传感器。在一些实现中,第一物理传感器120和第二物理传感器130具有针对不同模态的不同传感器类型;例如,第一物理传感器120可以是话筒,而第二物理传感器130可以是用于检测视觉事件以用于训练从音频数据中识别此类事件的ML模型的成像相机。
尽管并非在所有示例中都是必需的,但在一些示例中,最好将由第一物理传感器120执行的测量与由第二物理传感器130执行的测量同步。例如,此类同步可以导致第一传感器数据122包括在第二传感器数据132的样本或样本组被捕捉时、大约被捕捉时、捕捉期间或大约捕捉期间所捕捉的相应样本或样本组。
训练事件检测组件140(其可以被称为“训练事件检测模块”)接收第二传感器数据132、检测感兴趣的事件的实例、并产生与检测到的事件实例相对应的训练事件实例数据142。在一些示例中,训练事件检测组件140进一步执行对检测到的事件实例的标记,并且与一个或多个所得的标记相对应的数据可被包括在训练事件实例数据142中。在一些示例中,训练事件检测组件140进一步生成与事件实例的检测、类别和/或标记相关联的置信度值,并且与一个或多个置信度值相对应的数据可以被包括在训练事件实例数据142中。在一些情况下,训练事件检测组件140可以检测第二传感器数据132中的多个并发事件实例,并生成训练事件实例数据142的多个对应项。
在第二传感器数据132随时间的多个样本反映出现训练事件检测组件140被配置成对其进行标识的事件的情况下,可以产生训练事件实例数据142的多个对应项。例如,如果第二物理传感器130将第二传感器数据132提供为一系列图像帧,并且训练事件检测组件140被配置成检测人脸在此类图像中的出现,则在一些实现中,单独的训练事件实例可被标识,并且针对包括人脸的每一图像帧生成训练事件实例数据142的一个或多个对应项,即使已经为前一帧针对同一人脸生成了训练事件实例数据142。
训练数据生成器150(其可被称为“训练数据生成模块”)通过自动选择和标记第一传感器数据122中与训练事件检测组件140所标识的训练事件实例数据142的相应项(其进而基于第二传感器数据132的对应部分被标识)对应的部分来生成因位置而异的训练数据152。在一些实现中,由于分析第二传感器数据132以生成对应的训练事件实例数据142中的等待时间,第一传感器数据122可以被缓冲并基于第二物理传感器130对所标识的事件实例执行测量的时间被选择性地从缓冲器检索。在一些示例中,训练事件实例数据142可以标识特定的感兴趣区(诸如,但不限于底层第二传感器数据132中的感兴趣区),并且仅选择传感器数据122中与所标识的感兴趣区相对应的一部分。这允许通过省略第一传感器数据122中对训练几乎没有影响或没有影响的部分来减小因位置而异的训练数据152的大小,并相应地减小存储空间、带宽以及用于处理所得的因位置而异的训练数据152的计算。在一些示例中,因位置而异的训练数据152可以包括附加元数据,诸如捕捉的位置、捕捉的时间和日期、第一传感器120和/或第二传感器130的硬件细节(诸如但不限于品牌、型号和/或分辨率)和/或第一传感器120和/或第二传感器130的操作参数(例如但不限于采样率、曝光时间和/或质量设置)。元数据可被用于为特定的ML训练会话自动地选择适当的训练数据部分。
在一些实现中,训练数据生成器150可以应用各种标准来选择为其生成因位置而异的训练数据152的事件实例。一个此类标准可以是当前事件实例的第一传感器数据122与先前事件实例的第一传感器数据122的相似性。例如,诸如指纹、散列、局部特征分析或平方差之和之类的技术可被用于确定当前事件实例的第一传感器数据132与先前的第一传感器数据132太相似以致于不可能有意义地改进当前因位置而异的训练数据152。另一此类标准是训练事件实例数据142是否指示低置信度值(诸如低于阈值置信度值),并且此类事件实例可被排除。
在一些实现中,因位置而异的训练数据152或其所选部分被结合到训练数据储存库154(其可以被称为“训练数据存储模块”)中。在一些实现中,因位置而异的训练数据152可被传送到远程计算机服务器(图1中未例示),该远程计算机服务器被配置成维护跨位置训练数据154并收集从各个位置收集到的因位置而异的训练数据152。通过从各个位置收集训练数据,更一般化的经训练的ML模型170可被产生。在一些实现中,各种标准可被用于选择性地将因位置而异的训练数据152的项结合到训练数据储存库154中或将训练数据项从训练数据储存库154中移除。例如,训练数据储存库154中年龄和/或许多相似或相关的训练数据项可能会影响训练数据储存库154中训练数据项的并入或保留。
在一些实现中,可以从远程系统本地地接收存储在训练数据储存库154中的训练数据或所选部分,以与本地生成的因位置而异的训练数据152结合使用以生成ML模型170。此类实现对于维护在位置110处发生的事件的私密性是有用的,同时使用来自其他位置的训练数据来更好地一般化和改善ML模型170的鲁棒性。
ML模型训练组件160(其可以被称为“ML模型训练模块”)被配置成根据从训练数据储存库154中获得的因位置而异的训练数据152和/或训练数据项生成经训练的ML模型170。在一些实现中,训练可以在远离位置100的地方被执行,诸如在为训练提供大量计算资源的云服务器平台上。在一些实现中,训练可以被本地地或在专用网络内被执行,这对于维护在位置110处发生的事件的私密性是有用的。在一些实现中,ML训练组件160被配置成从相同或相似的训练数据中自动地生成多个不同的ML模型以进行比较。例如,不同的ML算法可以被训练,诸如但不限于决策树、随机决策森林,、神经网络、深度学习(例如,卷积神经网络)、支持向量机、回归(例如,支持向量回归,贝叶斯线性回归或高斯过程回归)。作为另一示例,模型的大小或复杂度可以在不同的ML模型之间变化,诸如决策树的最大深度、或卷积神经网络中隐藏层的数量和/或大小。作为另一示例,不同的训练办法可能被用于训练不同的ML模型,诸如,但不限于,对训练数据的训练、验证和测试集的选择,对训练数据项的排序和/或加权,或者训练迭代的次数。所得多个经训练的ML模型中的一者或多者可以基于诸如但不限于准确性、计算效率和/或功率效率等因素被选择。在一些实现中,单个经训练的ML模型170可被产生。
用于训练ML模型的各种ML算法和技术在美国专利申请No.2013/0346346(公布于2013年12月26日,题为“Semi-Supervised Random Decision Forests for MachineLearning(用于机器学习的半监督随机决策森林)”)、No.2014/0122381(公布于2014年5月1日,题为“Decision Tree Training in Machine Learning(机器学习中的决策树训练)”)、No.2014/0172753(公布于2014年6月19日,题为“Resource Allocation for MachineLearning(用于机器学习的资源配置)”)、No.2015/0248764(公布于2015年9月3日,题为“Depth Sensing Using an Infrared Camera(使用红外相机进行深度感测)”)、No.2015/0248765(公布于2015年9月3日,题为“Depth Sensing Using an RGB Camera(使用RGB相机进行深度感测)”)、No.2017/0132496(公布于2017年5月11日,题为“Hardware-EfficientDeep Convolutional Neural Networks(硬件高效深度卷积神经网络)”)、No.2017/0206431(公布于2017年7月20日,题为“Object Detection and Classification inImages(图像中的对象检测与分类)”)、No.2017/0236286(公布于2017年8月17日,题为“Determining Depth from Structured Light Using Trained Classifiers(使用经训练的分类器从结构光确定深度)”)、No.2017/0262768(公布于2017年9月14日,题为“Depthfrom Time-of-Flight Using Machine Learning(使用机器学习的飞行时间深度)”)中进行了讨论。
图2例示了用于生成训练数据270的示例办法,该办法可以在图1中例示的系统100上被实现并且结合针对该系统描述的各种特征。尽管图2例示了针对特定时间点生成训练数据,但是应当理解,所描述的技术可被应用于在其他时间由第一和第二物理传感器220和230获得的传感器数据,并且可被应用于连续样本(例如,以特定帧速率捕捉的连续图像帧)。图2包括第一物理传感器220和第二物理传感器230,它们都被布置成执行对环境210的测量,该环境210在图2所例示的时间包括人类主体212。针对图1中的第一和第二物理传感器120和130的以上描述分别适用于第一和第二物理传感器220和230。在图2所例示的示例中,第一物理传感器220是RGB或IR光学成像相机,其被布置成在诸如人类主体212之类的人穿过环境210时捕捉他们的头顶图像。例如,第一物理传感器220可以被安装在天花板上。已经从第一物理传感器220获得采用RGB或IR图像形式的第一传感器数据222,并且该第一传感器数据222包括对应于人类主体212的位置的测量。
第二物理传感器230是深度成像相机,诸如但不限于飞行时间IR深度相机(诸如Microsoft Kinect),其被类似地布置成在诸如人类主体212之类的人穿过环境210时捕捉他们的头顶深度图像。例如,第一物理传感器220可以被安装在天花板上。采用深度图像形式(其中像素值对应于与第二物理传感器230的估计距离)的第二传感器数据232已经从第二物理传感器230获得,并且包括基于由第二物理传感器230在与第一传感器数据222被第一物理传感器220捕捉到的大致相同的时间执行的测量的值。在一些实现中,第一物理传感器220和第二物理传感器230被紧密地定位以减少视差效应,这简化并减少了误差。
第二传感器数据232被提供给训练事件检测组件240(其可以被称为“训练事件检测模块”)。训练事件检测组件240可以包括以上针对图1中的事件检测组件140描述的各种特征。在此特定示例中,训练事件检测组件240被配置成检测在诸如第二传感器数据232之类的头顶深度图像数据中捕捉到人类主体的事件,并且每个检测到的人类都被报告为一个事件实例(尽管在一些示例中,多个人类可能被报告为单个事件实例)。此外,尽管示例训练事件检测组件240分析了各个深度图像,但是在其他示例中,来自由第二物理传感器230捕捉的其他深度图像的数据或先前生成的事件实例数据也可被考虑。在此示例中,人工编程的算法被用于进行事件检测,尽管在其他示例中,ML模型可被应用于事件检测。训练事件检测组件240标识深度图像232的第一部分,在该第一部分中,经估计的距离位于人类头部的典型范围内。深度图像232的第一部分随后被分析以寻找在既定人类大小范围内的连续像素的团块(blob)。在一些情况下,诸如当多个人处于环境210中由第二传感器230测量的部分中时,多个团块可以针对各个人类主体被标识。
针对所标识的每个团块,团块中最接近第二物理传感器230的点(具有距离T)被标识,该点被假定为人类头部的顶部。基于人类头部的既定高度范围来选择所估计的头部高度H(并且在一些示例中,基于团块的面积来选择高度)。然后,深度图像232的第二部分被标识,其中所估计的距离在T和(T+H)之间。检查深度图像232的第二部分,计算机视觉库(诸如但不限于OpenCV)被应用以标识深度图像232的第二部分内的椭圆,该椭圆的周长在人类头部周长的既定范围内。如果此类椭圆被标识,则确定该团块对应于人类主体(或更具体地,人类主体的头部)。对深度图像232的第一部分中标识的其他团块重复此过程。
在图2所例示的示例中,仅一个人类(人类主体212)被训练事件检测组件240检测到,并且针对与深度图像232对应的时间生成训练事件实例数据的单个对应项。在此示例中,训练事件实例数据包括经标记的深度图像250,其将包括在团块中的像素标识为掩模256,并且还例示了针对所标识的人类的方形或矩形边界框。在一些示例中,边界框可以是以椭圆的中心为中心的固定尺寸,或者深度图像232中的附加像素可以被标识为可能与检测到的人类对应并且边界框被布置成围绕所标识的附加像素。训练事件实例数据可以包括诸如但不限于对掩码256中包括的像素的标识、边界框254的位置和大小、和/或团块或椭圆的中心的二维位置等信息。
训练事件实例数据被提供给训练数据生成器(其可以包括针对图1中的训练数据生成器150描述的各种特征)。训练数据生成器将训练事件实例数据所指示的各种像素位置(例如,包括在掩码256中的像素或边界框254的位置)从深度图像坐标(并且在一些示例中,其在深度映射232中的距离估计值)变换到第一传感器数据222中的位置。例如,此变换可以解决由第一和第二物理传感器220和230的不同位置引起的视差效应。在一些实现中,该变换可以替代地由事件检测组件240来完成。经标记的图像260例示了针对第一传感器数据222的边界框264和掩模266,其是通过对经标记的深度图像250中的边界框254和掩模256执行此类变换而得到的。
在图2中例示的示例中,训练数据生成器然后生成因位置而异的训练数据270。在此示例中,因位置而异的训练数据270包括第一传感器数据222的所选部分272。在此情形中,所选部分272是第一传感器数据222在边界框264内的部分。因位置而异的训练数据270还包括指示由掩模266指示的经标记的像素276的掩模274。通过在因位置而异的训练数据270中仅包括第一传感器数据222的所选部分272,并且省略第一传感器数据222中对训练几乎没有影响或没有影响的其余部分,这允许减小存储空间、带宽以及用于处理因位置而异的训练数据270的计算。但是,在一些示例中,所有第一传感器数据222,基本上所有第一传感器数据222或第一传感器数据222的预定部分可以替换地被包括在因位置而异的训练数据270中。针对因位置而异的训练数据152描述的其他特征也可被应用于因位置而异的训练数据270。
然后,因位置而异的训练数据270以及(无论是针对图2所示的位置还是从其他位置获得的)附加训练数据被用于如上所述结合图1中的因位置而异的训练数据152、训练数据储存库154、ML模型训练组件160和经训练的ML模型170来生成ML模型。使用适当的训练数据,所得的经训练的ML模型将能够有效地标识由与第一物理传感器220相同或相似的其他低成本物理传感器(例如,生成相同类型的数据,诸如RGB图像或IR图像数据)以及用于生成训练数据的其他此类传感器提供的传感器数据中人类的存在情况。附加地,所得的经训练的ML模型不使用来自与第二物理传感器230相似的高成本物理传感器的传感器数据。取决于诸如获得针对其的训练数据的环境的多样性、观察到的和标记的现象的多样性以及训练模型的大小之类因素,所得的经训练的模型可以被充分地一般化为在使用低成本传感器的许多情况下是有效的。在一些示例中,针对特定位置210优化所得的经训练的ML模型。这可以通过使具有低处理资源的硬件有效地检测事件来提高准确性和性能并降低成本。
在图2中,相对于高成本传感器物理传感器230,第一物理传感器220是低成本传感器。例如,与RGB或IR成像相机相比,深度相机通常在体积、大小、功耗、货币成本和计算需求方面具有更高的成本。然而,如下文例示的,深度相机230对所例示的训练数据收集是有利的,因为它使用对在不同位置处可能遇到的许多差异不敏感的测量技术,此外,也可用对此应用中感兴趣的事件提供可靠且一致的标识的鲁棒性分析技术。注意,对于单独或组合的第一物理传感器220(除了RGB或IR成像传感器之外的其他类型的低成本物理传感器)而言,当与经适当训练的模型一起使用时,可以有效地检测感兴趣的事件,并且类似地用于生成训练数据。还应注意,对于单独或组合的第二物理传感器230(除了深度相机之外的其他类型的高成本物理传感器)而言,可以有效地检测事件以生成训练数据。还应注意,ML模型可以在使用相同的底层硬件的情况下被类似地生成并被应用以标识其他类型的事件。
图3A和3B例示了示例架构300,该示例架构300用于在借助于高成本传感器的情况下生成对于使用低成本传感器对事件检测有效的初始和经更新的ML模型,以及在不借助于高成本传感器的情况下对于所得的用于使用低成本传感器进行事件检测的ML模型的应用。图3A和3B例示了被包括在传感器设备310中的第一组元件、被包括在训练设备312中的第二组元件以及被包括在远程系统314中的第三组元件。应当理解,所例示的各元件的此特定布置仅仅是说明性的,并且在其他实现中所例示的各元件可以被不同地布置。例如,在一些实现中,第一和第二组元件被包括在单个设备中。在一些实现中,元件372、380和382被包括在训练设备312中。附加地,在一些实现中,一些元件可被省略、附加元件可被包括、和/或一些元件可被包括在图3A和3B中未例示的附加设备或系统中。
传感器设备310被配置成除其他外,将经训练的ML模型(诸如图1中的经训练的ML模型170或图2中描述的经训练的ML模型)应用于从低成本第一物理传感器320获得的第一传感器数据322。物理传感器120和220的各种特征和应用也可以应用于第一物理传感器320。第一物理传感器320具有第一物理传感器类型,并且被布置成测量在环境302中发生的物理现象。被测量的物理现象可能会受到各种感兴趣的事件的影响,诸如但不限于人类主体(诸如人类主体304)的存在和/或动作。第一传感器数据322基于由第一物理传感器320执行的测量被生成。
第一传感器数据322作为样本提供,每个样本基于在相应时间点和/或时间段期间执行的一个或多个测量。在一些示例中,第一物理传感器320可被配置成以采样率周期性地生成新样本。例如,成像传感器可以被配置成以每秒10个样本的采样率(其对于成像传感器而言可被称为“帧速率”)来操作,其中每个样本都是由成像传感器捕捉的图像帧。作为另一示例,单声道感测设备可以以显著更高的采样率(诸如每秒16000个样本)来生成样本,其中每个样本仅为单个振幅值。在一些实现中,高采样率传感器数据可以被分组为多个样本的集合以供处理。例如,声音传感器数据可能被分组为包含100毫秒采样值的帧中。在一些示例中,此类样本组的大小可被选择以与另一物理传感器的采样率对应,并且可以与另一物理传感器的采样率进行同步。
在一些示例中,第一传感器数据322的各样本可以被临时存储在第一传感器数据缓冲器324(其可以被称为“第一传感器数据缓冲器模块”)中。例如,ML事件检测组件330(其可被称为“ML事件检测模块”)的操作可以涉及来自当前样本的第一传感器数据322,但另外还涉及来自一个或多个先前或后续样本的第一传感器数据322。附加地,在第一传感器数据322被获得以生成训练数据的情况下,第一传感器数据缓冲器324可被用于容适基于由高成本传感器收集的传感器数据检测事件的等待时间。
当传感器设备310正被用于应用ML模型334(例如,先前经训练的ML模型)来基于第一传感器数据320检测事件而非生成训练数据时,第一传感器数据322(在一些示例中经由第一传感器数据缓冲器324)被提供给ML事件检测组件330,该ML事件检测组件330被配置成通过应用ML模型334来基于第一传感器数据322检测事件实例。尽管在一些示例中ML模型334被配置成直接接收和处理第一传感器数据322,但在其他示例中,ML事件检测组件330被配置成使用传感器数据预处理器332(其可被称为“传感器数据预处理模块”来基于被提供给ML模型334的第一传感器数据322生成经预处理的传感器数据。预处理器332可将各种操作应用于第一传感器数据322,诸如但不限于裁剪、数据选择、缩放(例如,到固定大小)、滤波、采样、抽取、模糊、傅立叶变换、归一化、排序、聚类、梯度计算、均值减法、白化、维数缩减,分割、矩阵运算、背景减法、卷积、从多个数据值计算新特征、特征检测、失真校正和/或边缘检测。预处理器332可以收集并处理一系列传感器数据项,诸如连续样本。在一些示例中,预处理器332被配置成选择性地标识第一传感器数据322中ML模型334被应用到其的部分;例如,二维图像可被处理以标识和/或增强图像的子部分以供使用ML模型334进行分析。在一些实现中,预处理器332是可重新配置的,并且基于哪种ML算法正被使用来应用ML模型334来确定由预处理器332执行的操作。例如,可以针对随机决策森林执行第一组操作,并且可以针对深度学习算法执行不同的第二组操作。在一些实现中,预处理器332还可被应用于第一传感器数据322以生成因位置而异的训练数据370,以产生与提供给经训练的ML模型334的训练数据形式相同的训练数据。
经训练的ML模型334指定用于由ML事件检测组件330应用以从第一传感器数据322检测事件的一个或多个相关联的ML算法的操作的参数。在一些示例中,一系列ML算法可被应用,其中较早的ML算法生成由后续ML算法接收和处理的中间数据。取决于底层ML算法和期望的事件实例数据,可以以各种形式提供应用ML模型334的结果。例如,结果可以提供对事件实例的分类和/或提供估计值。在一些示例中,结果可以包括针对分类或值的置信度值(其可被称为“确定性值”或“确定性”)。
尽管在一些示例中,来自应用ML模型334的结果可被直接合并到事件实例数据340中,但在其他示例中,ML事件检测组件330被配置成使用传感器数据后处理器336(其可以被称为“传感器数据后处理模块”),对应用ML模型334的结果进行后处理。在一些示例中,后处理可以包括对置信度值的评价(诸如与一个或多个阈值的比较),以确定是否事件已经被检测到以及是否事件实例数据340的对应项将被生成。
在ML事件检测组件330通过应用ML模型334基于第一传感器数据322来检测事件实例的情况下,ML事件检测组件330生成事件实例数据340的对应项。事件实例数据340可以包括针对图1中的训练事件实例数据142描述的各种特征,诸如但不限于与第一物理传感器320相关联的元数据或与事件实例对应的第一传感器数据322。传感器设备310进一步包括事件处理组件342(其可以被称为“事件处理模块”),该事件处理组件342被配置成接收并处理事件实例数据340。
在非限制性示例中,第一物理传感器320是与第一物理传感器220相似的低成本传感器,并且ML模型334已经如图2所述被训练。结果,ML事件检测组件330生成事件实例数据340,该事件实例数据340通过环境302(例如,感兴趣区域的入口和/或出口区域)检测人类(诸如人类主体304)的存在和移动。通过对此事件实例数据340进行进一步处理,事件处理组件342可以被配置成对进入和离开感兴趣区域的人数进行计数。例如,基于跨第一传感器数据322的连续样本(例如,以帧速率(诸如10Hz)捕捉的RGB或IR图像帧)为人类标识的位置,行进方向可以基于所标识的位置的变化来确定并被用于标识进入和离开的人类。通过将以此方式配置的此类传感器设备部署在感兴趣区域的每个重要入口和/或出口区域(例如,可能不被监测的员工专用通道),即使是感兴趣区域本身不直接被相机跟踪,该感兴趣区域内的人数也可基于由传感器设备中包括的低成本传感器执行的测量而被自动地估计。
传感器设备310被进一步配置成利用环境302自监测ML模型334的性能,因为在某些条件下可能存在特定的经训练的ML模型未按期望执行的情况。例如,在环境302处发生的条件下,ML模型334可能没有被充分地一般化为基于第一传感器数据322有效地标识事件。为了标识此类情况,传感器设备310包括性能度量计算器350(其可以被称为“性能度量计算模块”)和性能度量评价器352(其可以被称为“性能度量评价模块”)。性能度量计算器350被配置成基于当前正被ML事件检测组件330使用的ML模型334的应用来测量、计算和/或记录性能度量。在一些实现中,在检测事件的过程中,由ML模型334或ML事件检测组件330全部或部分地执行对性能度量的计算。在一些示例中,性能度量可以包括由ML模型334输出的结果的置信度值、ML模型334输出的结果、ML模型334和/或ML事件检测组件330的执行时间和/或归因于ML模型334和/或ML事件检测组件330的功耗。对性能度量的计算可以在预定的时间,以规则的间隔进行,和/或可以响应于从远程系统314接收的指令而被计算。多种类型的性能度量可被计算,从而反映ML模型334的有效性的各个方面。在一些示例中,第二传感器数据362可以被收集并偶尔用于计算性能度量和/或与性能度量进行比较,以协助确定准确性。
性能度量评价器352被配置成自动地确定由性能度量计算器350提供的一个或多个性能度量是否不在期望参数范围内。对性能度量的评价可以解释期望和/或观察到的模式。例如,在区域在夜间被关闭时,感兴趣的事件可能很少发生。在一些实现中,期望参数可以是预定的。例如,ML模型334可以期望生成具有预定最小置信度值的特定结果,或者可以期望性能度量具有预定的统计特性(诸如在最小值、最大值或均值或方差范围内)。在一些实现中,可以基于在各种时间尺度和/或时段上考虑的先前计算的性能度量的历史来确定期望参数。例如,性能度量可能被确定为在一天中变化到了意外的程度,这可反映了环境302中不利于当前ML模型334的周期性或重复性变化。作为另一示例,期望参数可以基于对性能度量的长期观察来确定,性能度量超出期望参数的偏移可以反映环境302中不利于当前ML模型334的变化。可被用于标识性能度量异常的一些技术在美国专利申请No.2015/0269050(公布于2015年9月24日,题为“Unsupervised Anomaly Detection for ArbitraryTime Series(任意时间序列的无监督异常检测)”)中进行了讨论。在一些实现中,事件可以响应于性能度量不在期望参数范围内而被记录。在一些实现中,可以为性能度量评价器352选择各种参数或设置,其可以由传感器设备310的制造商设置和/或由最终用户调整。
响应于性能度量评价器352确定性能度量不在期望参数范围内,传感器设备310被配置成自动地执行一个或多个动作以获得对于环境302更有效的经更新的ML模型334。在一些实现中,传感器设备310可以包括存储一个或多个替换ML模型的ML模型存储器392,以及配置成用从ML模型存储器检索到的另一ML模型代替当前ML模型334的ML模型更新器390。如将在后面的示例中更详细地描述的,如果训练设备312或高成本第二物理传感器360被布置成执行对环境302的测量,则传感器设备310可以进入再训练模式,在该再训练模式期间,它会生成因位置而异的训练数据370来训练新的ML模型,就像先前在图1和2中描述的那样。在以此再训练模式操作时,传感器设备310还可以继续应用当前ML模型334直到新的ML模型被提供为止。
在一些实现中,性能度量评价器352被配置成调用更新请求器组件354(其可以被称为“更新请求器”或“更新请求模块”),该更新请求器组件354被配置成与包括在另一系统(诸如远程系统314)中的更新处理器356进行通信。更新处理器356可以被称为“更新处理模块”。在不同的实现中,更新请求器354可以提供包括以下的信息:警报、请求、通知、关于性能度量的细节、和/或在性能度量不在期望参数范围内的一段时间期间收集的数据。在一些示例中,更新处理器356被配置成确定ML模型储存库384中是否存在一个或多个替换ML模型可用,并将任何此类ML模型递送给传感器设备310以供ML模型更新器390使用。此确定可以基于由更新请求器提供的关于传感器310或环境302的信息,以选择潜在合适的ML模型。
在不同实现中,传感器设备310和/或远程服务器314可以发起、执行或参与再训练过程。在一些实现中,再训练过程是指生成新的因位置而异的训练数据370和训练新的因位置而异的ML模型382所涉及的过程或步骤,对于特定传感器设备310及其对应的环境302而言使用该新的因位置而异的ML模型382更有效。在一个实现中,这可以产生针对传感器设备310的上下文和需求而定制的ML模型。在不同实现中,再训练过程可以包括一系列操作,这些操作自动触发邻近低成本第一物理传感器320的高成本第二物理传感器360的安装和/或操作。在一个实现中,再训练过程可以包括对包括高成本第二物理传感器360的训练设备312的自动运输和/或递送。再训练过程可以包括部分地基于由更新请求器354提供的信息来选择训练设备312和/或高成本第二物理传感器360。在一些实现中,再训练过程可进一步涉及由传感器设备310执行的软件指令的自动更新,使得传感器设备310被配置成与训练设备312和/或高成本第二物理传感器360链接和/或协同工作,尽管在其他实现中,此配置可能已被先前包括(如最初安装)在传感器设备310中。一旦训练设备312和/或高成本第二物理传感器360在环境302处操作,传感器设备310就可以进入上述再训练模式。
训练设备312与传感器设备310结合使用以生成因位置而异的训练数据370,这与图1和2中的描述非常相似。与图1和2的示例中的描述非常相似,当以再训练模式操作时,高成本第二物理传感器360收集第二传感器数据362,与此同时低成本第一物理传感器320收集第一传感器数据322。在一些实现中,第一物理传感器320具有第一物理传感器类型(能够以第一模态检测事件),而第二物理传感器362具有不同的第二物理传感器类型(能够以第二模态检测事件)。在一些实现中,第一传感器数据322具有第一传感器数据类型,而第二传感器数据362具有不同的第二数据类型。然而,在一些示例中,第一和第二物理传感器320和360可以具有相同的传感器类型和/或提供具有相同的传感器数据类型的传感器数据。在一些实现中,第一与物理传感器320和360之间的差异可以与每个传感器的分辨率、速度、动态范围、灵敏度和/或噪声有关。例如,第一物理传感器320可以是低分辨率IR相机,而第二物理传感器360可以是具有更高的分辨率的IR相机。在一个非限制性示例中,第一和第二物理传感器320和360两者都可以是组合使用以提供立体深度数据的IR成像相机,并且第二物理传感器360由于其附加的货币成本和操作它所需的附加功率而被认为是高成本的。
与图1和2中的描述非常相似,训练事件检测组件364(其可以被称为“训练事件检测模块”)接收第二传感器数据362并生成对应的训练事件实例数据366。在一些实现中,训练事件检测组件364被配置成将ML模型应用于事件检测,这与针对ML事件检测组件330的描述非常相似。与图1和2的描述非常相似,训练数据生成器368(其可以被称为“训练数据生成模块”)被配置成接收训练事件实例数据366并基于对应的第一传感器数据322生成对应的因位置而异的训练数据370。如上所述,在一些示例中,基于第一传感器数据322的数据可以从第一传感器数据缓冲器324和/或预处理器332被获得以生成因位置而异的训练数据370。当传感器设备310以再训练模式操作时,预处理器332可以被配置成执行附加操作以生成训练数据。在一些示例中,使用由预处理器332提供的数据可以消除或减少直接使用第一传感器数据322时可能发生的与私密性有关的问题。例如,提供特征数据而非原始传感器数据、模糊和/或二次采样可有效地掩盖或移除个人可标识信息。
与图1中的描述非常相似,因位置而异的训练数据370可以被选择性地包括在训练数据储存库372(其可以被称为“训练数据存储模块”)中。在一些示例中,训练数据储存库372还可以包括针对多个不同位置和相异环境而获得的训练数据。在一些实现中,如图3A和3B中的示例所例示的,训练数据储存库372可以由远程系统维护。在一些示例中,针对环境302生成的因位置而异的训练数据370可被用于训练用于其他环境的ML模型,这可以进一步一般化所得的ML模型。例如,因位置而异的训练数据370的一部分可以被包括在用于生成“默认”经一般化的ML模型的训练数据集合中。
从训练数据储存库中获得的训练数据(包括因位置而异的训练数据372)可被ML模型训练组件380(其可以被称为“ML模型训练模块”)用于生成因位置而异的模型382,与图1中的描述非常相似。新获得的因位置而异的训练数据370以及来自先前训练的被包括在训练数据储存库372中的其他因位置而异的训练数据可以被优先加权。在一些示例中,多个不同的因位置而异的训练模型可被生成。在一些实现中,ML模型训练组件380被配置成生成因位置而异的训练模型382,该因位置而异的训练模型382与由传感器设备310执行的其他计算活动相结合,可以实现实时性能。这可能会影响对ML算法或ML模型大小的选择。因此,在传感器设备310提供相当低的计算资源的情况下(诸如物联网(IoT)设备),可以在诸如卷积神经网络之类的深度学习算法上选择诸如决策树或随机决策森林之类的计算密集度较低的ML算法。
在一些实现中,因位置而异的训练模型382可被存储在ML模型储存库384(其可以被称为“ML模型存储模块”)中,并且随后可用于除环境302之外的环境中。因位置而异的模型382由ML模型递送组件386(其可以被称为“ML模型递送模块”)提供给传感器设备310。接收到的因位置而异的模型382被ML模型更新器390使用以重新配置ML事件检测组件330以应用新的经训练的因位置而异的模型382。
在一些实现中,响应于使ML事件检测组件330重新配置有先前未由传感器设备310使用或未针对环境302使用的ML模型(例如,新的经训练的因位置而异的ML模型382),传感器设备310和训练设备312可以暂时以测试模式操作,在该测试模式下,训练设备312继续生成训练事件实例数据366,从而提供与应用新的ML模型334得到的事件实例数据340进行比较的“地面实况(ground truth)”。在一些示例中,在事件实例数据340和训练事件实例数据366显著不同的情况下,因位置而异的训练数据370的对应项可被产生。一旦新的ML模型334在测试模式中被确定为对环境302有效(基于与训练事件实例数据366的比较),传感器设备310就可以返回到正常操作模式,并最终使用第二物理传感器360和/或训练设备312来生成训练事件实例数据366。如果训练设备312已经被临时安装以生成因位置而异的训练数据370,则其可被移除。如果新的ML模型334在测试模式中未被确定为对环境302有效,则传感器设备310和训练设备312可以返回到再训练模式以生成附加的因位置而异的训练数据370和/或ML模型训练组件380被用于生成新的因位置而异的模型382。通过使用每一个此类训练周期,来自当前训练周期的因位置而异的训练数据370,以及可能来自最近训练周期的因位置而异的训练数据370,可以更着重地加权以产生越来越适应环境302的因位置而异的ML模型382。
注意,在图1和3中例示的各示例可以组合地使用多个物理传感器(其可以具有不同类型)来代替第一物理传感器120和310。附加地,在图1和3中例示的各示例可以组合地使用多个物理传感器(其可以具有不同类型)来代替第二物理传感器130和340。
现在参考图4-7,一系列附图例示了所公开的系统和方法的一种可能的应用。应当理解,以下图示仅出于示例目的,并且各种其他实现对于应用所公开的系统和方法是可能的。在图4中,示出了室内零售店或室内购物中心400的一部分。室内购物中心400可以包括几个零售空间,包括作为宠物商店的第一零售空间410。在此示例中,经营宠物商店410的零售商可能会对将第一零售空间410的一部分转换成专门用于狗美容和训练的零售空间感兴趣。然而,在致力于该项目之前,零售商想要确定零售空间410是否受到狗主人的欢迎。零售商获得了包括第一物理传感器(“第一传感器”)420的第一传感器设备(“第一设备”)490。第一传感器设备490的配置和操作与上文针对图3A中例示的传感器设备310的描述非常相似,并且基于从第一物理传感器420获得的传感器数据应用经预训练的ML模型来标识事件。在图4中例示的特定示例中,第一物理传感器420是低成本RGB或IR成像传感器,如针对图2中的第一物理传感器220描述的。
零售商已将第一传感器设备490安装在零售空间410的入口上方,使得第一物理传感器420被布置成捕捉行进通过该入口(其是由第一物理传感器420测量的环境的一部分)的人类和宠物的头顶图像。零售商已安装了第一传感器设备490,目的是确定进入零售空间410的人数,包括与狗同行的人数和不与狗同行的人数。使用高成本深度相机作为第二物理传感器,对由第一传感器设备490应用的ML模型进行训练以检测此类事件已与图2中描述的训练相似地那样被执行,但是训练事件检测组件140被进一步配置成基于深度图像数据来标识狗的位置。例如,为了标识狗,相似的办法可被应用以首先标识头部,该办法可以伴随确认椭圆形的身体部分,该身体部分与深度相机的距离比头部更大,并且远离头部延伸。还可以应用在图1和3中描述的用于生成训练数据(包括在相异环境中的多个位置处获得训练数据)和训练ML模型的附加特征和技术。注意,在图4中例示的应用不限于使用低成本RGB或IR成像传感器和高成本深度相机;还可以成功地应用各种其他物理传感器类型。例如,热成像传感器可被用作高成本传感器。通常可以理解,即使在对比度差的上下文中以及在光线昏暗或完全黑暗的情景中,热成像传感器也可以检测事件。由于热成像传感器“看到”发射的红外热量而非反射的光能,因此与使用低成本RGB或IR相机相比,事件可被更容易辨别。然而,热成像传感器的制造成本远高于低成本RGB或IR相机。
与图3A和3B中关于基于ML模型结果对人类进行计数的讨论非常相似,类似的后处理可被执行以对带狗的人和不带狗的人进行区分,并产生相应的计数。此外,在一些实现中,ML模型可被训练成根据大小对狗进行分类(诸如小型、中型和大型),并且此附加信息可被用于记录带着大狗访问零售空间410的人数,零售商相信这些大狗更有可能被带来以进行训练。
因此,尽管利用传统技术以使用低成本第一物理传感器420基于由第一物理传感器420提供的RGB或IR图像数据来检测感兴趣的事件(人类、狗和/或确定狗的大小)是不可能的、不切实际的和/或不可靠的,但是使用上述经训练的ML模型,第一传感器设备490就能够容适低成本第一物理传感器420的数据类型,并且产生与使用高成本物理传感器(诸如深度相机)将获得的结果基本相似的结果。换言之,尽管第一物理传感器420的硬件有潜在的缺陷或限制,但是第一设备490仍然能够可靠、准确地检测感兴趣的事件实例。通过使用所公开的技术,可以利用使用低成本物理传感器而非高成本传感器的各种好处,诸如但不限于经减小的大小或体积、经减小的功率、经减少的计算资源和/或经降低的货币成本。
与图3A和3B中的讨论非常相似,为了确保由传感器设备应用的ML模型对于检测特定位置或环境处的事件有效,一些实现包括允许自动化自我评估ML模型性能、自动化生成因位置而异的ML模型、自动化验证事件检测准确性和/或与远程服务器或网络自动通信的功能。此外,在不同的实现中,传感器设备可以包括用于识别、通知、通信、传送和/或请求对原始或当前安装的ML模型进行训练修改、调整、校正、更新或任何其他更改的装置。另外,传感器设备可以包括用于接收新的数据、信息、算法、ML模型和/或指令的装置,以及用于执行所提供的指令或将所提供的信息集成到传感器设备中的能力。可以结合第一传感器设备490来应用图3A和3B中描述的各种元件和技术。
图5例示了其中安装有图4中的传感器设备490的环境已经变化到由传感器设备490应用的ML模型在使用低成本第一物理传感器420检测事件时已经变得相当不有效的程度的示例。为了说明的目的,图5描绘了在室内购物中心400已经经历了实质性的外观翻新之后的第一零售空间410和第一传感器设备490。例如,在第一零售空间410前面并延伸到第一零售空间410的入口的走廊中的地板550已经从图4中所示的木地板改变为包括被玻璃砖560覆盖的区域(其反射性与以前的木地板相比明显更强)和设置在玻璃砖460或地板550的其他半透明部分下方的脚下照明570。此种环境的实质性改变可作为试图改善室内购物中心400的氛围、或维护、施工、翻新、所有权变更、季节变化、照明、材料和其他重大环境变化的结果而发生。
如先前针对图3A中的性能度量计算器350描述的,第一传感器设备490被配置成基于当前ML模型的应用自动地计算性能度量,以基于从低成本第一物理传感器420获得的传感器数据来检测事件。此外,第一传感器设备490可以被进一步配置成自动地确定性能度量不在期望参数范围内,如针对图3A中的性能度量评价器352所描述的。第一传感器设备490可以被配置成对性能度量不在期望参数范围内的确定作出响应,如针对图3A中例示的传感器设备310所描述的。例如,一个或多个通信可以被自动地传送到远程系统,诸如图3B中例示的远程系统314。在图5中例示的特定示例中,尽管可能已经尝试了替换ML模型,但已确定要发起再训练过程以捕捉新的因位置而异的训练数据并为第一传感器设备490训练新的ML模型。结果,在一些示例中,训练设备的递送和/或安装被自动地发起。
作为一个示例,图6描绘了图5中呈现的场景的延续,其中第二物理传感器620已被安装成邻近于第一物理传感器420,或以其他方式被布置以测量入口中的事件,以便对程序进行再训练。在此示例中,第二物理传感器620被包括在训练设备690中,该训练设备690可以根据针对图3A中的训练设备312的描述来配置和操作。可以理解,出于此示例的目的,第一物理传感器420代表低成本物理传感器,而第二物理传感器620代表高成本物理传感器。在图6中,第一物理传感器420和第二物理传感器620中的每一者被配置成针对第一零售空间410的入口大致同时地记录、测量或检测它们相应的物理现象。通过此过程,第一传感器设备490在第一时间段内针对第一物理位置(第一零售空间410的入口)自动地获得具有第一数据类型的第三传感器数据(在此示例中为RGB或IR图像数据),并且训练设备690在相同的第一时间段内针对相同的第一物理位置自动地获得具有第二数据类型的第二传感器数据(在此情形中为深度图像数据)。
与针对图3A和3B以及对由传感器设备490最初应用的ML模型的训练的描述非常相似,训练事件实例数据基于由第二物理传感器620获得的第二传感器数据被生成。基于训练事件实例数据和第三传感器数据的对应部分,因位置而异的训练数据被选择性地生成,该因位置而异的训练数据进而被用于训练因位置而异的ML模型,该因位置而异的ML模型对于处于其经变化的环境中的传感器设备490而言应该更有效。传感器设备490被自动地重新配置以应用新的因位置而异的ML模型来代替先前的ML模型。一旦这种情况发生并且已经被成功地测试(如图3A和3B中所描述的),在一些实现中,第一传感器设备490可以将消息传送到远程系统,并且训练设备690和/或第二传感器620可以被移除、停用、禁用或脱离。
如果自动化测试指示模型继续显示差异性或确定新的第二性能度量不在期望参数范围内,则参考图5描述的过程可被自动地重复直到模型在期望参数范围内执行。借助此能力,第一设备390能够利用具有第一数据类型的低成本传感器来提供具有通常与基于由高成本传感器产生的数据的输出相对应的精度的期望输出。在一些情景中,如在图3A和3B中讨论的,进一步的再训练可被执行。在一些实现中,针对图6描述的技术可以与初始安装的传感器设备490、与临时安装的训练设备690结合应用,该训练设备690用于收集训练数据以训练最初将用于传感器设备490的因位置而异的ML模型而非更一般化的ML模型,从而优化传感器设备490在图4所例示的位置处最初使用的ML模型。
图7例示了用于通过包括第一低成本物理传感器的传感器设备(诸如图4-6所例示的设备490)实现自我评估,以及使用临时安装的第二高成本物理传感器对传感器设备进行自动化再训练的示例过程700。在操作710,传感器设备正常地操作,从第一低成本物理传感器获得第一传感器数据,并应用当前ML模型以基于该第一传感器数据标识事件实例(无需使用来自用于训练的高成本物理传感器的传感器数据)。在操作720,传感器设备基于在操作710中对当前ML模型的应用来计算性能度量。在操作730,作出性能度量是否在期望范围内的确定。在一些示例中,操作730基于反映当前ML模型在一个或多个时间段内的有效性的一个或多个性能度量被周期性地执行。如果在730处确定性能度量在期望范围内(在730处为“是”),则过程700在操作710继续。
如果在730确定性能度量不在期望范围内(在730处为“否”),则在操作740开始再训练过程,在该再训练过程中高成本第二物理传感器被安装,如在图3A、3B和6中描述的。在操作750,传感器设备使用低成本物理传感器和高成本物理传感器两者收集附加的本地化训练数据(其被用于生成训练事件实例数据)。在操作760,一旦本地化训练数据已经被收集,新的ML模型就被训练,如先前示例所描述的。在操作770,传感器设备进入测试模式,如先前示例所描述的,其中传感器设备被重新配置以应用新的ML模型,并且对应用于来自低成本第一物理传感器的传感器数据以生成事件实例数据的新的经训练的ML模型是否充分执行作出确定。如果在770确定新的ML模型没有充分执行(在770处为“否”),则再训练过程在750再次开始。如果在770确定新的ML模型充分执行(在770处为“是”),则在操作780处新的ML模型被留用,在操作790处在740被安装的高成本第二物理传感器被移除,然后,该过程返回到操作710,在该操作中使用低成本第一物理传感器来标识事件而无需来自高成本第二物理传感器的协助。
在不同实现中,本文描述的设备和方法也可以适用于其中ML模型并非完全有效和/或以期望参数之外执行的其他情景。在一些情形中,这可能会在传感器设备被安装之后直接发生。为了清楚起见,图8解说了传感器设备的另一示例。在图8中,示出了室外零售店或室外购物中心(“outdoor mall”)的一部分。室外购物中心可以包括几个零售空间,包括同样作为宠物商店的第二零售空间810。零售商获得了包括低成本第三物理传感器(“第三传感器”)820的第二传感器设备(“第二设备”)890。第二传感器设备890被配置成与图4中的第一传感器设备490基本相同,并且也被用于对人类和狗进行检测并计数,如图4中所描述的。
在此示例中,在安装之后,第二传感器设备890被接通并且开始收集并处理数据。如上文参考图5和6中的第一传感器设备490所描述的,第二传感器设备890被配置成基于应用当前ML模型来基于从低成本第三物理传感器820获得的传感器数据检测事件来自动地计算性能度量。此外,与第一传感器设备490一样,第二传感器设备890可被进一步配置为自动地确定性能度量不在期望参数内,可被配置成对性能度量不在期望参数内的确定作出响应,如针对第一传感器设备490描述的。
与图4和5中例示的各示例相反(其中由第一传感器设备490应用的初始ML模型最初是有效的,直到其环境发生实质性变化为止),在图8中例示的示例中,在第二传感器设备890的初始使用期间(诸如在第二传感器设备890在图示位置开始操作之后不久或基本上立即),第二传感器设备890自动地确定性能度量不在期望参数范围内。因此,虽然图5中的类似确定可以基于性能度量的长期历史来作出,但在图8中,最多可获得短期历史(这可能仍然有用),并且诸如预定阈值之类的其他办法可以作为第二传感器设备890的初始ML模型对于初始环境无效的确定的基础。模型的无效性可能涉及多种因素,诸如但不限于,用于生成初始ML模型的训练数据没有从足够广泛的环境中被收集到以一般化到当前环境中,或者第二传感器设备890使用无法一般化到广泛的环境中的简单ML算法和/或模型(例如,由于有限的计算资源)。在图8中,使用临时安装的训练设备来执行再训练过程,基本上与图6中针对训练设备690所描述的方式相同。结果,针对第二传感器设备890产生新的因位置而异的ML模型,其对于图8所示的环境是有效的。与图6和8中描述的方法类似的办法可被用以允许经定制的ML模型被产生以解决因位置而异的因素和/或生成用于更广泛环境的训练数据。
在不同实现中,包括多个物理传感器的传感器设备可被获得。换言之,本文描述的方法可以包括其中在传感器设备初始安装时提供低成本传感器和高成本传感器(以及在一些实现中提供附加物理传感器)的场景。例如,在图9中,与图4类似的场景被例示,但是具有第三传感器设备990,该第三传感器设备990包括低成本第五物理传感器920和高成本第六物理传感器930。在此示例中,与图2、4-6和8中的各示例相似,低成本传感器920是RGB或IR成像传感器,而高成本物理传感器930是深度相机,但如先前解释的,其他传感器类型可被用于任一传感器。第三传感器设备990应用基本上以相同的方式训练的一般化初始ML模型以从自低成本第五物理传感器920获得的传感器数据中检测与第一传感器设备490相同类型的事件实例。第三传感器设备910已经以与图4中的第一传感器设备410相同的方式被安装,并且被配置成检测相同的事件。第三传感器设备990可以被配置成包括图3A中例示的传感器设备310和训练设备312两者中包括的各种特征。在普通操作中,高成本第六物理传感器930不被用于通过应用初始ML模型来检测事件。在一些示例中,高成本第六物理传感器930可以在第三传感器设备990的此类正常操作期间与第三传感器设备990脱离、不活动、禁用和/或断电。然而,在一些实现中,由第三传感器设备990应用的ML模型也可以或替换地被训练以基于由第六物理传感器930获得的传感器数据,单独地或与由第五物理传感器920获得的传感器数据相结合地检测事件。
如参考图5和6中的第一传感器设备490以及图8中的第二传感器设备890所描述的,第三传感器设备990被配置成基于当前ML模型的应用来自动地计算性能度量,以基于从低成本第五物理传感器920获得的传感器数据来检测事件。此外,与第一传感器设备490一样,第二传感器设备890可被进一步配置为自动地确定性能度量不在期望参数内,可被配置成对性能度量不在期望参数内的确定作出响应,如针对第一传感器设备490和第二传感器设备890描述的。
与图6和8中例示的示例相比,其中包括高成本物理传感器的单独训练设备(例如,图6中的训练设备690)被临时安装以实现再训练过程,因为高成本第六物理传感器930随时可用。因此,响应于性能度量不在期望参数范围内的确定,与在图3A、3B、6和8中描述的那些类似的再训练过程可在与由高成本第六物理传感器930收集传感器数据相同的时间段期间使用由低成本第五物理传感器920收集的传感器数据执行。结果,可容易地针对第三传感器设备990训练新的因位置而异的ML模型,其对于图9所示的环境是有效的。在再训练过程之后,第六物理传感器930可以在第三传感器设备990的正常操作期间再次与第三传感器设备990脱离、不活动、禁用和/或断电。在一些示例中,再训练过程可以作为第三传感器设备990的安装的一部分来执行,以开始使用因位置而异的而非一般化的ML模型来操作。
而且,在手头有高成本第六物理传感器930的情况下,附加技术可用于自动地确认当前的ML模型正在有效地工作。在一些实现中,第三传感器设备990被配置成暂时以评估模式操作,其如在图3A和3B中针对测试模式所描述的那样进行操作。在评估模式下,第六物理传感器930临时地与第五物理传感器920一起操作。训练事件实例数据基于从第六物理传感器930获得的传感器数据生成,从而提供“地面实况”,并将其与通过将当前ML模型应用于从第五物理传感器920获得的传感器数据而生成的事件实例数据进行比较。在一些示例中,在第五物理传感器920的事件实例数据与第六物理传感器930的训练事件实例数据明显不同的情况下,因位置而异的训练数据的对应项可被产生以用于训练新的ML模型,在一些示例中,即使当前的评估没有触发再训练过程,该因位置而异的训练数据的对应项也可以被保留以供后续。如果ML模型基于此比较被确定为无效,则第三传感器设备990可以自动地发起再训练过程。否则,第三传感器设备990返回到普通操作,其中第六物理传感器930可以在第三传感器设备990的普通操作期间再次与第三传感器设备990脱离、不活动、禁用和/或断电。
第三传感器设备990可以被配置成周期性地(例如,根据调度),或者在正常操作的预定时间段之后,自动地进入上述评估模式。这允许第三传感器设备990对其ML模型执行“预防性维护”。第三传感器设备990可以被配置成响应于从另一系统接收的指令而进入上述评估模式,该另一系统可以被配置成周期性地或在预定时间段之后自动地发出指令。在一些实现中,第三传感器设备990未被配置成执行先前描述的性能度量计算和评价,而是依赖于偶然的评估模式周期来标识当前ML模型执行不佳的情况。在一些示例中,第三传感器设备990被配置成确定性能度量是否不在第二期望参数内(该第二期望参数比触发上述再训练过程的第一期望参数定义得更窄),以及响应于性能度量不在第二期望参数内的确定而切换到上述评估模式。在一些示例中,第三传感器设备990被配置成在第三传感器设备990的安装和初始操作时或之后不久进入上述评估模式。这样可以立即评价一般化初始ML模型是否有效,并且在ML模型无效时立即进行再训练。在一些实现中,根据对训练设备(诸如训练设备690)的预先计划(包括在传感器设备的初始安装期间)和/或计划(例如,根据周期性调度)安装,可以使用不包括高成本物理传感器的传感器设备(诸如第一传感器设备490或第二传感器设备890)来执行类似的评估过程。
利用以上能力,第三传感器设备990可以被实时地定制以无论其直接使用的物理位置如何都能良好地执行,并且能够快速且有效地响应其环境的变化。
图10例示了用于为包括低成本第一传感器和高成本第二物理传感器两者的传感器设备(诸如图9中例示的传感器设备990)实施评估模式特征的示例过程1000。在图9中描述了过程1000的许多方面。在第一操作1010中,传感器设备在不使用高成本第二物理传感器的情况下操作,这与针对传感器设备990的普通操作的描述非常相似。在操作1020,传感器设备进入评估模式,该评估模式可以响应于各种事件(诸如图9中描述的各示例)而发生。在操作1030,在一段时间期间,传感器设备使用低成本第一传感器和高成本第二物理传感器两者执行测量。基于由低成本第一传感器执行的测量而获得的第一传感器数据被用于生成事件实例数据。基于由高成本第二传感器执行的测量而获得的第二传感器数据被用于生成训练事件实例数据。训练事件实例数据充当与事件实例数据进行比较的“地面实况”。在操作1040,对应用于第一传感器数据以生成事件实例数据的当前ML模型是否充分执行作出确定。在一些实现中,操作1030和1040可以被部分地或全部地组合,其中针对当前ML模型应用的每个样本或样本集合以实时的方式对ML模型性能作出至少部分的确定。
如果在1040确定当前ML模型充分执行(在1040处为“是”),则评估模式被结束,并且过程1000返回到操作1010,在操作1010中,传感器设备在不使用高成本第二物理传感器的情况下操作。如果在1040确定当前ML模型未充分执行(在1040为“否”),则过程1000开始再训练过程,其中在操作1050处,传感器设备使用两个传感器收集本地化训练数据。在操作1060,一旦本地化训练数据已经被收集,新的ML模型就被训练,如先前示例所描述的。在操作1070,传感器设备进入测试模式,如先前示例所描述的,其中传感器设备被重新配置以应用新的ML模型,并且对应用于第一传感器数据以生成事件实例数据的新的经训练的ML模型是否充分执行作出确定。如果在1070确定新的ML模型充分执行(在1070处为“是”),则测试模式被结束,在操作1080处新的ML模型被留用,并且过程1000返回到操作1010,在操作1010中,传感器设备在不使用高成本第二物理传感器的情况下操作。如果在1070确定新的ML模型没有充分执行(在1070处为“否”),则再训练过程在1050再次开始。
结合图1-10描述的系统、设备和技术的详细示例被呈现在本文中以说明本公开及其益处。此类使用示例不应被解释为是对本公开的逻辑过程实施例的限制,也不应将与本文所述的用户接口方法的变体考虑在本公开的范围之外。在一些实施例中,在相应模块中实现图1-10中描述的各种特征,这些模块也可以被称为和/或包括逻辑、组件、单元和/或机制。模块可以构成软件模块(例如,具体化在机器可读介质上的代码)或硬件模块。
在一些示例中,可以机械地、电子地或以其任何适当的组合来实现硬件模块。例如,硬件模块可以包括被配置成执行某些操作的专用电路系统或逻辑。例如,硬件模块可以包括专用处理器,诸如现场可编程门阵列(FPGA)或专用集成电路(ASIC)。硬件模块还可以包括由软件临时配置成执行某些操作的可编程逻辑或电路系统,并且可以包括一部分机器可读介质数据和/或用于此类配置的指令。例如,硬件模块可以包括包含在被配置成执行一组软件指令的可编程处理器内的软件。应理解,在专用和永久配置的电路系统中或在临时配置的电路系统中(例如,由软件配置)机械地实现硬件模块的决定可以由成本、时间、支持和工程考虑因素驱动。
因此,短语“硬件模块”应理解为包括能够执行特定操作的有形实体,并且可以以某种物理方式配置或布置,即物理构造、永久配置(例如,硬连线)和/或临时配置(例如,编程)以便以某种方式操作或执行本文所描述的某些操作的实体。如本文所使用的,“硬件实现的模块”是指硬件模块。考虑其中硬件模块被临时配置(例如,编程)的示例,每个硬件模块不需要在任何一个实例处都被及时配置或实例化。例如,在硬件模块包括由软件配置成成为专用处理器的可编程处理器的情况下,可编程处理器可以在不同时间被分别配置成不同的专用处理器(例如,包括不同的硬件模块)。软件可以相应地配置一个或多个特定处理器,例如,以在一个时间实例处构成特定的硬件模块并在不同时间实例处构成不同的硬件模块。使用一个或多个处理器实现的硬件模块可被称为“处理器实现”或“计算机实现”。
硬件模块可以向其他硬件模块提供信息,或从其他硬件模块接收信息。因此,所描述的硬件模块可以被认为是通信耦合的。在同时存在多个硬件模块的情况下,通信可以通过两个或多个硬件模块之间或之中的信号传输(例如,通过适当的电路和总线)来实现。在其中在不同时间配置或实例化多个硬件模块的各实施例中,可以例如通过在多个硬件模块可以访问的存储器设备中存储和检索信息来实现此类硬件模块之间的通信。例如,一个硬件模块可以执行操作并将输出存储在存储器设备中,然后另一硬件模块可以访问该存储器设备以检索并处理所存储的输出。
在一些示例中,方法的至少一些操作可以由一个或多个处理器或处理器实现的模块执行。此外,一个或多个处理器还可以在“云计算”环境中或作为“软件即服务”(SaaS)运行以支持相关操作的性能。例如,至少一些操作可以由多台计算机(例如包括处理器的机器)执行和/或在多台计算机之间执行,这些操作可以经由网络(例如,因特网)和/或经由一个或多个软件接口(例如,应用程序接口(API))来访问。某些操作的性能可以分布在各处理器之间,并非仅驻留在单个机器中,而是跨多个机器部署。处理器或处理器实现的模块可被定位在单个地理位置处(例如,在家庭或办公室环境或服务器场内),也可跨多个地理位置分布。
图11是例示示例软件架构1102的框图1100,示例软件架构1102的各个部分可以与本文描述的各种硬件架构结合使用,该硬件架构可以实现任何上述特征。图11是软件架构的非限制性示例,并且将理解,许多其他架构可被实现以促进本文描述的功能。软件架构1102可以在诸如图12的机器1200之类的硬件上执行,其包括处理器1210、存储器1230和输入/输出(I/O)组件1250等等。代表性硬件层1104被例示并且可以表示例如图12的机器1200。代表性硬件层1104包括处理单元1106和相关联的可执行指令1108。可执行指令1108表示软件架构1102的可执行指令,包括本文所描述的方法、模块等的实现。硬件层1104还包括存储器/存储1110,其还包括可执行指令1108和随附数据。硬件层1104还可包括其他硬件模块1112。由处理单元1108保存的指令1108可以是由存储器/存储1110保存的指令1108的各部分。
示例软件架构1102可以被概念化为层,每个层提供各种功能。例如,软件架构1102可以包括诸如操作系统(OS)1114、库1116、框架1118、应用1120和表示层1144之类的层和组件。在操作上,应用1120和/或层内的其他组件可以向其他层调用API调用1124并接收对应的结果1126。所例示的层本质上是代表性的,并且其他软件架构可以包括附加或不同的层。例如,一些移动或专用操作系统可能不提供框架/中间件1118。
OS 1114可以管理硬件资源并提供公共服务。OS 1114可以包括例如内核1128、服务1130和驱动器1132。内核1128可以充当硬件层1104和其他软件层之间的抽象层。例如,内核1128可以负责存储器管理、处理器管理(例如,调度)、组件管理、联网、安全设置等等。服务1130可以为其他软件层提供其他公共服务。驱动器1132可以负责控制或对接底层硬件层1104。例如,根据硬件和/或软件配置,驱动器1132可以包括显示驱动器、相机驱动器、存储器/存储驱动器、外围设备驱动器(例如,经由通用串行总线(USB))、网络和/或无线通信驱动器、音频驱动器等。
库1116可以提供可由应用1120和/或其他组件和/或层使用的通用基础结构。库1116通常提供供其他软件模块用于执行任务的功能,而不是直接与OS1114进行交互。库1116可以包括可提供诸如存储器分配、字符串操纵、文件操作之类的功能的系统库1134(例如,C标准库)。另外,库1116可以包括API库1136,诸如媒体库(例如,支持图像、声音和/或视频数据格式的表示和操作)、图形库(例如,用于在显示器上渲染2D和3D图形的OpenGL库)、数据库(例如,SQLite或其他关系数据库函数)和web库(例如,可能提供web浏览功能的WebKit)。库1116还可以包括各种各样的其他库1138以便为应用1120和其他软件模块提供许多功能。
框架1118(有时也称为中间件)提供可以由应用1120和/或其他软件模块使用的更高层的通用基础结构。例如,框架1118可以提供各种图形用户界面(GUI)功能、高级资源管理或高级位置服务。框架1118可以为应用1120和/或其他软件模块提供广泛的其他API。
应用1120包括内置应用1140和/或第三方应用1142。内置应用1140的各示例可以包括但不限于联系人应用、浏览器应用、位置应用、媒体应用、消息收发应用和/或游戏应用。第三方应用1142可以包括由除特定平台的供应商以外的实体开发的任何应用。应用1120可以使用经由OS 1114、库1116、框架1118和表示层1144可用的功能来创建用户界面以与用户交互。
一些软件架构使用虚拟机,如由虚拟机1148所示。虚拟机1148提供执行环境,在该执行环境中,应用/模块可以像在硬件机器(诸如例如图12的机器1200)上执行一样地执行。虚拟机1148可以由主机OS(例如,OS 1114)或管理程序托管,并且可以具有管理虚拟机1148的操作以及与主机操作系统的互操作的虚拟机监测器1146。可能与虚拟机外部的软件架构1102不同的软件架构在虚拟机1148内执行,诸如OS 1150、库1152、框架1154、应用1156和/或表示层1158。
图12是例示被配置成从机器可读介质(例如,机器可读存储介质)读取指令并执行本文所描述的特征的示例机器1200的各组件的框图。示例机器1200采用计算机系统的形式,其中用于使机器1200执行本文描述的任何特征的指令1216(例如,以软件组件的形式)可被执行。如此,指令1216可被用于实现本文描述的模块或组件。指令1216使得未编程和/或未配置的机器1200作为被配置成执行所描述的特征的特定机器来操作。机器1200可以被配置成作为独立设备操作,或者可以被耦合(例如,联网)到其他机器。在联网部署中,机器1200可以在服务器-客户端网络环境中以服务器机器或客户端机器的能力运行,或者在对等或分布式网络环境中作为节点运行。机器1200可以被具体化为,例如,服务器计算机、客户端计算机、个人计算机(PC)、平板计算机、膝上型计算机、上网本、机顶盒(STB)、游戏和/或娱乐系统、智能电话、移动设备、可穿戴设备(例如,智能手表)和物联网(IoT)设备。此外,尽管仅例示了单个机器1200,但是术语“机器”包括单独地或共同地执行指令1216的机器的集合。
机器1200可以包括处理器1210、存储器1230和I/O组件1250,它们可以经由例如总线1202被通信地耦合。总线1202可以包括经由各种总线技术和协议耦合机器1200的各个元件的多个总线。在一个示例中,处理器1210(包括例如中央处理单元(CPU)、图形处理单元(GPU)、数字信号处理器(DSP)、ASIC或其适当组合)可以包括可执行指令1216并处理数据的一个或多个处理器1212a到1212n。在一些示例中,一个或多个处理器1210可以执行由一个或多个其他处理器1210提供或标识的指令。术语“处理器”包括多核处理器,该多核处理器包括可以同时执行指令的核。尽管图12示出了多个处理器,但是机器1200可以包括具有单个核的单个处理器、具有多个核的单个处理器(例如,多核处理器)、各自具有单个核的多个处理器、各自具有多个核的多核处理器或其任何组合。在一些示例中,机器1200可以包括分布在多个机器之间的多个处理器。
存储器/存储1230可以包括主存储器1232、静态存储器1234或其他存储器以及存储单元1236,两者都可以经由总线1202访问处理器1210。存储单元1236和存储器1232、1234存储具体化为本文所描述的任何一个或多个功能的指令1216。存储器/存储1230还可以存储用于处理器1210的临时、中间和/或长期数据。指令1216在其执行期间还可以完全或部分地驻留在存储器1232,1234内、在存储单元1236内、在至少一个处理器1210内(例如,在命令缓冲器或高速缓存内)、在至少一个I/O组件1250的存储器内或其任何合适的组合。因此,存储器1232,1234、存储单元1236、处理器1210中的存储器以及I/O组件1250中的存储器是机器可读介质的示例。
如本文所使用的,“机器可读介质”是指能够临时或永久地存储导致机器1200以特定方式操作的指令和数据的设备,并且可以包括但不限于随机存取存储器(RAM)、只读存储器(ROM)、缓冲存储器、闪存、光存储介质,磁存储介质和设备、高速缓存、网络可访问或云存储、其他类型的存储和/或其任何合适的组合。术语“机器可读介质”适用于用于存储供机器1200执行的指令(例如,指令1216)的单个介质或多种介质的组合,使得该指令在由机器1200的一个或多个处理器1210执行时使得该机器1200执行本文描述的特征中的一者或多者。因此,“机器可读介质”可以指单个存储设备,以及包括多个存储装置或设备的“基于云的”存储系统或存储网络。术语“机器可读介质”将信号本身排除在外。
I/O组件1250可以包括被适配成接收输入、提供输出、产生输出、传送信息、交换信息、捕捉测量等等的各种硬件组件。特定机器中包括的特定I/O组件1250将取决于机器的类型和/或功能。例如,诸如移动电话之类的移动设备可以包括触摸输入设备,而无头服务器或IoT设备可以不包括此类触摸输入设备。在图12中例示的I/O组件的特定示例绝不是限制性的,并且其他类型的组件可被包括在机器1200中。对I/O组件1250的分组仅是为了简化讨论,并且分组绝不是限制性的。在各种示例中,I/O组件1250可以包括用户输出组件1252和用户输入组件1254。用户输出组件1252可以包括例如用于显示信息的显示组件(例如,液晶显示器(LCD)或投影仪)、声学组件(例如,扬声器)、触觉组件(例如,振动马达或力反馈设备)和/或其他信号生成器。用户输入组件1254可以包括例如配置成用于接收各种用户输入(诸如用户命令和/或选择)的字母数字输入组件(例如,键盘或触摸屏)、指向组件(例如,鼠标设备、触摸板或另一指针设备)和/或触觉输入组件(例如,提供触摸或触摸姿势的位置和/或力度的物理按钮或触摸屏)。
在一些示例中,I/O组件1250可以包括生物测定组件1256、运动组件1258、环境组件1260和/或定位组件1262以及各种各样的其他物理传感器组件。生物测定组件1256可以包括例如用于检测身体表达(例如,面部表达、声音表达、手或身体姿势、或眼睛跟踪),测量生物信号(例如,心率或脑波)以及标识人(例如,经由声音、视网膜、指纹、和/或面部识别)的组件。运动组件1258可以包括例如加速度传感器(例如,加速度计)和旋转传感器(例如,陀螺仪)。环境组件1260可以包括例如照明传感器、温度传感器、湿度传感器、压力传感器(例如气压计)、声学传感器(例如用于检测环境噪声的话筒)、邻近度传感器(例如,对附近对象进行红外感测)和/或可以提供与周围物理环境对应的指示、测量或信号的其他组件。定位组件1262可以包括例如位置传感器(例如,全球定位系统(GPS)接收器)、高度传感器(例如,可以从其得出高度的气压传感器)和/或取向传感器(例如磁力计)。
I/O组件1250可以包括通信组件1264,其实现可操作以经由对应的通信耦合器1272和1282将机器1200耦合到网络1270和/或设备1280的多种技术。通信组件1264可以包括一个或多个网络接口组件或其他合适的设备以与网络1270对接。通信组件1264可以包括例如被适配成提供有线通信、无线通信、蜂窝通信、近场通信(NFC)、蓝牙通信、Wi-Fi和/或经由其他模态的通信的组件。设备1280可以包括其他机器或各种外围设备(例如,经由USB耦合)。
在一些示例中,通信组件1264可以检测标识符或包括被适配成检测标识符的组件。例如,通信组件1264可以包括射频标识(RFID)标签读取器、NFC检测器、光学传感器(例如,一维或多维条形码或其他光学代码)和/或声学检测器(例如,用于标识经标签的音频信号的话筒)。在一些示例中,可以基于来自通信组件1262的信息来确定位置信息,诸如但不限于,经由网际协议(IP)地址的地理位置,经由Wi-Fi、蜂窝、NFC、蓝牙的位置或其他无线站标识和/或信号三角测量。
尽管各种实施例已经被描述,但是描述意图是示例性的而不是限制性的,并且应理解,在各实施例的范围内的更多的实施例和实现是可能的。尽管在附图中示出了特征的许多可能组合并且在此详细描述中进行了讨论,但是所公开特征的许多其他组合也是可能的。除非特别限制,否则任何实施例的任何特征可以与任何其他实施例中的任何其他特征或元素组合或可以替代任何其他实施例中的任何其他特征或元素。因此,将理解,本公开中示出和/或讨论的任何特征可以以任何适当的组合一起实现。因此,除了根据所附权利要求书及其等同物之外,不限制实施例。同样,可以在所附权利要求书的范围内进行各种修改和改变。
虽然前面已经描述了被认为是最佳模式和/或其他示例的内容,但是可以理解,其中可以进行各种修改,并且这里公开的主题可以以各种形式和示例来实现,并且教导可被应用于许多应用中,其中只有一些已经在此被描述。所附权利要求书旨在要求落入本教导真实范围内的任何和所有应用、修改和变体。
除非另有说明,否则本说明书(包括所附权利要求书)中列出的所有尺寸、数值、额定值、位置、大小、尺寸和其他规格均为近似值,并不精确。它们旨在具有与它们所涉及的功能以及它们所涉及的领域中的习惯相一致的合理范围。
保护范围仅受所附权利要求书的限制。当根据本说明书和随后的起诉历史进行解释时,该范围旨在并且应当解释为与权利要求中使用的语言的普通含义相一致,并且涵盖所有结构和功能上的等同物。尽管如此,所有权利要求均不打算包含不满足专利法第101、102或103节要求的主题,也这些主题不应以此类方式被解释。在此,否认任何对此类主题的非故意包含的行为。
除以上所述外,任何陈述或说明的意图或解释均不应导致任何组成部分、步骤、特征、目的、利益、优势或对公众的贡献,不管在权利要求书中是否记载。
将理解的是,本文中使用的术语和表达关于其相应的各自的调查和研究领域具有与此类术语和表达相一致的普通含义,除非本文另外阐述了特定含义。诸如第一和第二等的关系术语可以仅用于将一个实体或动作与另一实体或动作区分开,而不必要求或暗示这种实体或动作之间的任何实际的此类关系或顺序。术语“包含”、“包括”或其任何其他变体旨在覆盖非排他性包含,使得包括一系列元素的过程、方法、物品或装置不仅仅包括那些元素,还可以包括未明确列出的或此类过程、方法、物品或装置所固有的其他元素。在没有进一步限制的情况下,以“一”或“一个”开头的元素并不妨碍在包含该元素的过程、方法、物品或装置中存在其他相同元素。
本公开的摘要是为了允许读者快速确定本技术公开的性质而提供的。提交摘要的同时要明白,将不用它来解释或限制权利要求的范围或含义。另外,在前面的详细描述中,可以看到,出于将本公开连成一个整体的目的而将各种特征组合在一起放在各个实施例中。此公开方法将不被解释为反映权利要求所要求的特征多于在每项权利要求中明确陈述的特征的意图。相反,如下面的权利要求所反映的,本发明的主题在于少于单个所公开的示例的所有特征。从而,据此将所附权利要求结合进详细描述中,其中每个权利要求都独立地代表单独的要求保护的主题。
Claims (15)
1.一种用于生成机器学习(ML)模型以从物理传感器数据中检测事件实例的系统,所述系统包括:
第一物理传感器,所述第一物理传感器在第一位置处;
第二物理传感器,其中所述第二物理传感器不同于所述第一物理传感器;
ML事件检测组件,所述ML事件检测组件在所述第一位置处并被配置成应用第一ML模型以基于从所述第一物理传感器获得的传感器数据来检测事件实例;以及
机器可读介质,所述机器可读介质包括当由所述系统执行时使得所述系统执行以下操作的指令:
在所述ML事件检测组件处接收从所述第一物理传感器获得的第一传感器数据,
在所述ML事件检测组件处应用所述第一ML模型以至少基于所述第一传感器数据来检测第一事件并生成对应的第一事件实例数据,
至少基于对所述第一ML模型的所述应用,计算在所述第一位置中使用所述第一ML模型的第一性能度量,
自动地确定所述第一性能度量是否在期望参数范围内,并且
响应于对所述第一性能度量不在所述期望参数范围内的确定:
在第一时间段期间从所述第一位置处的所述第二物理传感器获得第二传感器数据,
在所述第一时间段期间从所述第一物理传感器获得第三传感器数据,
通过基于使用所述第二传感器数据检测到的第一训练事件实例选择所述第三传感器数据的各部分来生成第一因位置而异的训练数据,
至少基于所述第一因位置而异的训练数据来训练第二ML模型,以及
重新配置所述ML事件检测组件以应用所述第二ML模型而非所述第一ML模型。
2.如权利要求1所述的系统,其特征在于,进一步包括:
第三物理传感器,其中所述第三物理传感器与所述第一物理传感器具有同一传感器类型;以及
第四物理传感器,其中所述第四物理传感器不同于所述第三物理传感器,
其中所述指令进一步使得所述系统:
在第二时间段期间从第二位置处的所述第三物理传感器获得第四传感器数据,
在所述第二时间段期间从所述第二位置处的所述第四物理传感器获得第五传感器数据,
通过基于使用所述第五传感器数据检测到的第二训练事件实例选择所述第四传感器数据的各部分来生成第二因位置而异的训练数据;以及
至少基于所述第二因位置而异的训练数据来训练所述第一ML模型。
3.如权利要求1所述的系统,其特征在于:
所述第一物理传感器和所述第二物理传感器被包括在同一硬件单元中;以及
当从所述第一物理传感器获得所述第一传感器数据时,所述第二物理传感器不活动。
4.如权利要求1所述的系统,其特征在于:
所述第一物理传感器和所述第二物理传感器被包括在同一硬件单元中;
所述第二物理传感器被配置成在第一时间间隔期间捕捉第四传感器数据,并且在第二时间间隔期间变为不活动;以及
所述第二时间间隔比所述第一时间间隔长。
5.如权利要求4所述的系统,其特征在于,所述指令进一步使得所述系统:
至少基于所述第四传感器数据生成训练事件实例数据;
在所述第一时间间隔期间从所述第一物理传感器获得第五传感器数据;
应用所述第二ML模型以至少基于所述第五传感器数据生成第二事件实例数据;
将所述训练事件实例数据与所述第二事件实例数据进行比较;
至少基于所述比较,自动地确定所述第二ML模型在所述第一位置处无效;
为所述第一位置训练第三ML模型;以及
重新配置所述ML事件检测组件以应用所述第三ML模型而非所述第二ML模型。
6.一种用于生成机器学习(ML)模型以从物理传感器数据中检测事件实例的方法,所述方法包括:
在第一位置操作包括第一物理传感器和ML事件检测组件的第一设备,其中所述ML事件检测组件被配置成应用第一ML模型以基于从所述第一物理传感器获得的传感器数据来检测事件实例;
在所述ML事件检测组件处接收从所述第一物理传感器获得的第一传感器数据;
在所述ML事件检测组件处应用所述第一ML模型以至少基于所述第一传感器数据来检测第一事件并生成对应的第一事件实例数据;
至少基于对所述第一ML模型的所述应用,计算在所述第一位置中使用所述第一ML模型的第一性能度量;
自动地确定所述第一性能度量不在期望参数范围内;并且
响应于对所述第一性能度量不在所述期望参数范围内的确定:
在第一时间段期间从所述第一位置处的第二物理传感器获得第二传感器数据,其中所述第二物理传感器不同于所述第一物理传感器,
在所述第一时间段期间从所述第一物理传感器获得第三传感器数据,
通过基于使用所述第二传感器数据检测到的第一训练事件实例选择所述第三传感器数据的各部分来生成第一因位置而异的训练数据,
至少基于所述第一因位置而异的训练数据来训练第二ML模型,以及
重新配置所述ML事件检测组件以应用所述第二ML模型而非所述第一ML模型。
7.如权利要求6所述的方法,其特征在于,进一步包括:
在第二时间段期间从第二位置处的第三物理传感器获得第四传感器数据,其中所述第三物理传感器与所述第一物理传感器具有同一传感器类型;
在所述第二时间段期间从所述第二位置处的第四物理传感器获得第五传感器数据,其中所述第四物理传感器不同于所述第三物理传感器;
通过基于使用所述第五传感器数据检测到的第二训练事件实例选择所述第四传感器数据的各部分来生成第二因位置而异的训练数据;以及
至少基于所述第二因位置而异的训练数据来训练所述第一ML模型。
8.如权利要求6所述的方法,其特征在于:
所述第二物理传感器被包括在所述第一设备中;以及
当从所述第一物理传感器获得所述第一传感器数据时,所述第二物理传感器不活动。
9.如权利要求6所述的方法,其特征在于:
所述第二物理传感器被包括在所述第一设备中;
所述第二物理传感器被配置成在第一时间间隔期间捕捉第四传感器数据,并且在第二时间间隔期间变为不活动;以及
所述第二时间间隔比所述第一时间间隔长。
10.如权利要求9所述的方法,其特征在于,进一步包括:
至少基于所述第四传感器数据生成训练事件实例数据;
在所述第一时间间隔期间从所述第一物理传感器获得第五传感器数据;
应用所述第二ML模型以至少基于所述第五传感器数据生成第二事件实例数据;
将所述训练事件实例数据与所述第二事件实例数据进行比较;
至少基于所述比较,自动地确定所述第二ML模型在所述第一位置处无效;
为所述第一位置训练第三ML模型;以及
重新配置所述ML事件检测组件以应用所述第三ML模型而非所述第二ML模型。
11.如权利要求1所述的系统,其特征在于,进一步包括第一设备,所述第一设备包括第一硬件单元和第二硬件单元,其中:
所述第一物理传感器和所述ML事件检测组件被包括在所述第一硬件单元中;
所述第二物理传感器被包括在所述第二硬件单元中;以及
所述第二硬件单元不同于所述第一硬件单元。
12.如权利要求1所述的系统,其特征在于,所述指令进一步使得所述系统响应于对所述第一性能度量不在所述期望参数范围内的所述确定,自动地发出将所述第二硬件单元临时安装在所述第一位置的请求。
13.如权利要求6所述的方法,其特征在于:
所述第一物理传感器和所述ML事件检测组件被包括在所述第一设备中包括的第一硬件单元中;
所述第二物理传感器被包括在所述第一设备中包括的第二硬件单元中;以及
所述第二硬件单元不同于所述第一硬件单元。
14.如权利要求13所述的方法,其特征在于,进一步包括:响应于对所述第一性能度量不在所述期望参数范围内的所述确定,自动地发出将所述第二硬件单元临时安装在所述第一位置的请求。
15.如权利要求6所述的方法,其特征在于,进一步包括:至少基于针对在所述第一位置中使用所述第一ML模型的先前经计算的性能度量的历史来确定所述期望参数。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/870,795 | 2018-01-12 | ||
US15/870,795 US11481571B2 (en) | 2018-01-12 | 2018-01-12 | Automated localized machine learning training |
PCT/US2018/066627 WO2019139760A1 (en) | 2018-01-12 | 2018-12-20 | Automated localized machine learning training |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111602153A true CN111602153A (zh) | 2020-08-28 |
CN111602153B CN111602153B (zh) | 2023-10-31 |
Family
ID=65228634
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201880086373.1A Active CN111602153B (zh) | 2018-01-12 | 2018-12-20 | 自动化的本地化机器学习训练 |
Country Status (4)
Country | Link |
---|---|
US (1) | US11481571B2 (zh) |
EP (1) | EP3721387A1 (zh) |
CN (1) | CN111602153B (zh) |
WO (1) | WO2019139760A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112532746A (zh) * | 2020-12-21 | 2021-03-19 | 北京邮电大学 | 一种云边协同感知的方法及系统 |
Families Citing this family (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10929561B2 (en) * | 2017-11-06 | 2021-02-23 | Microsoft Technology Licensing, Llc | Removing personally identifiable data before transmission from a device |
US11429807B2 (en) | 2018-01-12 | 2022-08-30 | Microsoft Technology Licensing, Llc | Automated collection of machine learning training data |
US11836576B2 (en) * | 2018-04-13 | 2023-12-05 | International Business Machines Corporation | Distributed machine learning at edge nodes |
US10901400B2 (en) * | 2018-05-21 | 2021-01-26 | International Business Machines Corporation | Set point optimization in multi-resolution processes |
US20190370218A1 (en) * | 2018-06-01 | 2019-12-05 | Cisco Technology, Inc. | On-premise machine learning model selection in a network assurance service |
JP7106997B2 (ja) * | 2018-06-04 | 2022-07-27 | 日本電信電話株式会社 | データ分析システムおよびデータ分析方法 |
EP3616508A1 (en) * | 2018-08-31 | 2020-03-04 | Invoxia | Method and system for monitoring animals |
EP3874480B1 (en) * | 2018-10-29 | 2023-09-13 | Hexagon Technology Center GmbH | Facility surveillance systems and methods |
US10891514B2 (en) * | 2018-12-17 | 2021-01-12 | Microsoft Technology Licensing, Llc | Image classification pipeline |
US11411832B2 (en) * | 2018-12-28 | 2022-08-09 | Intel Corporation | Methods and apparatus to generate optimized models for internet of things devices |
US11507677B2 (en) | 2019-02-15 | 2022-11-22 | Microsoft Technology Licensing, Llc | Image classification modeling while maintaining data privacy compliance |
US11205008B2 (en) | 2019-05-07 | 2021-12-21 | Intel Corporation | Methods and apparatus for invoking a security feature of a computing device display in response to detecting an onlooker based on depth data |
US11687778B2 (en) | 2020-01-06 | 2023-06-27 | The Research Foundation For The State University Of New York | Fakecatcher: detection of synthetic portrait videos using biological signals |
US11197244B2 (en) * | 2020-02-03 | 2021-12-07 | Verizon Patent And Licensing Inc. | Systems and methods for providing automatic enabling and disabling of wireless communications for user equipment |
CN111428860B (zh) * | 2020-03-11 | 2023-05-30 | 云知声智能科技股份有限公司 | 一种降低时延神经网络模型功耗的方法及装置 |
US20230267335A1 (en) * | 2020-07-13 | 2023-08-24 | A.I. Neuray Labs Ltd. | Self-supervised multi-sensor training and scene adaptation |
TW202206984A (zh) * | 2020-08-14 | 2022-02-16 | 宏碁股份有限公司 | 用於模擬滑鼠的電子裝置 |
DE102020211164A1 (de) | 2020-09-04 | 2022-03-10 | Robert Bosch Gesellschaft mit beschränkter Haftung | Sensor und Verfahren zum Erzeugen von Trainingsdaten für einen Maschinelles-Lernen-Klassifikator in einem Sensor |
CN112686171B (zh) * | 2020-12-31 | 2023-07-18 | 深圳市华尊科技股份有限公司 | 数据处理方法、电子设备及相关产品 |
EP4030741A1 (en) | 2021-01-15 | 2022-07-20 | Sony Group Corporation | Operating a portable electronic device to detect airplane flight events |
US20220317918A1 (en) * | 2021-03-31 | 2022-10-06 | Micron Technology, Inc. | Reduction of Write Amplification in Sensor Data Recorders |
US11988565B2 (en) | 2021-05-06 | 2024-05-21 | Apple Inc. | Process-insensitive sensor circuit |
WO2024096481A1 (en) * | 2022-10-31 | 2024-05-10 | Samsung Electronics Co., Ltd. | Generating depth map of an environment in a wireless communication system |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170185871A1 (en) * | 2015-12-29 | 2017-06-29 | Qiang Zhang | Method and apparatus of neural network based image signal processor |
EP3232371A1 (en) * | 2016-04-15 | 2017-10-18 | Ricoh Company, Ltd. | Object recognition method, object recognition device, and classifier training method |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU2003226081A1 (en) | 2002-03-25 | 2003-10-13 | The Trustees Of Columbia University In The City Of New York | Method and system for enhancing data quality |
US20070103595A1 (en) | 2005-10-27 | 2007-05-10 | Yihong Gong | Video super-resolution using personalized dictionary |
US8775337B2 (en) | 2011-12-19 | 2014-07-08 | Microsoft Corporation | Virtual sensor development |
US10417575B2 (en) | 2012-12-14 | 2019-09-17 | Microsoft Technology Licensing, Llc | Resource allocation for machine learning |
US9519868B2 (en) | 2012-06-21 | 2016-12-13 | Microsoft Technology Licensing, Llc | Semi-supervised random decision forests for machine learning using mahalanobis distance to identify geodesic paths |
US9087402B2 (en) | 2013-03-13 | 2015-07-21 | Microsoft Technology Licensing, Llc | Augmenting images with higher resolution data |
US9373087B2 (en) | 2012-10-25 | 2016-06-21 | Microsoft Technology Licensing, Llc | Decision tree training in machine learning |
US9892745B2 (en) | 2013-08-23 | 2018-02-13 | At&T Intellectual Property I, L.P. | Augmented multi-tier classifier for multi-modal voice activity detection |
US9329727B2 (en) | 2013-12-11 | 2016-05-03 | Microsoft Technology Licensing, Llc | Object detection in optical sensor systems |
US9626766B2 (en) | 2014-02-28 | 2017-04-18 | Microsoft Technology Licensing, Llc | Depth sensing using an RGB camera |
US9380224B2 (en) | 2014-02-28 | 2016-06-28 | Microsoft Technology Licensing, Llc | Depth sensing using an infrared camera |
US9652354B2 (en) | 2014-03-18 | 2017-05-16 | Microsoft Technology Licensing, Llc. | Unsupervised anomaly detection for arbitrary time series |
US9904874B2 (en) | 2015-11-05 | 2018-02-27 | Microsoft Technology Licensing, Llc | Hardware-efficient deep convolutional neural networks |
US9858496B2 (en) | 2016-01-20 | 2018-01-02 | Microsoft Technology Licensing, Llc | Object detection and classification in images |
US9916524B2 (en) | 2016-02-17 | 2018-03-13 | Microsoft Technology Licensing, Llc | Determining depth from structured light using trained classifiers |
US9760837B1 (en) | 2016-03-13 | 2017-09-12 | Microsoft Technology Licensing, Llc | Depth from time-of-flight using machine learning |
WO2018200541A1 (en) | 2017-04-24 | 2018-11-01 | Carnegie Mellon University | Virtual sensor system |
US10535138B2 (en) * | 2017-11-21 | 2020-01-14 | Zoox, Inc. | Sensor data segmentation |
US11429807B2 (en) | 2018-01-12 | 2022-08-30 | Microsoft Technology Licensing, Llc | Automated collection of machine learning training data |
-
2018
- 2018-01-12 US US15/870,795 patent/US11481571B2/en active Active
- 2018-12-20 WO PCT/US2018/066627 patent/WO2019139760A1/en unknown
- 2018-12-20 CN CN201880086373.1A patent/CN111602153B/zh active Active
- 2018-12-20 EP EP18839790.5A patent/EP3721387A1/en active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170185871A1 (en) * | 2015-12-29 | 2017-06-29 | Qiang Zhang | Method and apparatus of neural network based image signal processor |
EP3232371A1 (en) * | 2016-04-15 | 2017-10-18 | Ricoh Company, Ltd. | Object recognition method, object recognition device, and classifier training method |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112532746A (zh) * | 2020-12-21 | 2021-03-19 | 北京邮电大学 | 一种云边协同感知的方法及系统 |
CN112532746B (zh) * | 2020-12-21 | 2021-10-26 | 北京邮电大学 | 一种云边协同感知的方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
US11481571B2 (en) | 2022-10-25 |
EP3721387A1 (en) | 2020-10-14 |
WO2019139760A1 (en) | 2019-07-18 |
CN111602153B (zh) | 2023-10-31 |
US20190220697A1 (en) | 2019-07-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111602153B (zh) | 自动化的本地化机器学习训练 | |
US11735018B2 (en) | Security system with face recognition | |
US10726264B2 (en) | Object-based localization | |
US11429807B2 (en) | Automated collection of machine learning training data | |
US11561621B2 (en) | Multi media computing or entertainment system for responding to user presence and activity | |
US10878255B2 (en) | Providing automatic responsive actions to biometrically detected events | |
US9965865B1 (en) | Image data segmentation using depth data | |
CN109961009B (zh) | 基于深度学习的行人检测方法、系统、装置及存储介质 | |
US11080434B2 (en) | Protecting content on a display device from a field-of-view of a person or device | |
US11295139B2 (en) | Human presence detection in edge devices | |
KR20220062338A (ko) | 스테레오 카메라들로부터의 손 포즈 추정 | |
US20190197357A1 (en) | Misuse index for explainable artificial intelligence in computing environments | |
US10009579B2 (en) | Method and system for counting people using depth sensor | |
US20170032192A1 (en) | Computer-vision based security system using a depth camera | |
US20200401853A1 (en) | Smart video surveillance system using a neural network engine | |
US12051015B2 (en) | Artificial intelligence model integration and deployment for providing a service | |
KR20180075224A (ko) | 객체의 인식 결과를 제공하는 방법 및 전자 장치 | |
US20230401823A1 (en) | Liveness test method and liveness test apparatus | |
US11906647B2 (en) | Person location determination using multipath | |
US20240259723A1 (en) | Audio signals output | |
CN112711324A (zh) | 基于tof相机的手势交互方法及其系统 |
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 |