使用随机森林分类从传感器数据估计条件的系统和方法与流程

文档序号:17656293发布日期:2019-05-15 22:01阅读:214来源:国知局

本公开涉及提高传感器系统中的测量精度。更具体地,本公开涉及用于提高诸如可穿戴设备中使用的加速度计之类的监视设备的测量精度的系统和方法。



背景技术:

精确测量运动(例如,速度和加速度)的能力是可穿戴设备的发展中的重要因素之一。对于在装置的佩戴者运动时(例如在体育锻炼期间)测量热量消耗的装置尤其如此。

使用加速度计数据的经典集成来测量速度的现有方法遭受将这些方法实施到实践中的困难。这主要是由于高采样速率要求和固有的加速度计噪声导致积分常数漂移。其他方法具有其自身的缺点,并且依赖于gps数据的方法具有有限的应用。

将随机森林分类方法应用于加速数据以对运输模式进行分类(例如步行或使用自行车、汽车或火车)的一种方法完全不能解决准确的速度测量问题。

因此,需要的是提高监测装置的测量精度的系统和方法,包括测量速度的装置。

附图说明

将参考本发明的实施例,其示例可以在附图中示出。这些图旨在说明而非限制。尽管通常在这些实施方案的上下文中描述了本发明,但应理解,并不意图将本发明的范围限制于这些具体实施方案。

图1示出了根据本公开的各种实施例的传感器数据的示例性使用,以生成针对不同速度类型的记录。

图2示出了根据本公开的各种实施例的用于在分类过程中使用的原始测量数据的特征的生成。

图3是根据本公开的各种实施例的用于随机选择特征和记录的说明性过程的流程图。

图4示出了根据本公开的各种实施例的包括特征值对之间的计算差异的矩阵。

图5是根据本公开的各种实施例的用于确定速度类型的说明性分类过程的流程图。

图6示出了使用通过图3的过程获得的特征值来对潜在速度进行选择的过程。

图7示出了根据本公开的各种实施例的用于基于由随机森林中的决策单元做出的决策来估计速度的示例性分类过程的方法。

图8是示出图6中的分类决策过程的特征集减少的机器学习过程的流程图。

图9是根据本公开的各种实施例的示出决策单元替换和/或去除的机器学习过程的流程图。

图10描绘了根据本发明的实施例的信息处理系统/计算系统的框图。

具体实施方式

在以下描述中,出于解释的目的,阐述了具体细节以便提供对本发明的理解。然而,对于本领域技术人员清楚的是,可以在没有这些细节的情况下实践本发明。此外,本领域技术人员将认识到,下面描述的本发明的实施例可以以各种方式实现,诸如有形计算机可读介质上的过程、装置、系统、设备或方法。

图中所示的组件或模块是本发明的示例性实施例的说明,并且旨在避免模糊本发明。还应该理解,在整个讨论中,组件可以被描述为单独的功能单元,其可以包括子单元,但是本领域技术人员将认识到,各种组件或其部分可以被分成单独的组件或者可以集成在一起,包括集成在单个系统或组件中。应该注意,这里讨论的功能或操作可以实现为组件。组件可以用软件,硬件或其组合来实现。

此外,附图中的组件或系统之间的连接不旨在限于直接连接。相反,可以通过中间组件修改,重新格式化或以其他方式改变这些组件之间的数据。此外,可以使用更多或更少的连接。还应注意,术语“耦合”、“连接”或“通信耦合”应理解为包括直接连接,通过一个或多个中间设备的间接连接,以及无线连接。

说明书中对“一个实施例”、“优选实施例”、“实施例”或“实施例”的引用意味着至少包括结合该实施例描述的特定特征、结构、特性或功能。本发明的一个实施例可以是一个以上的实施例。此外,在说明书中各处出现的上述短语不一定都指的是相同的实施例。

在说明书中的各个地方使用某些术语仅用于说明而不应被解释为限制。服务、功能或资源不限于单个服务、功能或资源;这些术语的使用可以指可以分发或聚合的相关服务、功能或资源的分组。此外,这里可以使用存储器、数据库、信息库、数据存储、表格、硬件等来指代可以输入或以其他方式记录信息的系统组件。

