基于隐马尔可夫模型的智能化无线传感监控平台研究

2015-06-02 01:35张泽宇
电脑知识与技术 2015年9期
关键词:无线传感器网络智能化

张泽宇

摘要:随着无线传感器监控网络系统的广泛使用,作为监控系统重要组成部分,后台监控软件单纯地作为可视化工具已經不能满足使用需求。“智能化”成为了后台监控软件所要满足的重要需求,针对这一需求,本文设计并实现了采用“层次化”预警机制的后台监控软件;并结合机器学习模型,设计了基于隐马尔可夫预测模型(HMM)的监控数据预测方法。为了验证本文所设计的预测方法的准确性,结合从柑橘种植园中采集到的真实的监控数据,与其他几种流行的机器学习预测模型进行了一系列的对比。对比试验的结果表明,通过本文所设计的预测方法,能够实现对监控数据在短期过程与长期过程中的可靠预测,从而改善了后台监控软件的智能化水平。

关键词:无线传感器网络;监控平台;智能化;隐马尔可夫模型

中图分类号:TP393 文献标识码:A 文章编号:1009-3044(2015)09-0205-05

Abstract: Sensor Network-Based monitor systems are widely applied in multiple areas currently. Background monitor software, which is definitely an important part of monitor system, is no longer a simple tool for visualization.Intelligent becomes a primary demand that background monitor softwares need to meet.To satisfy this demand, this paper designs and implements a background monitor software firstly, in which a hierarchical alarming method involved. Then a prediction solution of monitor data based on Hidden Markov Model (HMM) is introduced.For justifying the performance of the proposed prediction solution, a series of contrast experiments between the proposed solution and other machine learning modelsare conducted. The contrast results show that thepredictionperformance of proposed prediction solution is better than the other models, no matter in short term prediction or long term prediction, which means the intelligence of background software is effectively improved.

Key words: wireless sensor network; monitor platform; intelligent; hidden markov model

无线传感监控网络具有大规模部署、网络结构自组织、采集数据精确度高等多种优良特性,因而在众多生产领域里得到了推广。在完整的无线传感器监控网络系统中,后台软件直接面向用户进行监控数据的呈现,并承担数据分类、异常数据预警等重要功能,进而在监控系统中占据重要的地位。而随着监控应用场景的多样化和监控环境复杂度的增加,对后台监控软件的功能要求也日益提高,其中,提高后台软件的“智能化”水平便是最为迫切的要求之一。同时,由于无线传感器网络的部署环境日趋复杂,且存在众多的干扰因素,而后台软件智能化的实现依赖于采集到的监控数据的精确性[1-2]。通过对未知的监控数据进行预测,既弥补了监控数据精确性的缺失,又能够帮助后台软件快速发现问题,做到防患于未然[3-4]。因此,实现监控数据的预测对于实现后台监控软件的智能化有着重要意义。

监控数据具有的随机性和时序性特点,使得一个监控数据序列可以被描述为一个随机过程[1],于是可以采用针对随机过程的研究方法实现对监控数据的预测。马尔可夫模型(Markov Model, MM)及隐马尔可夫模型(Hidden Markov Model, HMM)作为目前流行的机器学习模型,在针对随机过程预测的研究中展现出了良好的性能,因而受到国内外研究的广泛重视。HMM是序列数据处理和统计学习的一种重要的概率模型,具有建模简单,物理意义明确等优点,广泛应用于人脸识别、语言识别领域,故障诊断等研究中。MM 模型最早应用在语音识别领域,随后应用越加广泛如[5]。由于隐马尔科夫模型在语音识别应用的成功,Schaller等[5]将HMM运用到金融市场收益的波动性分析,Chauvet等[6]用 HMM 隐状态的转换去刻画经济周期之间的特征转换。而且国内已有不少学者探讨了 HMM 模型预测股价或指数的相关理论[7]。吴漫君[8]用 HMM 模型预测股价走势时,分别使用了离散和连续 HMM 模型分析,证实了对于同样的数据,虽然连续模型的实证结果优于离散模型,但对样本数据的要求也较高。

本文针对无线传感器监控网络后台软件的智能化问题,开展了以下工作:

1)设计并实现了无线传感器监控网络后台软件,实现了监控所需求的基本功能,并且通过层次化的预警机制,使后台软件具备了基本的智能分析能力;

