一种基于脉冲神经网络的室内外检测方法及系统



1.本发明属于室内外定位技术领域,特别是基于神经网络的室内外检测方法领域,涉及一种基于脉冲神经网络的室内外检测方法及系统。


背景技术:



2.现代智能设备(如智能手机、智能手表)集成了大量的传感器,如加速计、陀螺仪、光传感器、气压表、gnss(全球导航卫星系统)和磁力计,正成为提供无处不在的传感和通信的重要平台。室内/室外(io)检测是许多应用和服务的基本基础,如步行导航、电源管理、人体跟踪和活动识别。例如,io信息允许智能应用程序自动调整屏幕亮度,或打开/关闭gnss服务,以降低设备的功耗。
3.到目前为止,人们已经做出了许多努力来处理io检测问题。早期的工作利用多种传感资源,如光传感器、磁传感器、gnss信号和电池塔信号,以固定的预定义值检测规则识别用户的环境。然而,固定值通常是通过实验测量获得的,随着环境切换,这些值也会发生改变。因此,基于规则的检测方法在推广到其他场景时会面临障碍。为了解决上述问题,人们提出了一些基于学习的解决方案。一些工作使用传统的机器学习(ml)方法来推断用户的环境。在这种情况下,首先从智能手机传感器测量中提取各种人工特征,以离线训练ml模型。然后,这些训练好的模型可以用于实时场景中的io检测。近年来,一些基于深度学习的方法被提出,以进一步提高io检测精度或减少特征的手工工程的工作量。然而,基于深度学习的io检测方法往往存在巨大的复杂性,这使得它们不适合部署在资源有限的平台上。
4.因此,有必要重点解决如何高效的处理手机传感器数据,以满足io检测场景的准确性要求以及计算效率要求。


技术实现要素:



5.有鉴于此,本发明的目的在于提供一种基于脉冲神经网络的室内外检测方法及系统,该方法使用具有密集连接的脉冲神经网络(snn),以及智能手机传感器测量进行io检测。该方法及系统与传统的深度学习模型相比,snn在生物学上更可信,可以用于更高效的神经形态硬件;与以往的基于学习的方法相比,snn本质上适合于利用时间信息,而且计算效率很高。
6.为达到上述目的,本发明提供如下技术方案:
7.一种基于脉冲神经网络的室内外检测方法,该方法使用具有密集连接的脉冲神经网络(snn)结合智能手机传感器测量进行室内/室外(io)检测,具体包括以下步骤:s1:从智能手机传感器测量中提取主要特征;s2:对传感器测量中提取到的主要特征进行编码;s3:采用脉冲神经网络snn来进一步学习特征嵌入;s4:采用投票机制获取用户的io状态,实现用户的室内外检测。
8.进一步,在步骤s1中,所述从智能手机传感器测量中提取主要特征包括总共从5个传感器中提取43个特征:分别从卫星测量、wifi测量和蜂窝信号塔测量中提取9个特征,从
光传感器和磁强计测量中分别提取8个特征;这些特征包括可见卫星或信号塔的数量(用于gnss、wifi和蜂窝网络)、平均值、方差、标准差、最大值、最小值、中值、极差以及四分位数。
9.进一步,在步骤s2中,对主要特征进行编码,常见的峰值编码方法包括频率编码、时间到优先峰值编码和延迟编码方案。虽然这些方案在实验中获得了较好的效果,但是这些方案会引入一个额外的时间步长,导致io检测的推理时间变长。本发明中,采用了一个更简单的编码方案,即以模型的第一个卷积层作为编码层,而时间步上即为输入信号时间序列上的步长。
10.进一步,在步骤s3中,采用snn进一步学习特征嵌入,以实现精确的io检测;与传统的深度神经网络相比,snn具有一种特殊的激活机制,即每个神经元将前一层的输入积累到其膜电位中,当其膜电位超过一个阈值时触发一个脉冲;
11.使用1维的卷积层处理输入特征向量,之后采用lif模型作为snn的动力学模型对特征做非线性映射,lif模型的动力学一般描述为:
[0012][0013]
其中u(t)表示神经元在t时刻的膜电位,τ是一个时间常数,表示其膜电位下降到初始值的e-1
的时间,x(t)表示对神经元的输入,u
rest
是指神经元的静息电位;当一个神经元未受到刺激或膜电位超过发放阈值u
th
(在本发明中为0.5)时,该神经元的膜电位将被重置为u
rest
的值;将动力学函数改写为离散形式:
[0014][0015]
s(t)=h(u(t)-u
th
)
ꢀꢀꢀꢀꢀꢀ
(3)
[0016]
式中,s(t)表示t时刻的输出脉冲,h(*)表示海维赛德阶跃函数;lif神经元能够在积分和发放脉冲阶段利用时间信息。然而,它在每次放电过程后都会重新置膜电位,这只能代表有限的信息,即每次放电都会导致一些信息丢失。因此,使用deep层之间的密集连接来更好地捕获有用的特征,设x0,x1,...,x
l-1
作为第l层的前一层的输入特征,第l个密集连接层的输出写为:
[0017]
x
l
=f[x0,x1,...,x
l-1
]
ꢀꢀꢀꢀꢀꢀ
(4)
[0018]
由于snn具有特殊的时空信息处理机制,导致梯度传播趋向于消失,因此很难训练深层的snn模型。为了解决这一问题,采用一种对时许特征进行批归一化的处理模式来实现深层的snn模型,归一化过程描述如下:
[0019][0020][0021]
其中,表示第i个通道的x
l
(t)的特征图,u
th
表示峰值发射阈值,和分别表示第l层通过所有时间步长的第i个通道特征图的期望和方差;从式(5)可以看出,输出在被归一化到0和阈值u
th
之间;γi和βi是两个可学习的参数;在最后一个阶段,通过投票操作将指示用户环境的每个类别与输出脉冲序列关联起来;在给定的时间窗口中的最终输出c被写为:
[0022]
[0023]
式中,m为用于解码峰值的常数投票矩阵,o(t)为t时刻最后一层的输出特征;然而,由于脉冲函数是不可微的,因此不能直接使用流行的误差反向传播方法来训练网络;为了使本模型可以直接用误差反向传播算法进行训练,本发明使用一个矩形函数来近似峰值函数的导数,即
[0024][0025]
其中a是一个宽度参数,在本发明中可被设置为0.5。
[0026]
进一步,在步骤s4中,通过投票机制将系统的输出关联到目标io状态上。
[0027]
本发明还提供了一种基于脉冲神经网络的室内外检测系统,进行室内室外环境检测。
[0028]
本发明的有益效果在于:
[0029]
本方法不仅可以根据当前移动传感器的指示对用户环境进行分类,还可以考虑以前时间步长的测量值进行分类。与现有的方法相比,本发明具有更高的计算效率以及检测的识别准确率。实验结果表明,该方法具有良好的性能,可以很好地推广到不同的场景和不同的移动设备中。
[0030]
本发明的其他优点、目标和特征在某种程度上将在随后的说明书中进行阐述,并且在某种程度上,基于对下文的考察研究对本领域技术人员而言将是显而易见的,或者可以从本发明的实践中得到教导。本发明的目标和其他优点可以通过下面的说明书来实现和获得。
附图说明
[0031]
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作优选的详细描述,其中:
[0032]
图1为本发明与基准方法在泛化到新场景下的io检测精度;
[0033]
图2为本发明与基准方法在泛化到新设备下的io检测精度;
[0034]
图3为使用不同传感器组合的deepsio的精度比较,其中,g、c、l、m和w分别表示gnss、蜂窝网络、光传感器、光传感器、磁强计和wifi;
[0035]
图4为deepsio的架构,它以五个传感器作为输入测量,并输出用户的io状态。
具体实施方式
[0036]
下面结合附图对本发明技术方案进行详细说明。
[0037]
本发明针对现有技术的io检测方法存在的问题:基于预定义值检测规则的io检测方法以来与环境的实验数据,这类在推广到其他场景时会面临障碍;基于学习的方法存在计算复杂度高,难以部署到资源有限平台上的问题,提出一种deepsio的io检测方法,该方法使用具有密集连接的脉冲神经网络(snn),以及智能手机传感器测量进行io检测。通过手机传感器测量值检测用户的io状态,与现有的方法相比,本发明具有更高的计算效率以及检测的识别准确率。在本实施例中,使用包含三个识别场景(校园,购物中心,医院),包括10条样本的数据集来评估所提出的方法,在评估过程中有以下比较:
[0038]
比较本发明提出的方法和先进的io检测方法的识别精度,这些方法包括magio,iodetector,neuralio,一个流行的基于规则的方法和一个流行的传统的基于机器学习的
方法。实验结果如表1所示。可以看出,deepsio在所有的测试场景中都具有最高的检测精度。具体是,deepsio在校园、购物中心和医院场景中的io检测准确率分别达到了99.78%、99.71%和99.81%。
[0039]
表1.在不同场景下收集的数据集上的不同算法的io检测精度(%)对比
[0040]
方法校园购物中心医院magio80.0772.6982.78iodetector77.8773.4685.99基于规则的方法83.0670.8167.87基于机器学习的方法99.2391.8190.62neuralio99.1898.6099.34本发明99.7899.7199.81
[0041]
比较了本发明所提出的方法与被广泛使用的机器学习方法在新场景下的泛化能力。为此,本发明将收集到的数据重新划分为训练集和测试集。具体来说,以商场收集的数据作为训练集,以校园和医院收集的数据作为测试集。如图1显示,deepsio的性能优于其他方法,能够在新的场景中检测io状态,准确率可达96%,远远高于其他方法。
[0042]
比较了本发明所提出的方法与被广泛使用的机器学习方法在新设备下的泛化能力。将收集的数据重新划分为训练集和测试集,即部分移动设备收集的数据作为训练集,其他移动设备收集的数据作为测试集。如图2所示,图2描述了本发明所提出的方法比其他基准方法表现得要好得多,并且可以达到96.5%以上的准确率。
[0043]
实验结果表明,本发明提出的方法具有较高的io检测准确率,并且,在泛化能力上也展现除了优异的性能。同时,本发明采用snn作为主干网络,利用其处理二值数据(0和1)的特点,大大的较低计算效率,使得本发明所提出的方法能够应用于更加轻量级的设备。
[0044]
本发明的具体框架如图4所示,本发明提出的方法将各种传感器中的测量作为输入,这些传感器包括gnss、光传感器、wifi、磁强计和蜂窝网络(如gsm),最后输出用户的io状态。具体来说,该网络使用lif神经元,包括一个脉冲编码模块、两个deep块、一个过渡层(transition)、两个全连接(fc)层和最后一个投票层进行分类。每个deep块由两个deep层组成,其中每个deep层由两个一维卷积层,两个基于事件的批处理归一化(ebn)层组成。本发明使用lif作为脉冲神经网路的动力学模型,因为它非常简单,具有良好的性能。在每个deep度块中,使用deep层之间的密集连接来更好地从数据中捕获特征。
[0045]
令x
type
表示传感器的测量值,其中type表示传感器的类型。按照一秒为时间窗口提取传感器测量值的主要特征,这些特征包括这些特征包括可见卫星或信号塔的数量(用于gnss、wifi和蜂窝网络,光传感器和磁力计用数字0填充)、平均值、方差、标准差、最大值、最小值、中值、极差和四分位数。在提取这些主要特征后,将这些特征编码到脉冲序列,并输入给snn。常见的峰值编码方法包括频率编码、时间到优先峰值编码和延迟编码方案。虽然这些方法能够很好的近似强度值,但它引入一个固定长度的时间窗口,从而导致推断阶段的时间消耗过大。在本发明中,采用了一个更简单的编码方案,将模型的第一个卷积层作为编码层,这使得模型能够在io检测时消耗较少的时间。
[0046]
在脉冲编码后,采用snn进一步学习特征嵌入,以实现精确的io检测。与传统的深度神经网络相比,snn具有一种特殊的激活机制,即每个神经元将前一层的输入积累到其膜
电位中,当其膜电位超过一个阈值时触发一个脉冲。这里使用1维的卷积层处理输入特征向量。之后采用lif模型作为snn的动力学模型对特征做非线性映射。lif模型的动力学一般描述为:
[0047][0048]
其中u(t)表示神经元在t时刻的膜电位,τ是一个时间常数,表示其膜电位下降到初始值的e-1
的时间,x(t)表示对神经元的输入。u
rest
是指神经元的静息电位。当一个神经元未受到刺激或膜电位超过发放阈值u
th
(在本研究中为0.5)时,该神经元的膜电位将被重置为u
rest
的值。为了更好地理解膜电位的更新,将动力学函数改写为离散形式:
[0049][0050]
s(t)=h(u(t)-u
th
)
ꢀꢀꢀꢀꢀ
(3)
[0051]
式中,s(t)表示t时刻的输出脉冲,h(*)表示海维赛德阶跃函数。lif神经元可以在积分和发放脉冲阶段利用时间信息。然而,它在每次放电过程后都会重新置膜电位,这只能代表有限的信息,即每次放电都会导致一些信息丢失。因此,本发明使用deep层之间的密集连接来更好地捕获有用的特征。设x0,x1,...,x
l-1
作为第l层的前一层的输入特征,第l个密集连接层的输出写为:
[0052]
x
l
=f[x0,x1,...,x
l-1
]
ꢀꢀꢀꢀꢀ
(4)
[0053]
由于snn具有特殊的时空信息处理机制,导致梯度传播趋向于消失,因此很难训练深层的snn模型。为了解决这一问题,本发明采用了一种对时许特征进行批归一化的处理模式来实现深层的snn模型。归一化过程描述如下:
[0054][0055][0056]
其中,表示第i个通道的x
l
(t)的特征图,u
th
表示峰值发射阈值,和分别表示第l层通过所有时间步长的第i个通道特征图的期望和方差。从式(5)可以看出,输出在被归一化到0和阈值u
th
之间。γi和βi是两个可学习的参数。在最后一个阶段,本模型通过投票操作将指示用户环境的每个类别与输出脉冲序列关联起来。在给定的时间窗口中的最终输出c被写为:
[0057][0058]
式中,m为用于解码峰值的常数投票矩阵,o(t)为t时刻最后一层的输出特征。然而,由于脉冲函数是不可微的,因此不能直接使用流行的误差反向传播方法来训练网络。为了使模型可以直接用误差反向传播算法进行训练,使用一个矩形函数来近似峰值函数的导数,即
[0059][0060]
其中a是一个宽度参数,在本实施例中被设置为0.5。
[0061]
在本实施例中,用pytorch实现了所提出的方法。该方法采用adam优化器进行训练。训练迭代次数设置为100,批处理大小设置为512,初始学习率设置为0.001,该值在进行
没40个训练期后下降到之先前值的十分之一。在校园、购物中心和医院三种典型场景下进行的实验,对该方法进行了评价。收集到的数据样本总数超过10万个。9名参与者参与了实验,并使用了12部不同的手机。收集数据后,随机抽取50%的数据作为测试集,其余的作为训练集,并做了以下比较,得出以下比较结论:
[0062]
比较本发明提出的方法和先进的io检测方法的识别精度,这些方法包括magio,iodetector,neuralio,一个流行的基于规则的方法和一个流行的传统的基于机器学习的方法。实验结果如表1所示。可以看出,deepsio在所有的测试场景中都具有最高的检测精度。具体是,deepsio在校园、购物中心和医院场景中的io检测准确率分别达到了99.78%、99.71%和99.81%。
[0063]
比较了本发明所提出的方法与被广泛使用的机器学习方法在新场景下的泛化能力。为此,将收集到的数据重新划分为训练集和测试集。具体来说,以商场收集的数据作为训练集,以校园和医院收集的数据作为测试集。图1显示,deepsio的性能优于其他方法,能够在新的场景中检测io状态,准确率可达96%,远远高于其他方法。
[0064]
比较了本发明所提出的方法与被广泛使用的机器学习方法在新设备下的泛化能力。将收集的数据重新划分为训练集和测试集,即部分移动设备收集的数据作为训练集,其他移动设备收集的数据作为测试集。图2描述了本发明所提出的方法比其他基准方法表现得要好得多,并且可以达到96.5%以上的准确率。
[0065]
分析了不同的传感器组合对本发明所提出方法性能的影响。由于不同组合的数量可以达到31个,所以由于空间的限制,只演示了使用几个典型组合的结果。如图3,图3显示,使用来自所有5个传感器的数据,可以获得最佳的io检测精度,准确率约为99.5%。本发明所提出方法还可以仅利用普遍存在的磁场实现相对较高的精度(约88%),远高于在相同数据上工作的magio(低于80%),表明了该方法的优越性。蜂窝信号和光强度可以很好地帮助提高deepsio的性能。gnss和磁强计的组合比这些没有gnss的组合表现得更好。wifi在有助于io检测方面也很有用,尽管改进很大。总的来说,无论传感器组合如何,本发明所提出方法都能获得相对满意的精度。
[0066]
最后说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改而不脱离本技术方案的宗旨和范围,其均应涵盖在本发明的权利要求范围当中。