此外,应注意:(1)可以可选地执行某些步骤;(2)步骤可以不限于此处所述的特定顺序;(3)某些步骤可以不同的顺序执行;(4)某些步骤可以同时进行。

此外,应当注意,这里描述的实施例是在从运动数据估计速度的背景下给出的,但是本领域技术人员将认识到本公开的教导不限于估计速度或使用运动数据并且可以同样地应用于可以从提高传感器数据的准确性中受益的其他背景。在本文中,术语“速度”和“速度类型”可互换使用。

图1示出了根据本公开的各种实施例的传感器数据的使用以生成针对不同速度类型的记录。图1所示的是运动传感器104、加速度计数据106和从加速度计数据106生成的记录110。如图所示,每个记录110可以包括与至少一个速度类型114相关联的特征112。参考图2进一步详细描述从原始加速度计数据106生成特征112。

运动传感器104是能够生成运动相关信号的任何设备,可以从该运动相关信号导出运动相关数据。传感器104可以直接或间接(例如,通过智能电话)与远程网络通信。在实施例中,传感器104是加速度计,其测量加速度并输出原始或预处理的加速度计数据106,例如,通过测量一段时间内的加速度并从测量的加速度计数据106生成期望数量的记录110或数据集。在实施例中,例如,为了提高准确度,采样的加速计数据106可以包括个性化数据,使得提取的特征值是针对特定用户、性别、锻炼方式、年龄或其他期望类别而定制的,例如,在训练项目中,对特定用户配置文件或组进行采样以生成可用于代替默认特征值的特征值。

在实施例中,运动传感器104对加速度计数据106采样特定时间段并且对于多种不同但已知的速度类型114采样。例如,传感器104可以以0.5mph、1mph、1.5mph等的速度采样加速度计数据106达3分钟的采样时间,直至例如10英里/小时的采样速度。在实施例中,采样周期可以被划分为较短时间段的加速度计数据106,可以向该较短时间段的加速度计数据106应用特征112以提取可以组装成数据记录110的特征值。

在实施例中,在传感器104内部或外部的处理器(图1中未示出)应用与特征112相关联的数学运算,以从一些或所有加速度计数据106中提取特征值,以为每个已知的加速度计数据生成记录110。在实施例中,特征112是从更大的特征集中随机选择的特征的子集。例如,可以从包括28个特征的特征集中选择5个特征112的子集,例如,通过使用随机选择过程。应该理解,可以采用任何数量的特征、子特征和速度类型来实现本发明的目标。

在实施例中,处理器将特征112应用于已经在3秒时间跨度期间测量的加速度计数据106,以提取每个速度类型114的特征值。出于说明的目的,仅在图1中示出与四个不同的速度类型114相关联的四个记录110。在实施例中,处理器可识别与记录110相关联的速度,并随机选择代表任何数量的已知速度类型114的各个速度类型114的记录110。

在实施例中,记录110例如通过使用随机选择过程被划分为训练集(例如,80%的记录110)和用作验证数据集的测试集(例如,20%的记录110)。应当理解,在估计或做出关于最终速度的决策之前,可以在预备步骤中执行运动数据收集操作、特征选择和记录创建中的一些或全部。

图2示出了根据本公开的各种实施例的用于在分类过程中使用的原始测量数据的特征的生成。图2描绘了原始数据202、原始数据202的数据处理208以及特征230的创建。在实施例中,数据处理208包括在特征230的生成中使用移动平均值210,差值220和任何其他处理步骤。

原始数据202是可以例如以已知的运行速度和预定的时间量收集的任何传感器数据。在实施例中,原始数据202包括任何类型的运动相关数据,例如可以从中获得速度数据的速度和加速度数据。加速度数据可以包括与加速度或速度有关的幅度、方向和定时数据。

