一种基于深度学习的路面病变检测预警方法及系统与流程

文档序号:22390236发布日期:2020-09-29 17:55阅读:282来源:国知局
一种基于深度学习的路面病变检测预警方法及系统与流程

本发明属于路面病变检测技术领域,更具体地,涉及一种基于深度学习的路面病变检测预警方法及系统。



背景技术:

随着我国公路的迅猛发展、运输量,车流量逐年增加,沥青路面经常出现车辙、裂缝、松散、翻浆、水损害或沉陷等病害,严重影响了行车安全和公共安全,为保证路面管理工作的有效开展,必须对沥青路面进行检测。现阶段我国的公路病害检测方法主要采用点取样检测和多功能道路检测车检验。以钻芯取样为代表的点取样检测方法虽简单易行,但存在破坏路面结构完整性、检测结果代表性不佳及封闭交通时间过长等弊端。多功能道路检测车无法检测路面结构层内部存在大量的隐藏病害,例如反射裂缝、层间脱空、路面结构的不均匀沉降。这些病害具有较高的隐蔽性,无法通过常规的检测手段进行识别、定位和测量。

国内外用于路面结构病害检测的技术主要包括钻芯取样、光纤维技术、声波和超声波探伤技术、ct断层扫描技术以及探地雷达检测技术。从检测的准确性上讲,ct扫描技术的准确性最佳,但是ct扫描设备只能进行小范围扫描,检测全面性欠佳,且对人体造成伤害,设备造价较高,不利于技术的推广。相比ct扫描技术,超声波检测覆盖范围广,设备轻便且低廉。然而,超声波检测的准确性较差,很难准确反映路面病害的形态特征,且检测结果受环境条件影响较大。探地雷达技术在裂缝病害的检测中呈现出实时、多维、高精度的特点,其裂缝定位和裂缝深度的计算已经可以满足路面检测和维护的需求。然而,无论结构层隐含裂缝检测还是路表裂缝检测均采用了路面耦合型的探地雷达,这种雷达要求检测过程中与地面完全贴合,检测效率较低。

有不少传统机器学习算法可用于路面病害识别预警,包括k近邻算法(k-nearestneighbor,knn)、局部异常因子算法(localoutlierfactor,lof),还有基于聚类的k-means算法、高斯混合模型(gaussianmixturemodel,gmm)等、但随着路面检测参数越来越多,给劣化预警带来了新的挑战。维度跨度很大,从几维到上百维都有可能,参数之间的关联性较为复杂。传统的异常检测方法与劣化预警技术已不能很好的处理高维数据,存在维数灾难的问题。现有的一些路面病害检测方法主要利用卷积神经网络对探地雷达图像和摄像头拍摄的可见光图像进行识别,这对比较明显的病害识别有效,比传统的机器学习方法识别准确度提高许多,但是对于早期劣变和趋势预警方法存在不足。实际上对于沥青路面塌陷的早期劣化预警非常重要,可以避免重大交通事故,减少公共安全危害。

近年来,深度学习在各个领域都展现出了强大的能力,已有不少研究将深度学习运用到异常检测领域。为克服维数灾难问题,主流的方法便是使用自编码网络进行特征压缩,降维到低维空间中。之后有两种处理方法:第一种,根据自编码网络的重构误差直接筛选异常,因为自编码网络使用正常数据进行训练,所以对正常数据的重构误差较小,对异常数据的重构误差往往较大;第二种,对压缩后的特征再使用其他异常检测方法,如聚类分析等。这两类方法也有各自的不足。前者仅根据重构误差来识别异常数据,某些情况下异常数据的重构误差也可能很小,容易导致大量异常的漏报;后者的问题在于,自编码器进行特征压缩时不知道下一步要进行的聚类分析或其他异常检测任务,可能遗漏一些对于异常检测有用的关键信息。

于是,最近的很多研究,如dagmm模型,尝试将自编码网络和聚类任务同时进行训练,取得了很不错的效果。但是这些方法也仍有提升的空间,如一些模型没有考虑数据的时序依赖性,且大部分为通用模型,没有专门对沥青路面的采集参数进行研究优化。另外,由于异常发生的概率往往很低,也有研究将极值理论作为基础,利用阈顶点(peaks-over-threshold,pot)模型来进行异常检测。但pot模型针对的是一维数据,无法处理高维数据。



技术实现要素:

针对现有技术的缺陷,本发明的目的在于提供一种基于深度学习的路面病变检测预警方法及系统,以解决以下技术问题:传统的机器学习方法,如k近邻算法、高斯混合模型等,难以处理维数灾难问题,在面对高维数据时表现往往不佳;现有的深度学习方法,也有各自的不足之处,如仅考虑重构误差、自编码网络与聚类分析任务没有协同工作、没有考虑数据的时序特征、没有合适的确定报警阈值的方法。

为实现上述目的,第一方面,本发明提供一种基于深度学习的路面病变检测预警方法,包括如下步骤:

确定路面不同分段的不同时间段的参数;所述参数包括路面结构参数、路面环境参数以及路面技术参数;

将各个分段路面不同时间段的参数分别输入到预先训练得到的双路深度神经网络模型,以检测各个分段路面参数对应的样本能量;

基于阈顶点pot模型以及各个分段路面参数对应的样本能量确定报警阈值;当某个分段路面的样本能量超过所述报警阈值时,认为该分段路面发生病变,将该分段路面设为一个报警点进行路面病变预警。

可以理解的是,将参数输入到双路深度神经网络模型之前,对参数使用z-score方法进行规范化处理。

具体地,所述路面结构参数包括:路面损坏状况指数,路面行驶质量指数,路面车辙深度指数,路面跳车指数,路面磨耗指数,路面抗滑性能指数,路面结构强度指数,路面材料参数,公路等级参数;

所述路面技术参数包括:公路技术状况指数,路面使用性能指数,路基技术状况指数,桥隧构造物技术状况指数,沿线设施技术指数;

所述路面环境参数包括:路面气候参数和路面湿度参数。

可选地,所述双路深度神经网络模型包括自编码网络和估计网络;

所述自编码网络包括编码网络和解码网络:

所述编码网络使用多层循环神经网络构建,所述多层循环神经网络的输出端连接一层全连接层网络;所述编码网络的全连接层输出特征zc;所述多层循环神经网络中的每层神经网络接收输入的一个分段路面一个时刻的参数;

所述解码网络由全连接层网络构建,层数与编码网络的层数一致,所述解码网络的全连接层对应的隐藏层节点数与所述编码网络的节点数一致;所述解码网络基于路面的参数的原始数据得到对应的重构数据,计算重构数据与原始数据的欧氏距离和余弦相似度;所述欧式距离和余弦相似度组合为向量zr;

所述特征zc和向量zr组合为所述自编码网络的输出z;

所述估计网络由全连接层构建,使用dropout层和softmax函数;所述估计网络用于估计输入特征z在高斯混合模型下的分类概率并基于所述分布概率更新高斯混合模型的参数。

具体地,在得到分类概率后,需要更新高斯混合模型的参数,公式如下:

使用k表示高斯分布的数量,则k为高斯分布的序号;n为训练样本的数量;αk指第k个高斯分量的混合系数,所有分量的混合系数和为1;分别为第k个高斯分量中样本的均值和协方差矩阵,表示第i个样本属于第k个高斯分量的概率。

可选地,所述双路深度神经网络模型的损失函数j为:

其中,等式左边θc,θd,θm分别为编码网络、解码网络、估计网络的参数;等式右边的第一项为自编码网络的重构误差,第二项为高斯混合模型的分类损失,第三项为特征的线性相关性惩罚项;λ1,λ2分别为两个损失项的权重系数;n表示训练样本数量,l()表示l2范数的平方,xi表示输入的第i个样本,xi′表示自编码网络对第i个样本的重构数据,zi表示第i个样本对应的传入压缩网络的特征数据,e()表示传入特征的能量,表示特征各维度间的平均皮尔逊相关系数,表示高斯混合模型中的协方差矩阵。

可选地,

可选地,所述分类损失中的e(z)称为样本能量,计算公式如下:

上式中,z为传入的特征数据,k表示高斯分布的数量,则k为高斯分布的序号;分别为第k个高斯分量对应的均值和协方差矩阵,exp()为自然常数e为底的指数函数;上标t表示矩阵装置,π为圆周率,|·|是求行列式操作。

可选地,具体公式如下:

上式中,k为高斯分量个数,fd为低维压缩特征的维数;绝对值函数abs中的值为第k个高斯分量中第i个和第j个属性的皮尔逊相关系数。

可选地,所述报警阈值zq的计算公式如下:

其中,为形状参数,为尺度参数,这两个参数一般根据超出量的集合y使用极大似然估计计算得到;nt为峰值的数量,参数q为对异常数据出现概率的预期。

可选地,还包括如下步骤:

使用所述pot模型得到的报警阈值,进行第一遍的报警点筛选;计算所述报警阈值时,需要适当调节pot模型的参数,使之倾向于取得更高的召回率;

使用延迟法进行第二遍报警点筛选;设置合适的延迟法参数,对于第一遍得到的报警点再进行一遍筛选,得到最终确认的报警点。

第二方面,本发明提供一种基于深度学习的路面病变检测预警系统,包括:

参数确定单元,用于确定路面不同分段的不同时间段的参数;所述参数包括路面结构参数、路面环境参数以及路面技术参数;

能量检测单元,用于将各个分段路面不同时间段的参数分别输入到预先训练得到的双路深度神经网络模型,以检测各个分段路面参数对应的样本能量;

阈值报警单元,基于阈顶点pot模型以及各个分段路面参数对应的样本能量确定报警阈值;当某个分段路面的样本能量超过所述报警阈值时,认为该分段路面发生病变,将该分段路面设为一个报警点进行路面病变预警。

可选地,所述双路深度神经网络模型包括自编码网络和估计网络;

所述自编码网络包括编码网络和解码网络:

所述编码网络使用多层循环神经网络构建,所述多层循环神经网络的输出端连接一层全连接层网络;所述编码网络的全连接层输出特征zc;所述多层循环神经网络中的每层神经网络接收输入的一个分段路面一个时刻的参数;

所述解码网络由全连接层网络构建,层数与编码网络的层数一致,所述解码网络的全连接层对应的隐藏层节点数与所述编码网络的节点数一致;所述解码网络基于路面的参数的原始数据得到对应的重构数据,计算重构数据与原始数据的欧氏距离和余弦相似度;所述欧式距离和余弦相似度组合为向量zr;

所述特征zc和向量zr组合为所述自编码网络的输出z;

所述估计网络由全连接层构建,使用dropout层和softmax函数;所述估计网络用于估计输入特征z在高斯混合模型下的分类概率并基于所述分布概率更新高斯混合模型的参数。

总体而言,通过本发明所构思的以上技术方案与现有技术相比,具有以下有益效果:

本发明提供一种基于深度学习的路面病变检测预警方法及系统,基于自编码网络的模型,可对大量路面参数组成的高维数据进行特征提取,以避免传统机器学习方法难以处理的维数灾难问题。

本发明提供一种将自编码网络和聚类分析联合训练的方法,配合改进的损失函数,使得提取到的特征更有意义,更有利于聚类分析,解决了仅使用自编码网络重构误差、特征提取与聚类分析任务没有协同工作的缺陷。

本发明在自编码网络的编码部分使用了循环神经网络,在解码部分使用全连接层,解决了一些算法忽略数据时序特征的问题,同时在不影响解码能力的情况下,降低了网络训练和使用的时间成本。

本发明利用pot模型和延迟法进行两步式的报警信息筛选,确定了合适的报警阈值,有效提高了报警信息的召回率和精度,解决了一些算法没有合适的报警策略的问题。

附图说明

图1是本发明提供的基于深度学习的路面病变检测预警方法流程图;

图2是本发明的路面病变及劣化预警流程示意图;

图3是本发明中的深度神经网络模型网络结构图;

图4是本发明提供的基于深度学习的路面病变检测预警系统架构图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

本发明是一种基于深度学习的沥青路面病变检测与劣化预警方法,该方法的特征包括:双路深度神经网络由一个异构的自编码网络和一个估计网络构成;自编码网络用于特征提取,编码网络由多层循环神经网络构成,解码网络则由全连接网络构成;估计网络基于高斯混合模型的框架,预测压缩特征的分类概率;损失函数由三部分组成,分别是自编码网络的重构损失、估计网络的预测损失和压缩特征的线性相关性损失;训练完成的模型,可计算出输入样本数据的样本能量,样本能量值越大,说明该段路面早期病变、劣化的可能性越高;筛选报警阶段,使用了pot模型和延迟法进行两步式的筛选,在尽量提高召回率的同时不对精度造成过大的影响。

图1为本发明提供的基于深度学习的路面病变检测预警方法流程图,如图1所示,包括以下步骤:

s110,确定路面不同分段的不同时间段的参数;所述参数包括路面结构参数、路面环境参数以及路面技术参数;

s120,将各个分段路面不同时间段的参数分别输入到预先训练得到的双路深度神经网络模型,以检测各个分段路面参数对应的样本能量;

s130,基于阈顶点pot模型以及各个分段路面参数对应的样本能量确定报警阈值;当某个分段路面的样本能量超过所述报警阈值时,认为该分段路面发生病变,将该分段路面设为一个报警点进行路面病变预警。