2)针对实地部署的无线传感监控网络所采集的真实监控数据,对数据进行了深入的统计分析,为HMM的应用奠定基础;

3)提出了基于HMM的监控数据预测方法。

2 后台监控软件的设计

2.1 总体结构

本软件将与用户端相独立的多个数据库服务器整合为一个远程平台整个监控体系提供数据支撑,并在此基础上为各类终端的用户提供无地域约束的实时Web服务,进而实现了数据的统一管理及监控服务范围的扩展。系统设计如图1所示。

从结构上,本软件可以划分为数据处理层、数据存储层、人机交互层与安全管理层。各层次结构通过功能模块间的配合作用发挥具体作用。

各层次间的关系及其包含的功能模块如图2所示。

从传感器网络中采集到的数据将首先进入数据处理层,按照协议设计的帧格式进行解析,解析后的数据将以并行的方式,一方面呈交给人机交互层进行进一步处理,另一方面直接执行存储操作。

在人机交互层中将进行预警判断并根据用户请求执行响应的其他操作;而数据在执行存储过程中,将由远程服务端对数据备份工作进行控制和管理。

安全控制层采取独立管理的方式,其维护的数据以用户个人资料及权限信息为主,与人机交互层相结合进行用户行为控制,保证数据安全。

2.2软件模块

从功能结构上,本软件将主要由以下模块及子模块组成如图3所示:

1)数据接收模块

①帧处理子模块负责时刻监听是否有新的监测数据帧到达。

②异常判断子模块的工作是对处理后的监测数据进行匹配,一旦发现异常数据,将向警报监听模块发出通知。

③保存数据子模块将对经过处理、警报判断后的数据进行保存。

2)警报监听模块

①警报识别子模块将对异常判断子模块发现的异常数据进行细致的警报匹配工作,指导警报事件的生成。

②事件生成子模块的任务是根据警报识别子模块所得到警报详细信息生成一个触发警报提示的事件,该事件将传递到可视化模块中触发相关的警报呈现功能部分。

3)权限控制模块

①身份管理子模块通过对来自用户提供的登录信息和数据库中的用户信息进行匹配的方式判断发出当前访问请求的用户是否具有访问资格。

②行为控制子模块负责对用戶所发出的各种操作请求进行权限匹配,只有用户权限高于或等于操作必须权限时,用户的操作请求才能得到响应。

4)可视化模块

①数据连接子模块建立并维护一条从客户端到云服务平台的数据链路,实时到达的最新监测数据在经过处理后将通过该链路直接流向用户终端。

②数据读取子模块与数据连接子模块相配合,实现对特定数据的查询。

③控件管理子模块选择使用特定的呈现模块进行数据组织与展示。

④数据更新子模块着重解决将用户输入更新到服务平台的问题。

2.3层次化的预警方法

在本文中,针对异常数据的处理,设计了对监控数据的分层处理方法,划分出了4个便于用户理解的数据范围,一个典型的针对农作物土壤水分含量的数据分层方法如表1所示。第一列中以y表示监控数据,第二列中说明了数据层次化的依据。通过数据的层次化,既提高了监控数据的可读性,也使得后台监控软件具有了数据分析的能力,实现了后台软件基础层次的智能化。

3马尔可夫模型与隐马尔可夫模型

3.1马尔可夫模型

对一个观测序列而言,若存在如式-1所表达的特征,则认为其具备马尔可夫性质,该序列称为马尔可夫过程。其中,X表示序列中某一时刻的状态,[P(Xt | Xt-1)]表示t-1时刻的状态到t时刻状态的转移概率。

[P(Xt | Xt-1)=P(Xt | Xt-1, Xt-2, Xt-3,...)] (1)

针对马尔可夫过程提出的马尔可夫模型(MM)可由式-2表示,其中N表示马尔可夫过程中所有状态的数量,T表示状态转移矩阵,I表示初始化向量。

λ = (N, T, I) (2)

通过对MM的训练,可以获得某一马尔可夫过程的状态转移矩阵,矩阵中记录了由当前时刻到下一时刻,当前过程状态转移到其他状态的概率,从而实现了对数据序列的状态预测。

3.2隐马尔可夫模型

HMM由两个随机过程组合而成,其一是无法被直接观察到的隐含的状态转移过程,其二是可被观察到的,与隐含状态有关的过程。在HMM中,通过对可见的状态过程,实现对隐含状态的预测。

一个典型的HMM可以通过式-3进行描述:

λ = (H, O, T, C, I) (3)

1)隐含状态的数目H:即无法观察到的状态的数目。

2)可观察状态数目O:可以明显观察到的状态数目。

3)隐含状态转移概率矩阵T:描述了HMM 中各个状态之间的转移概率(例如本文涉及的状态变化影响因素之间的转移概率)。

4)观察状态转移概率矩阵C:描述了HMM中隐含状态映射到可观察状态的概率。

5)初始状态概率矩阵I:表示隐含状态在初始时刻t0时的概率矩阵。

而其中,隐含状态的数目H与可观察状态的数据O作为常数,故可以将一个HMM的表达简化为λ = (T, C, I)。

4基于HMM的监控数据预测

4.1 监控状态划分

本文以实际采集的柑橘种植园监控数据为研究对象,借鉴2.3节中的数据分析方法,将采集到的每一项数值型监控数据进行了状态划分,记监控状态为Ln(n∈[1,5])。表2给出了本文中每个监控状态所对应的监控数据的取值范围,通过对该取值范围的上下限进行设定,即可为监控数据赋予“语义”,进而解决数值型监控数据难以理解、分析的问题,同时也对监控数据的变化范围进行了压缩,将浮点型数据较大范围的变化区间映射到长度仅为5的整数区间内,降低了大规模数据分析时的计算复杂度。

在表3中,对各个监控状态之间的转移概率进行了统计,描述了一个数据集里,监控系统由t时刻进入到t+1时刻的过程中,监控状态由Ln(t)转移到Ln(t+1)的概率。以表中第4行为例,即选取Ln(t)=3时,说明t时刻,监控系统的监控状态为L3,则该行中的5个百分比概率表示:由时刻t进入到时刻t+1,L3分别转移到L1,L2,L3,L4,L5的概率。

4.2基于隐马尔可夫模型(DHMM)的数据预测

在本文中,选取完整监控数据的80%作为训练集,而余下的20%部分将作为测试对训练后的HMM的预测效果进行检验。

HMM的完整预测过程如下:

1)常数参数设置。本文中使用监控状态作为HMM的可见状态,故得到O=5,经过反复测试调整后,设定使训练效果最佳的隐含状态数目,H=5。

3)前向-后向算法(Baum-Welch算法)。前向后向算法将根据训练数据集中的多组训练序列,不断更新模型中的概率矩阵参数,直至模型符合要求,或训练次数达到上限。

4)对输入数据计算出指定HMM参数下的log_likehood值,该值的取值范围是( -∞, 0 ),代表着输入的数据序列与当前HMM参数的匹配度,越接近0,表示该输入数据与当前模型参数的匹配度越高。

5)输出最优的预测结果。测试过程中,每一个输入的测试序列的最后一个已知项将由若干个可行解分别进行特换,若某个可行解的替换能够使得该序列的log_likehood值最大,则该可行解为最优解,也即最终的预测结果。

5实验

5.1监控数据实时呈现与预警

实时信息监控是监控关节的重要组成部分,本软件使用单独的Web窗口每一个节点的实时监控数据进行展示,如图5所示,为同时对多个节点进行监控提供了可能。

1)在页面主体部分,是由动态控件显示的实时监控数据,为了让用户更直接地掌握数据的变化趋势,本软件中使用折线图的方式对数据进行呈现,图中的横轴代表时间,指出每个监控数据的采集时间,纵轴代表监控值,反映出监控对象的运行状态;

3)折线图中的每一个节点均为独立的数据点,可通过将鼠标箭头移动到数据点上查看数据详情;

4)为更好地让用户了解到监控数据是否正常,本页面中还包含两条基准线(如图2“红色预警线”与“橙色预警线”),超过橙色预警线意味着当前监控对象存在异常的可能,而超过红色预警线则表示当前监控对象已经出现异常,需要立即进行处理。

如图6所示,本软件针对面向不同监控信息的传感节点设置了不同的控件来提高数据呈现的直观性,以最直接、快速的方式将当前监控节点的监控状况传达给软件用户。而针对传感节点可用的相关命令则清楚地布置在呈现控件的一侧,方便用户进行快速的操作。另一方面,为了增强控件呈现的灵活性,每个监控节点所对应的信息面板可由用户灵活地选择展開或隐藏。