移动平均值210表示对于原始数据202的任何处理。在实施例中,处理递送关于从原始数据202导出的最小值、最大值和平均值的信息。差值220表示对原始数据202和/或移动平均值210的任何处理,例如,可以从中导出比较数据。特征230表示从数据处理步骤208导出或计算的任何处理或预处理数据,并且不限于移动平均值210和/或差值220,但是可以包括任何其他数据处理步骤。

在实施例中,处理原始数据202以针对合适的坐标系的三个轴x、y以及z产生频率、平均绝对加速度以及加速度的平均绝对值的差值d的任何排列。例如,d可以表示为

d1=|ax|-|ay|-|az|(等式1)

d2=|ay|-|ax|-|az|(等式2)

d3=|az|-|ax|-|ay|(等式3)

在实施例中,差值220对应于可以在根据本公开的各种实施例的分类方案中使用的特征230。在实施例中,可以将任何数量的特征230应用于与已知行走或跑步速度相关联的一组样本数据中的一些或全部,以便提取每种速度类型的特征值。然后可以组合所提取的特征值以生成代表每种速度类型的记录,如图1所示。

图3是根据本公开的各种实施例的用于随机选择每种速度类型的特征和记录的说明性过程的流程图。过程300开始于步骤302,例如,当可以包括任何类型的运动数据的运动传感器数据被接收并组装成记录时,每个记录可以例如以一个特定的速度相关联。数据可以包括可以从中获得速度数据的加速度数据。在实施例中,运动传感器数据包括可以从包括加速度计的任何设备接收的加速度数据。每个记录与不同的速度相关联,并且可以包括具有相应特征值的一组特征。在实施例中,对于每种类型的速度,可以将一个记录随机选择到一组记录中。替代地,对于每种类型的速度,相关联的特征可以是从随机选择到一组记录中的多个记录的特征的平均值。

在步骤304,从该组特征中随机选择可包括任何数量的特征的特征的子集。应理解,该子集可包括该组特征中的一些或所有特征。

在步骤306,将特征子集应用于所选记录,以获得与不同速度相关联的每个所选记录的特征值。在实施例中,在所选记录中的特征值对之间计算一组特征值差异。替代地,在实施例中,对于每种类型的速度,相关联的特征可以是来自随机选择到一组记录中的多个记录的特征的平均值。

在实施例中,计算出的特征值对之间的差异可以定义矩阵,如图4所示。图示的是根据本公开的各种实施例的用于给定特征f1402的平面,给定特征f1402包括特征值对之间的计算差异440。如图所示,矩阵400包括s特征402-410和n速度类型t,420-430。在实施例中,特征402-410定义从一组特征中随机选择的特征子集。本领域技术人员将理解,可以选择任何数量的速度类型420-430来对采样速度进行分类。

在实施例中,矩阵400中的第一特征f1,420的条目包括特征值对之间的计算距离,每对特征值与两种不同的速度类型相关联。第二特征f2,422的条目还包括特征值对之间的计算距离,每对与两种不同的速度类型相关联,等等,直到计算所有s特征的距离。

结果,对于s特征402-410中的每一个,可以计算与不同但已知的速度402-430相关联的特征值之间的最大差异。使用速度类型402-430之间的最大差异,可以做出分类决策以将速度类型402-430中的一个分配给样本数据,如下面将参考图4所讨论的。

图5是根据本公开的各种实施例的用于确定速度类型的说明性分类决策过程的流程图。过程500定义了决策单元,该决策单元针对给定特征组使用速度类型对之间的差异。在实施例中,当在特征值的差异中识别出最大值时,过程500开始于步骤502,每个特征值与不同的速度相关联。

在步骤504,针对可以从诸如包括加速度计的运动传感器的设备接收的未知速度的查询记录来识别样本特征值。样本特征值可以对应于在步骤502中识别的最大特征值。

在步骤506,可以确定特征值对中的一个特征值是否比该对中的另一个特征值更远离样本特征值。

然后,在步骤508,可以从该组特征值差异中去除从记录中获得的与更远距离相关联的速度的所有特征值差异,实际上,从潜在速度类型池中去除该速度。