为了达到上述目的,本发明为此提供的技术方案流程如图2所示,具体步骤如下:

1、数据采集。通过多功能道路检测车、探地雷达等多种手段,采集路面不同分段的不同时间段的参数,从中筛选出合适的、正常状态段数据作为训练数据。

具体地,路面的参数包括:路面材料、公路等级、气候、湿度等多个参数,例如:公路技术状况指数(maintenancequalityindex,mqi);路面使用性能指数(pavementqualityindex,pqi);路基技术状况指数(subgradeconditionindex,sci);桥隧构造物技术状况指数(bridge,tunnelandculvertconditionindex,bci);沿线设施技术指数(traffic-facilityconditionindex,tci);路面损坏状况指数(pavementconditionindex,pci);路面行驶质量指数(ridingqualityindex,rqi);路面车辙深度指数(ruttingdepthindex,rdi);路面跳车指数(pavementbumpingindex,pbi);路面磨耗指数(pavementsurfacewearingindex,pwi);路面抗滑性能指数(skiddingresistanceindex,sri);路面结构强度指数(pavementstructurestrengthindex,pssi)。

在一个示例中,路面参数如下表1:

表1不同路段(桩号)某时刻路面参数表

2、数据预处理。对于取得的原始多维数据x,使用z-score方法进行规范化,使其各维属性都变为均值为0、方差为1的标准正态分布,公式如下:

上式中,x′为规范化后的数据,为原始数据的均值,σx为原始数据的标准差。z-score标准化方法可以去除各维属性的量纲,使之具有可比性,加快收敛速度。

3、构建深度神经网络模型。整体网络结构如图3所示,由自编码网络和估计网络组成,接下来进行详细说明。

令x1,x2…xt分别为时刻1,2……t时的路面采集参数。具体地,xt是指t时刻各参数的值的集合,即为1*m的数组,m表示路面具体的参数个数。db表示第b个路面参数t时刻的数值。(1≤b≤m):

(31)自编码网络的编码网络部分。该部分网络使用1至多层循环神经网络(recurrentneuralnetwork,rnn)构建,在其输出后再接一层全连接层,得到的输出即为提取到的特征zc。输入数据时,可采用滑动窗口的形式,即在时刻t,选定最近的t+1个连续数据输入到rnn中;也可使用无滑窗的形式。

(32)自编码网络的解码网络部分。该部分网络使用与编码网络不同的网络结构,由全连接层构建,但层数与编码网络一致,隐藏层节点数与编码网络相对应。得到的重构数据为x′t。计算重构数据与原始数据的欧氏距离和余弦相似度,两者组合为向量zr,计算公式如下:

将特征zc和向量zr组合为自编码网络的输出z。

(33)估计网络部分。估计网络用于估计输入特征z,在高斯混合模型框架下的分类概率该网络使用全连接层构建,中间可使用dropout层,因为需要输出概率值,所以最后使用softmax函数。

在得到分类概率后,需要更新高斯混合模型的参数,公式如下:

使用k表示高斯分布的数量,则k为高斯分布的序号;n为训练样本的数量,xi为第i个样本,为第i个样本属于第k个高斯分量的概率;αk指第k个高斯分量的混合系数,所有分量的混合系数和为1;分别为第k个高斯分量中样本的均值和协方差矩阵。

(34)损失函数。损失函数公式如下:

等式左侧中,θc,θd,θm分别为编码网络、解码网络、估计网络的参数;等式右边的第一项为自编码网络的重构误差,第二项为高斯混合模型的分类损失,第三项为特征的线性相关性惩罚项;λ1,λ2分别为两个损失项的权重系数。

损失函数中的第一项为重构误差,利用了l2范数,即:

第二项为分类损失,又将其中的e(z)称为样本能量,计算公式如下:

上式中,z为传入的特征数据,k表示高斯分布的数量,则k为高斯分布的序号;分别为第k个高斯分量对应的均值和协方差矩阵,exp()为自然常数e为底的指数函数;π为圆周率,|·|是求行列式操作。

第三项是提取到的特征,其各属性间的皮尔逊相关系数的平均值,具体公式如下:

