张桥容,张龙海,周明
(广东省五华县气象局,广东 梅州 514400)
随着计算机和微电子技术的快速发展,无线传感器网络(Wireless Sensor Networks,WSN)逐渐被引入到气象观测领域的实际应用中[1]。为了尽可能避免人员伤亡与经济损失,准确、及时的气象监测成为了防灾与减灾的重要手段[2-5]。在气象监测工作中,具有通信功能的气象传感器大幅降低了相关数据的收集难度,同时还提高了对自然灾害应急处理的能力[6-8]。然而受限于无线传感器网络的设备限制,当前气象传感器仍存在低精度、高成本和低密度等不足。因此,如何设计适用于气象传感器网络的异常数据处理算法,逐渐成为气象监测领域的研究热点[9-11]。然而,这类研究成果仍未能完全解决气象观测领域的数据质量控制问题。为了优化气象观测的数据质量,文中将雷击影响与浪涌保护纳入异常数据的范围中,并通过引入反向传播(Back Propagation,BP)神经网络和滑动窗口(Sliding Window),提出了具有较高检测效率的数据质量控制算法。
由于低功耗微传感器技术的快速发展,气象观测领域逐渐开始引入无线传感器网络。通常而言,该网络[12-13]主要由传感、汇聚和管理节点组成。其以自组织方式完成对气象数据的收集、传输与管理,进而实现重要的数据检测功能。在气象数据检测中,本次主要采用型号为SHT15 的太阳能充电温度传感器,作为自动气象站中的核心设备,其可负责对日射强度、温度及气压等多种气象条件的测量。
在传感网络中,受工作环境、仪器故障和突发事件等因素的影响,部分传感器节点易输出与其他相邻节点完全不同的数据,即生成较为突兀的异常数据。而这类生成异常数据的节点,则被称为离群点。目前根据产生原因的不同,异常数据主要可分为噪声异常数据、事件异常数据与恶意攻击异常数据,具体如下:
1)噪声异常数据主要由传感网络中的设备错误或故障引起。在进行气象观测时,由于大量传感器会被部署于恶劣的自然环境中,电子设备易被地形、温度和气压等环境因素破坏,从而产生噪声异常数据。
2)事件异常数据主要由雷击、地震、降雨或太阳黑子等天气突发事件造成。与噪声异常数据相比,由环境变化引起的事件异常数据具有极高的参考价值,但其发生概率较小,且与前者并无明显区别。
3)恶意攻击异常数据主要是由传感网络之外的第三方攻击引起的,根据攻击手段的不同,该类异常数据通常可分为主动和被动攻击两类。
在气象监测中,异常数据的检测效果对传感器的数据质量存在较大影响,具体有:
1)异常数据检测受传感网络硬件资源的限制。原因在于,传感网络主要由低成本、低功耗的节点组成,其计算资源、电力资源与存储资源均较为有限。
2)异常数据检测极大地提高了传感网络的通信代价。传感网络需要对收集到的数据进行必要的数据处理,而气象数据的通信能耗由于受到路径损耗、信号衰减及传输噪声等多种因素的限制,其不仅远高于数据处理能耗,也是传感网络中的最大能耗。
3)异常数据检测受到传感网络拓扑结构变化的限制。由于传感网络随时可能添加或删除传感、汇聚及管理等节点,因此其网络拓扑与通信模式均存在较大的移动性和不确定性。
为了优化气象观测数据的实时性及精确性,文中通过引入BP 神经网络[14-15]对传感网络所采集的原始数据进行预处理、插值与平移等操作,从而提出可降低误差的数据质量控制方法。
为降低气象观测数据的绝对误差,文中提出了具有较高通用性的数据质量控制方法,以实现数据处理和误差校正等多种功能。其具体数据处理流程如图1 所示。
图1 数据质量控制方法的处理流程
由于传感器的数据采样频率不同,故采用三次样条插值(Cublc Spline Interpolation)[16]函数对原始数据进行必要的插值处理。三次样条插值是一种精确且实用的插值方法,其利用部分离散采集数据进行分段插值,进而获取能够表达全部数据的高次函数,由此保证了全部序列的平滑拟合。在插值过程中,不妨设温度、光照及标准温度的采样序列分别为T、L和Z,ti、li与zi是序列T、L和Z的第i个分量。令j∈[1,3]且和表示三次样条插值函数的待定系数,即可确定温度、光照和标准温度的插值分段函数。函数S(1)(t)中包含了4n个待定系数。根据线性代数的原理,为了求解这些待定系数,方程的个数必须大于4n。同理,S(2)(l)和S(3)(z)也应包含个数大于4n的方程。换言之,无线传感器网络需积累个数大于4n的数据,才能实现精确的三次样条插值。
在进行传感器的实际环境部署时,为了尽可能降低外部包装材料对传感器多项采集数据的影响,文中对采集温度、光照和标准温度在24 h 之内的原始数据进行了必要的统计。具体统计情况如图2 所示。
图2 传感器的原始采集数据统计
由图2 可知,标准温度和采集温度之间存在一定的误差,但二者的变化趋势一致。这表明通过适当的平移,传感器所采集的温度可达到较高的精确度。通过调用ArcGIS 软件中的Offsetter 函数,实现了传感器采集数据的平移处理,进而有效提高采集数据的精确度。经平移处理后的数据结果如图3 所示。
图3 传感器的采集数据平移处理结果
在实现多项数据插值及平移操作之后,文中引入了BP 神经网络,对气象观测数据做进一步的训练和处理,从而降低采集与实际温度间的绝对误差。通常而言,BP 神经网络是基于误差逆向传播训练的多层前馈算法,其具有一定的决策、学习能力,且已应用于图像处理及自然语言等多个研究领域中。该算法的标准结构如图4 所示。
图4 BP神经网络的标准结构
设光照和温度数据是BP 神经网络的输入数据,其可分别表示为此处将两者统一标准化为BP 神经网络的输入值输出数据表示为误差值则是。设cij和cjk分别表示输入层至隐藏层之间、隐藏层至输出层之间的连接权重系数,当输入与输出层节点的数量分别为a、b时,BP 神经网络的具体执行步骤如下:
步骤1:初始化,即按照光照和温度数据的情况,设定输入及输出层的节点数量a和b、连接权重系数cij与cjk,并将隐藏层节点数量设为1,同时设定隐藏层阈值Th、输入层阈值To和学习速率μ。
步骤2:利用式(1)计算隐藏层的节点输出值M=[m0,…,ms-1]T:
其中,s是隐藏层中的节点数量且j∈[0,s-1] ;而g是输入层至隐藏层的Sigmoid 激活函数,其计算方法为:
步骤3:利用隐藏层的节点输出值M、权重系数cjk和阈值To,令k=0,…,b-1,按照式(3)计算输出层的节点输出Y:
步骤4:利用输出层节点输出Y与温度数据T,计算神经网络的误差值E,其表达式为:
步骤5:利用式(5)-(6)以及误差值E的结果,令j∈[0,s-1] 且k∈[0,b-1],计算输入层与隐藏层、隐藏层和输出层之间的新权重系数
步骤6:利用式(7)-(8)与误差值E的结果,令j∈[0,s-1] 且k∈[0,b-1],计算隐藏层和输入层的新阈值
步骤7:若算法的迭代轮数超过最大迭代次数Imax,停止执行算法;否则转向步骤2,继续运行该算法。
通过执行BP 神经网络的具体步骤,文中建立了光照、温度数据与误差数据之间的动态映射关系,从而有效减轻了雷击和浪涌等现象引起的数据波动性。
为了验证数据质量控制算法的可行性,通过引入大量的原始气象观测数据,重复运行基于BP 神经网络的数据质量控制算法,并与原始数据进行必要的计算和对比。在具体实验中,选取了原始气象观测数据共1 000 份。其中,700 份作为数据质量控制算法的训练集,剩余300 份则作为算法测试集。此外需要说明的是,在测试过程中为衡量算法的数据修正效率,文中利用原始及修正之后的气象测量数据,分别计算了传统质控算法与所提算法的修正效率。令η表示算法的修正效率,dr表示原始观测数据,Δd表示数据的修正量,则其计算方法如下:
按照上述方法,利用相同的测试集数据,迭代运行两种考虑雷击和浪涌现象的数据质控算法,即传统质控算法与该文算法,计算并统计所获得的数据准确度及修正效率。具体统计结果如图5-6 所示。
由图5 可知,随着测试数据量的增加,两种算法的数据准确度均有不同程度的波动,但总体均呈上升趋势。且当测试数据量相同时,所提算法的数据准确度明显高于传统质控算法。从图6 中可以看出,随着测试数据量的增加,两种算法的数据修正效率均在一定范围之内波动。但传统质控算法的修正效率处于60%~70%之间,而该文算法则在80%~90%之间。由此可知,后者的修正效率更高。综上所述,与传统质控算法相比,基于BP 神经网络的数据质控算法具有更优的数据准确度和修正效率。通过与传统算法的实验对比,突出了该文算法综合性能的优越性。
通过引入BP 神经网络算法,文中对气象观测数据的质量控制方法进行了深度的改进与优化,从而提高了数据的准确度及修正效率,并降低了雷击和浪涌现象对观测数据的影响。然而与传统数据质控算法相比,该文算法需要使用更多的计算资源,其实用性可能仍存在一定的缺陷。因此,在未来的研究工作中将致力于解决这一问题。