在步骤510,确定是否仅存在尚未去除的单一速度类型。如果是,则过程500在步骤512输出剩余速度类型作为选择或估计的速度。否则,如果在n种可能的速度类型的池中存在多于一种速度类型,则过程500可以通过确定剩余特征值差异中的新的最大差异而继续步骤502并继续去除潜在的速度类型直到单一速度类型估计仍然存在。

图6示出了使用通过图3中的过程获得的特征值的潜在速度的选择过程。在实施例中,基于与样本数据记录相关联的样本特征606与和特定特征相关联但是不同速度类型的特征值对602-604之间的计算距离来做出关于可能速度的决策。详细地,在实施例中,对于所选特征f,该特征值对602-604之间的差异可以由定义为如下的距离函数610表示。

其中f1和f2是与两种不同速度类型(类型a和类型b)相关联的特征值602-604,并且其中,favg_i是所有选定速度类型中所选特征的所有特征值的平均值。对于第i个特征,favg_i用于对给定特征的特征值602-604进行归一化,并且可以表示为

等式4中的距离函数610使用favg_i来归一化不同特征的特征值602-604。

在实施例中,从与不同速度相关联的数据记录计算特征值对602-604之间的差异,使得每对特征值602-604与两种不同的速度类型相关联。实际上,两个数据记录之间的距离因此可以由给定特征的其特征值602-604的差异来表示。

如图6中的示例所示,样本特征值f3606与特征值f2(与速度类型a相关联)之间的距离大于样本特征值f3606与特征值f1(与速度类型b相关联)之间的距离。结果,在决策过程中,速度类型a可以去除被考虑作为潜在速度类型,将速度类型b保持为潜在速度。

图7示出了根据本公开的各种实施例的用于基于由随机森林方案中的各个决策单元(或树)做出的决策来估计速度的示例性分类过程的方法。在实施例中,对于通过图5中描述的随机选择过程获得的每个未丢弃的速度类型,可以计算分类概率710。

详细地,在实施例中,可以将从未知速度数据获得的n个测试样本记录(例如,1000个样本)702输入到包括m个决策单元706的随机森林704。

在实施例中,有利于给定速度类型vi的决策的数量由下式给出

对于m=1到m,在等式6中,ym,vi表示由第m个决策单元作出的针对vi的决策的数量。

然后可以从以下等式中确定给定速度处的分类概率710

其中nvi表示支持速度vi的决策的数量,nt表示针对k速度类型的总决策数量

在实施例中,对于每种速度类型,分类概率710和速度vi可以使用由等式7给出的概率测量应用于最可能的速度估计函数712,使得估计的最终速度由下式给出:

对于n速度,i=1到n。

应当理解,本公开的实施例不限于基于加速度计数据的最可能的速度估计,而是可以同样地应用于在不同条件下操作以确定任何其他最可能的条件或离散条件估计的任何其他类型的传感器。在实施例中,离散条件估计(例如,最终速度)被平均并且被分配给预定数量的离散条件之一,从而例如量化关于图4讨论的随机森林方案的输出。

在实施例中,预测或估计的速度vest与实际速度vreal之间的误差可以定义为由如下等式所表示的均方根误差

简要回到图7,本领域技术人员可以理解的是,图5中描述的随机选择过程可以用于创建任意数量的决策单元706,并且任意数量的决策单元706可以用于构建随机森林704。

图8是示出图5中的分类决策过程的特征集减少的机器学习过程的流程图。为清楚起见,类似于图5的那些步骤以相同方式被标出。出于简洁的目的,这里不再重复对其在决策单元内的功能的描述。

过程800表示决策单元,在该决策单元中已从较大的特征组中选出的特征被评估以提高决策过程的分类准确性。在实施例中,过程800包括在步骤814处计算特定特征对应于决策单元已选择作为最终速度的速度的出现次数。

在实施例中,基于所计算的出现次数对特征进行排序。换句话说,更频繁地预测最终速度所涉及的特征被排名高于具有较少预测值的特征。直观地,更可能选择与提供特征值之间的大差异(即,速度类型之间的大差异)的那些特征相关联的速度。