这里为了简化计算量,没有直接去计算压缩特征的协方差矩阵,而是利用了估计网络中求得的协方差矩阵(由于协方差矩阵为对称矩阵,所以计算时只需要使用其中的下三角或上三角部分即可)。上式中,k为高斯分量个数,fd为低维压缩特征的维数;绝对值函数(abs)中的值,即为第k个高斯分量中,第i个和第j个属性的皮尔逊相关系数。当压缩特征维数为1时,无法计算相关系数,损失值置为0。利用该损失项,可以迫使自编码网络学习到线性相关性更小甚至线性无关的特征,降低线性相关性造成的冗余,从而使网络提取到更有意义的特征。

4、离线训练。使用第2步中准备好的数据,利用反向传播算法训练第3步中建立的深度神经网络模型,使用adam优化器等方法加快模型收敛。训练时应将batchsize设置得适当大,以使网络在训练中能更好地估计高斯混合模型的参数。在完成训练后,再将所有训练数据一起运行一遍,以更新高斯混合模型的参数,获得更好的效果。

5、运用pot模型,计算出报警阈值zq。pot模型的输入为深度神经网络模型输出的、所有训练数据的能量。

pot模型中有两个参数,参数level用于设定筛选峰值的阈值,参数q为对异常数据出现概率的预期。将n个训练数据的样本能量从小到大排序,取第n×level个数值作为峰值阈值t。若样本能量xi大于峰值阈值t,则称之为超阈值或峰值,yi=xi-t为超出量。最终,报警阈值zq的计算公式如下:

其中,为形状参数,为尺度参数,这两个参数一般根据超出量的集合y,使用极大似然估计计算得到;nt为峰值的数量参数q为对异常数据出现概率的预期。若样本能量大于报警阈值zq,则认为该路段发生了病变或劣化。

6、在线运行模型。使用与第1、2步一样的方法获取路面的当前采集参数、进行预处理,然后送入第4步训练好的模型中,运行模型并计算得到每个数据样本对应的样本能量。

7、筛选报警信息。对第6步中得到的样本能量,使用pot模型和延迟法筛选报警信息。

具体筛选异常数据的步骤如下:

(71)使用pot模型得到的报警阈值zq,进行第一遍的报警点筛选。第5步中计算报警阈值时,需要适当调节pot模型的参数,使之倾向于取得更高的召回率。

(72)使用延迟法进行第二遍筛选。设置合适的延迟法参数,对于上一步得到的报警点再进行一遍筛选,得到最终确认的报警信息。

在一个具体的实施例中,从某沥青路面上采集到的历史数据为40维的原始数据,共20000条,采样间隔为1分钟。使用z-score方法对其进行规范化,使其各维属性都变为均值为0、方差为1的标准正态分布。

根据本发明提供的方法建立深度神经网络模型,设置合适的提取特征维数(即自编码网络位于中间的隐藏层节点数)及聚类数(即估计网络的输出层节点数),此处分别设为20和4。自编码网络的节点数可表示为:40-100-60-20-60-100-40,再加上欧氏距离和余弦相似度两个特征,自编码网络的输出为42维;估计网络的节点数可表示为:42-20-dropout-4,其中“dropout”表示dropout层。根据原始数据的周期特征设置合适的滑窗大小,此处设为100。

然后依据本发明进行离线训练。将batchsize设为1000,初始学习率设为0.0002,使用adam优化器,epoch设为5000。当原始数据的维数较高时,收敛可能较慢,可设置较大的epoch,或设置较大的初始学习率,之后再根据损失变小。

模型训练完成后,便可用于在线运行。在线运行时,获取的实时运行参数一样需要进行z-score规范化,然后输入到模型中,运算得到每个实时数据的样本能量。

最后,设定合适的pot模型和延迟法参数,这需要根据经验或测试结果进行确定,既要适当提高召回率,但又不能使精度过低,因为延迟法的调节能力有限。此处将参数level设置为0.95,参数q设置为0.001。只有样本数据的能量值超过异常阈值zq,就会发出报警信号。

图4是本发明提供的基于深度学习的路面病变检测预警系统架构图,如图4所示,包括:

参数确定单元410,用于确定路面不同分段的不同时间段的参数;所述参数包括路面结构参数、路面环境参数以及路面技术参数;

能量检测单元420,用于将各个分段路面不同时间段的参数分别输入到预先训练得到的双路深度神经网络模型,以检测各个分段路面参数对应的样本能量;

阈值报警单元430,基于阈顶点pot模型以及各个分段路面参数对应的样本能量确定报警阈值;当某个分段路面的样本能量超过所述报警阈值时,认为该分段路面发生病变,将该分段路面设为一个报警点进行路面病变预警。

具体地,图4中各个单元的功能可参见前述方法实施例中的介绍,在此不做赘述。

本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

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