当出现异常数据时,本软件以弹窗提示加播放提示效果音的方式向用户进行报警。由于本软件初始的默认异常判断级别为2级,所以在弹窗提示过程中将报警类别区分为“橙色警报”和“红色警报”2类;不同警报类型在弹窗里的提示文字以及播放的提示效果音也不同,以便用户区分,及时掌握监控信息。

在代表视觉报警的提示窗中,如图7与图8所示,首先以突出显示的文字告知用户当前发现的警报类型;同时,进一步说明当前发现异常数据的监控节点所在的具体位置,为用户提供尽可能完整的警报信息,作为快速采取解决方案的基础。

从声音提示效果上看,随着警报级别的提高,所使用的提示音也越发急促。如前文中所提到,当前本软件支持最多5种的异常判断级别,因此也准备了共计5套不同的音效提示方案作为对应。

5.2预测效果

使用HMM对监控状态进行下一状态预测的结果如图9所示。在预测过程中,从完整数据集中除去约80%的训练数据后,将余下的数据作为测试数据;本文中,选择15作为数据序列的长度,即每一数据序列包含15个监控状态数据。

对于预测结果的评价,预测模型以给定数据序列的下1项作为预测目标,故当测试数据集包含n个数据序列时,整个预测过程将产生n个预测结果,同时,也存在n个与预测结果一一对应的真实数据。若所有的n个预测结果构成一个集合,记为R,其中的每个元素记为Rn;而n个真实数据构成的集合记为T,其中的每个元素记为Tn。则可用如式-4的方法计算出预测的准确率,记为C。

图9所示的HMM预测结果由3项数据组成,分别记为“Top1”、“Top2”和“Top3”,3个直方分别代表的含义为:

Top1:将模型预测出的可能性最大的1项作为预测结果;

Top2:将模型预测出的可能性最大的2项作为预测结果,当真实结果包含于这2项中,则认为预测正确;

Top3:将模型预测出的可能性最大的3项作为预测结果,当真实结果包含于这3项中,则认为预测正确;

根据实验结果图,可见随着HMM预测结果集的扩展,其预测的准确率也逐步升高,当预测结果包含最有可能的3项时,预测准确率可高达约95%。而预测结果的扩展,为监控系统在实际应用中提供了十分必要的参考,对于监控软件的智能预警有着重要作用。

6结论

本文设计并实现了具备基本智能分析能力的后台监控软件,并提出了一种基于HMM的监控数据预测方法。在使用HMM对监控状态进行预测的过程中,分别针对监控状态的单步预测与多步预测展开工作。针对不同的预测需求,分别设计了适合于离散型HMM与连续型HMM的预测方法,并且制定了对模型预测效果进行对比分析的评价方法。在实验过程中,将目前已被广泛使用的机器学习算法,如贝叶斯预测、灰色系统、BP神经网络作为对比实验加入。实验结果表明,根据本文提出的基于HMM的预测方法,能够对监控数据进行有效的单步预测与多步预测,从而使后台监控软件的智能化水平得到进一步提高。

参考文献:

[1] 于合龙. 精准农业生产中若干智能决策问题研究[D]. 吉林大学, 2010.

[2] 何成平, 龚益民, 林伟. 基于无线传感网络的设施农业智能监控系统[J]. 常州轻工职业技术学院学报, 2010, 38(8):4370-4372.

[3] 张伟. 面向精细农业的无线传感器网络关键技术研究[D]. 浙江大学, 2013.

[4] 苏鹏, 程健. DHMM 在机械设备音频识别中的应用[J]. Computer Engineering and Applications, 2015, 51(1).

[5] Schaller H, Norden S V. Regime switching in stock market returns[J]. Applied Financial Economics, 1997, 7(2): 177-191.

[6]Chauvet M. An econometric characterization of business cycle dynamics with factor structure and regime switching[J]. International economic review, 1998: 969-996.]

[7] 朱嘉瑜, 叶海燕, 高鹰. 基于隐马尔可夫模型的股票价格预测组合模型[J]. 计算机工程与设计, 2009 (21): 4945-4948.

[8] 吴漫君. 基于隐马尔科夫模型的股价走势预测[D]. 华南理工大学, 2011.

猜你喜欢
无线传感器网络智能化
智能化战争多维透视
智能化的“世界观”
印刷智能化,下一站……
基于“物联网+”的智能化站所初探
基于无线传感器网络的葡萄生长环境测控系统设计与应用
无线传感器网络技术综述