在实施例中,在步骤816处,去除较少使用的特征,因为从潜在特征池中预测性较低,使得它们不再用于特征选择过程。因此,将使用最具预测性的特征做出决策,从而提高分类过程的准确性。此外,减少的特征集大大提高了处理器(或多个处理器)的计算速度,因为较小的数据集导致需要执行的计算量较少。

图9是根据本公开的各种实施例的示出决策单元替换和/或去除的机器学习过程的流程图。过程900包括用于由决策单元进行的速度估计的准确性并采取适当的动作的方法。应当理解,速度估计精度可以以误差值或成功率(例如,百分比)的形式表示。

在实施例中,在步骤910处,将包括已知测试速度类型vi的测试样本特征的测试样本数据组ntest提供给随机森林。可以从速度记录中随机选择测试样本数据,如图7所示,随机森林可以包括m个决策单元。

在步骤912,样本数据用于为每个速度类型v确定由决策单元做出的多个正确决策nm。

在步骤914,基于正确决策的数量nm来确定成功率,成功率指示决策单元正确识别给定速度类型vi的频率。这可以通过例如如下表达式来实现

在步骤916,基于成功率,可以计算n种已知测试速度类型中的每一种的总分数,例如,

中i=1到n种速度类型。

在步骤918,在实施例中,对于给定决策单元,如果决策单元的总分低于阈值(例如,分数,m<80%),则可以去除该决策单元。在实施例中,如果给定决策单元的一个或多个分数低于阈值,则可以去除或替换该决策单元。在实施例中,对于给定的决策单元,如果如下所示的误差

大于可接受的阈值水平(例如,20%),则该决策单元可以由另一个决策单元替换。另外,可以增加森林中的决策单元m的数量。相反,在实施例中,如果误差低于阈值,则可以减少森林中的决策单元的数量,例如,通过去除导致具有最大误差的决策的那些决策单元中的一个或多个。

本专利文件的各方面涉及信息处理系统。出于本公开的目的,信息处理系统可以包括可用于计算、演算、确定、分类、处理、发送、接收、检索、发起、路由、切换、存储、显示、通信、证明、检测,记录,复制,处理或利用任何形式的信息、情报或数据,用于商业、科学、控制或其他目的工具或者工具的集合。例如,信息处理系统可以是个人计算机(例如,台式或笔记本电脑)、平板电脑、移动设备(例如,个人数字助理(pda)或智能电话)、服务器(例如,刀片服务器或机架服务器)、网络存储设备或任何其他合适的设备,并且可以在大小、形状、性能、功能和价格上变化。信息处理系统可以包括随机存取存储器(ram)、一个或多个处理资源(例如中央处理单元(cpu)或硬件或软件控制逻辑)、rom和/或其他类型的非易失性存储器。信息处理系统的附加组件可以包括一个或多个磁盘驱动器、用于与外部设备通信的一个或多个网络端口以及各种输入和输出(i/o)设备(例如键盘,鼠标,触摸屏和/或或视频显示)。信息处理系统还可以包括可操作以在各种硬件组件之间传输通信的一个或多个总线。

图10描绘了根据本发明实施例的信息处理系统的框图。应当理解,系统1000所示的功能可以用于支持信息处理系统的各种实施例-尽管应该理解,信息处理系统可以不同地配置并包括不同的组件。如图10所示,系统1000包括中央处理单元(cpu)1001,其提供计算资源并控制计算机。cpu1001可以用微处理器等实现,并且还可以包括用于数学计算的图形处理器和/或浮点协处理器。系统1000还可以包括系统存储器1002,其可以是随机存取存储器(ram)和只读存储器(rom)的形式。