技术特征:


1.一种基于脉冲神经网络的室内外检测方法,其特征在于:该方法使用具有密集连接的脉冲神经网络(snn)结合智能手机传感器测量进行室内/室外(io)检测,具体包括以下步骤:s1:从智能手机传感器测量中提取主要特征;s2:对传感器测量中提取到的主要特征进行编码;s3:采用脉冲神经网络snn来进一步学习特征嵌入;s4:采用投票机制获取用户的io状态,实现用户的室内外检测。2.根据权利要求1所述的一种基于脉冲神经网络的室内外检测方法,其特征在于:在步骤s1中,所述从智能手机传感器测量中提取主要特征包括总共从5个传感器中提取43个特征:分别从卫星测量、wifi测量和蜂窝信号塔测量中提取9个特征,从光传感器和磁强计测量中分别提取8个特征;这些特征包括可见卫星或信号塔的数量、平均值、方差、标准差、最大值、最小值、中值、极差以及四分位数。3.根据权利要求2所述的一种基于脉冲神经网络的室内外检测方法,其特征在于:在步骤s2中,对主要特征进行编码,采用了一个更简单的编码方案,即以模型的第一个卷积层作为编码层,而时间步上即为输入信号时间序列上的步长。4.根据权利要求3所述的一种基于脉冲神经网络的室内外检测方法,其特征在于:在步骤s3中,采用snn进一步学习特征嵌入,以实现精确的io检测;与传统的深度神经网络相比,snn具有一种特殊的激活机制,即每个神经元将前一层的输入积累到其膜电位中,当其膜电位超过一个阈值时触发一个脉冲;使用1维的卷积层处理输入特征向量,之后采用lif模型作为snn的动力学模型对特征做非线性映射,lif模型的动力学一般描述为:其中u(t)表示神经元在t时刻的膜电位,τ是一个时间常数,表示其膜电位下降到初始值的e-1
的时间,x(t)表示对神经元的输入,u
rest
是指神经元的静息电位;当一个神经元未受到刺激或膜电位超过发放阈值u
th
时,该神经元的膜电位将被重置为u
rest
的值;将动力学函数改写为离散形式:s(t)=h(u(t)-u
th
)
ꢀꢀꢀꢀꢀ
(3)式中,s(t)表示t时刻的输出脉冲,h(*)表示海维赛德阶跃函数;使用deep层之间的密集连接来更好地捕获有用的特征,设x0,x1,...,x
l-1
作为第l层的前一层的输入特征,第l个密集连接层的输出写为:x
l
=f[x0,x1,...,x
l-1
]
ꢀꢀꢀꢀꢀ
(4)采用一种对时许特征进行批归一化的处理模式来实现深层的snn模型,归一化过程描述如下:述如下:
其中,表示第i个通道的x
l
(t)的特征图,u
th
表示峰值发射阈值,和分别表示第l层通过所有时间步长的第i个通道特征图的期望和方差;从式(5)可以看出,输出在被归一化到0和阈值u
th
之间;γ
i
和β
i
是两个可学习的参数;在最后一个阶段,通过投票操作将指示用户环境的每个类别与输出脉冲序列关联起来;在给定的时间窗口中的最终输出c被写为:式中,m为用于解码峰值的常数投票矩阵,o(t)为t时刻最后一层的输出特征;使用一个矩形函数来近似峰值函数的导数,即其中a是一个宽度参数。5.根据权利要求4所述的一种基于脉冲神经网络的室内外检测方法,其特征在于:在步骤s4中,通过投票机制将系统的输出关联到目标io状态上。6.一种基于脉冲神经网络的室内外检测系统,其特征在于:该系统采用权利要求1至5中任一项所述方法进行室内室外环境检测。

技术总结


本发明涉及一种基于脉冲神经网络的室内外检测方法及系统,属于室内外定位技术领域。该方法使用具有密集连接的脉冲神经网络(SNN)结合智能手机传感器测量进行室内/室外(IO)检测,具体包括:S1:从智能手机传感器测量中提取主要特征;S2:对传感器测量中提取到的主要特征进行编码;S3:采用脉冲神经网络SNN来进一步学习特征嵌入;S4:采用投票机制获取用户的IO状态,实现用户的室内外检测。本方法不仅可以根据当前移动传感器的指示对用户环境进行分类,还可以考虑以前时间步长的测量值进行分类。与现有的方法相比,本发明具有更高的计算效率以及检测的识别准确率,该方法具有良好的性能,可以很好地推广到不同的场景和不同的移动设备中。动设备中。动设备中。


技术研发人员:

古富强 郭方明 刘凯 陈超 罗海勇 尚建嘎

受保护的技术使用者:

重庆大学

技术研发日:

2023.01.09

技术公布日:

2023/3/10

本文发布于:2024-09-22 03:40:24,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/4/69512.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:脉冲   方法   特征   传感器
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议