还可以提供多个控制器和外围设备,如图10所示。输入控制器1003表示到各种输入设备1004的接口,例如键盘,鼠标或指示笔。还可以存在扫描仪控制器1005,其与扫描仪1006通信。系统1000还可以包括用于与一个或多个存储设备1008接口的存储控制器1007,每个存储设备1008包括诸如磁带或磁盘的存储介质,或者包括可用于记录操作系统、实用程序和应用程序的指令程序的光学介质,其可包括实现本发明各个方面的程序的实施例。存储设备1008还可以用于存储根据本发明要处理的处理数据或数据。系统1000还可以包括显示控制器1009,用于向显示器设备1011提供接口,显示器设备1011可以是阴极射线管(crt)、薄膜晶体管(tft)显示器或其他类型的显示器。计算系统1000还可以包括用于与打印机1013通信的打印机控制器1012。通信控制器1014可以与一个或多个通信设备1015连接,这使得系统1000能够通过包括以下各种网络的任何网络连接到远程设备,所述各种网络包括互联网、以太网云、以太网光纤通道(fcoe)/数据中心桥接(dcb)云、局域网(lan)、广域网(wan)、存储区域网络(san)或包括红外信号的任何合适的电磁载波信号。

在所示系统中,所有主要系统组件可以连接到总线1016,总线1016可以代表多于一个的物理总线。然而,各种系统组件可以或可以不彼此物理接近。例如,输入数据和/或输出数据可以从一个物理位置远程传输到另一个物理位置。另外,可以通过网络从远程位置(例如,服务器)访问实现本发明的各个方面的程序。这些数据和/或程序可以通过各种机器可读介质中的任何一种传送,包括但不限于:磁介质,例如硬盘,软盘和磁带;光学媒体,如cd-rom和全息设备;磁光介质;专用于存储或存储和执行程序代码的硬件设备,例如专用集成电路(asic),可编程逻辑器件(pld),闪存器件以及rom和ram器件。

可以在一个或多个非暂时性计算机可读介质上编码本发明的实施例,其中具有用于一个或多个处理器或处理单元的指令以使得执行步骤。应注意,一个或多个非暂时性计算机可读介质应包括易失性和非易失性存储器。应注意,替代实施方式是可能的,包括硬件实现或软件/硬件实现。可以使用asic,可编程阵列,数字信号处理电路等来实现硬件实现的功能。因此,任何权利要求中的“装置”术语旨在涵盖软件和硬件实现。类似地,这里使用的术语“计算机可读介质或介质”包括具有在其上实现的指令程序的软件和/或硬件,或其组合。考虑到这些实现备选方案,应理解,附图和随附的描述提供了本领域技术人员编写程序代码(即,软件)和/或制造电路(即,硬件)所需的功能信息。执行所需的处理。

应当注意,本发明的实施例还可以涉及具有非暂时性有形计算机可读介质的计算机产品,其上具有用于执行各种计算机实现的操作的计算机代码。媒体和计算机代码可以是为本发明的目的而专门设计和构造的代码,或者它们可以是相关领域的技术人员已知或可获得的类型。有形计算机可读介质的示例包括但不限于:磁介质,例如硬盘,软盘和磁带;光学媒体,如cd-rom和全息设备;磁光介质;专用于存储或存储和执行程序代码的硬件设备,例如专用集成电路(asic)、可编程逻辑器件(pld)、闪存器件以及rom和ram器件。计算机代码的示例包括诸如由编译器产生的机器代码,以及包含由计算机使用解释器执行的更高级代码的文件。本发明的实施例可以全部或部分地实现为机器可执行指令,其可以在由处理设备执行的程序模块中。程序模块的示例包括库、程序、例程、对象、组件和数据结构。在分布式计算环境中,程序模块可以物理地位于本地,远程或两者的设置中。

本领域技术人员将认识到,没有计算系统或编程语言对于本发明的实践是关键的。本领域技术人员还将认识到,上述元件可以在物理上和/或功能上分成子模块或组合在一起。

应当注意,下面的权利要求的元素可以不同地布置,包括具有多个依赖性,配置和组合。例如,在实施例中,各种权利要求的主题可以与其他权利要求组合。

本领域技术人员将理解,前述实施例和实施方案是示例性的,并不限制本发明的范围。本领域技术人员在阅读说明书和研究附图时显而易见的所有排列、增强、等同、组合和改进都包括在本发明的真实精神和范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1