一种基于关键词的大坝缺陷图像描述文本生成方法与流程

文档序号:22044357发布日期:2020-08-28 18:31阅读:115来源:国知局
一种基于关键词的大坝缺陷图像描述文本生成方法与流程

本发明属于大坝缺陷描述文本生成领域,特别涉及一种基于关键词的大坝缺陷图像描述文本生成方法。



背景技术:

建筑工程领域将工程施工质量中不符合规定要求的检验项或检验点定义为缺陷,随着水电站大坝的长期运行,材料老化、环境影响等原因导致了不同程度缺陷的形成。当缺陷程度较轻时,尚可采取相应的措施对缺陷进行及时地处理,达到结构的承载要求,一旦缺陷没有得到及时地处理与补救,将对大坝安全运行造成重大威胁。电监安全[2005]24号《水电站大坝安全定期检查办法》明确指出应当委派专员定期对水电站大坝进行检查与安全评价,并出具必要的专项检查报告和总结报告,以维护大坝安全运行。

对于大坝于缺陷特征而言,缺陷关键词的语序对于文本语义的影响较小,而关键词之间的关联关系对于文本语义有较大的影响。如“碱性物析出”通常不是单独存在的,根据其特殊的化学成因,往往伴随着“渗水”而产生,因此,在文本生成任务中,缺陷关键词之间的成因联系不可忽视。



技术实现要素:

发明目的:为了克服现有技术中存在的问题,本发明提供一种基于关键词的大坝缺陷图像描述文本生成方法,能够准确连贯地依据现有缺陷关键词进行文本生成,不仅可以定性的进行缺陷描述,同时能够表述缺陷之间的成因关联,为完成大坝安全巡检报告提供直观的文本依据,降低人工整合的复杂度。

技术方案:为实现上述目的,本发明提供一种基于关键词的大坝缺陷图像描述文本生成方法,包括如下步骤:

(1)将分解机模型与rnn编码器相结合,计算各个时刻输入的不同缺陷关键词和两两关键词组合的隐藏状态;

(2)将编码器语义向量通过注意力机制为输入的缺陷关键词分配权重,控制缺陷描述文本语义;

(3)采用lstm解码器进行文本预测,通过输入门、遗忘门和输出门来控制隐藏状态中信息的流动,减少传统循环神经网络梯度消失或梯度爆炸的现象。

所述利用分解机模型与rnn编码器相结合的模型的具体步骤如下:

(1.1)隐藏状态计算:定义时间步长为n-1的关键词输入集合为xt(x1,x2,…,xn-1),当前时刻输入为xt,ht是该时间步的隐藏变量,为了使所有前向序列对当前时间步t的输出序列产生影响,引入权重参数whh,该权重参数用来描述时间步t-1的隐藏层变量ht-1对ht的作用。时间步t的隐藏层变量:

ht=φ(xtwxh+ht-1whh+bh),

其中,wxh为xt的输入参数,whh为隐藏层参数,bh为隐藏层偏差参数,h为隐藏单元个数,为了使得前向时间步的序列对后向序列产生影响,隐藏变量ht将联合xt+1作为下一个时间步的输入,依次循环下去;

(1.2)分解机语义隐藏状态计算:当关键词集合的最后一项xn-1输入完成后,隐藏状态计算的隐藏变量为hn-1,此时,hn-1集合了所有关键词的语义信息。为了研究关键词之间的关联与否,将输入序列中的所有关键词两两组合,重新拼接成新的序列,在xij中计算预备隐藏向量hij:

hij=φ(xijwxh+hn-1whh+bij),

其中,wxh为xij的输入权重,whh为预备隐藏状态的权重,bij为偏置项;

(1.3)语义向量计算:最终包含关键词两两之间关联性的隐藏向量hn:

其中,wij为预备隐藏变量hij各自的权重参数。当训练集出现的两关键词的相关性语句,这两个关键词对应的权重累加1,因此,由训练集关键词之间的关联频数可以得到两关键词之间的量化联系。此时,为了避免组合向量的信息累加值过大,将wij进行归一化操作,在预测过程中,wij均初始化为1,同时为wij设置条件,只有当wij大于某一阈值时,才会触发关联机制,生成相应关联权重最大的关联性语句。归一化之后的权值与预备隐藏向量hij相乘并累加得到最终的hn,即作为编码结果的语义向量c。

所述内容将编码器语义向量通过注意力机制为输入的缺陷关键词分配权重的具体步骤如下:

(2.1)求解码器隐藏状态st′-1与编码器隐藏状态ht的关联度函数:将st′-1与ht进行拼接后输入到单隐藏层多层感知机变换的全连接网络中,再把全连接网络的输出经过softmax层得到注意力机制的权重分布:

a(s,h)=vttanh(wss+whh)

v、ws、wh为学习参数;

(2.2)求st′-1与ht的关联度得分et′t:et′t的计算取决于t时刻输入向量的隐藏状态ht和解码器中t′-1时刻的隐藏状态st′-1的关联度得分:

et′t=a(st′-1,ht);

(2.3)根据关联度得分分配注意力:设编码器在时间步t的隐藏状态为ht,且总时间步为n,则解码器在时间步t′的语义向量ct′为编码器中所有隐藏状态的加权平均:

对于解码器的时间步t′来说,权重αt′t是对应编码器各个时间步的概率分布,为了实现αt′t作为概率在[0,1]之间的值域,并且概率和为1,通过softmax函数进行归一化运算:

所述内容采用lstm解码器进行文本预测,通过输入门、遗忘门和输出门来控制隐藏状态中信息的流动的具体步骤如下:

(3.1)计算通过遗忘门、输入门、输出门和候选记忆细胞的信息:lstm三个门的输入均为上一时刻预测输出向量yt′-1、当前时刻经注意力机制计算后的ct′和上一时间步隐藏状态st′-1,假设隐藏单元的个数为n′,时间步t′的输入门为it′、遗忘门为ft′以及输出门ot′分别计算如下:

it′=σ(yt′-1wyi+st′-1wsi+ct′wci+bi)

ft′=σ(yt′-1wyf+st′-1wsf+ct′wcf+bf)

ot′=σ(yt′-1wyo+st′-1wso+ct′wco+bo)

其中,wyi、wyf、wyo和wsi、wsf、wso以及wci、wcf、wco是权重参数,bi、bf、bo为偏差参数,σ为sigmoid激活函数。

候选记忆细胞采用值域为[-1,1]的tanh函数作为激活函数:

(3.2)计算记忆细胞信息:信息在lstm中通过元素乘法⊙实现,即操作矩阵中对应的元素相乘。当前时间步记忆细胞ct′的计算融合了上一时间步记忆细胞和当前时间步候选记忆细胞的信息,并通过遗忘门和输入门来筛选信息:

(3.3)计算解码器隐藏状态:遗忘门控制上一时间步的记忆细胞ct′-1中的信息是否传递到当前时间步,而输入门则控制所有的输入向量通过候选记忆细胞如何进入当前时间步的记忆细胞,同时,输出门还筛选从记忆细胞到隐藏状态st′的信息:

st′=ot′⊙tanh(ct′)

因此,输出门的值决定了记忆细胞的信息流动去向,在极端情况下,若输出门为1,记忆细胞将完全输出给隐藏状态st′,若输出门为0,则记忆细胞的信息仍然保留在记忆细胞中;

(3.4)预测输出向量:预测的输出向量yt′为:

yt′=σ(st′wsq+bq)

此时输出的yt′为了能够运用到各词典对应的概率中,需要经softmax函数进行归一化,将yt′的值域控制在[0,1]的值域内。

为了工程监测中后续巡检报告的初步生成,保障巡检流程的规范化管理,本发明将缺陷作为关键词,使用语言模型生成与其语义相关的语句。在文本生成任务中,缺陷关键词之间的成因联系不可忽视。同时,为了有效控制本文语义,本发明在模型的解码器中需要添加对于输入关键词的权重分配机制,在输出预测文本时,突出与其相关度最高的关键词。

有益效果:本发明与现有技术相比具有以下优点:

1.在编码器部分,采用分解机模型改进编码器架构,分解机模型的特点是强化了词与词之间的组合关系,在缺陷关键词的编码过程中,突出了关键词之间的成因关联,增强了语义信息。

2.编码器负责生成连贯的语句,实现语言模型的完整预测。模型引入了注意力机制控制整体语义,精准对接编码器的隐藏状态序列,从而预测输出序列。

3.编码器内部采用长短期记忆网络,经遗忘门、输入门、记忆细胞和输出门控制信息流,解决了在处理长序列时,传统神经网络梯度消失的现象。

附图说明

图1为具体实施例中分解机编码-解码总体框架图;

图2为具体实施例中注意力机制示意图;

图3为具体实施例中经注意力机制分配语义向量后的lstm示意图;

图4为具体实施例中缺陷描述文本预测结果图。

具体实施方式

下面结合具体实施例,进一步阐明本发明,应理解这些实施例仅用于说明本发明而不用于限制本发明的范围,在阅读了本发明之后,本领域技术人员对本发明的各种等价形式的修改均落于本申请所附权利要求所限定的范围。

已知有某电站大坝安全巡检生产月报,数据总条数为7557字符,样本平均长度为18.4字符,词典长度为107字符。输入的关键词为“裂缝”、“混凝土剥落”、“碱性物析出”、“渗水”、“孔”这些缺陷特征中的一个或多个。根据词典把序列转化为id序列,约束样本的输出长度为30,在语句的头部增加起始字符“<s>”,在尾部增加结束字符“</s>”,对于不足30个词的样本,在尾部用“<pad>”字符对应的id补全。

图1给出了本发明提供的一种基于关键词的大坝缺陷图像描述文本生成方法的总体工作流程,具体实施如下:

(1)将分解机模型与rnn编码器相结合,计算各个时刻输入的不同缺陷关键词和两两关键词组合的隐藏状态。

(1.1)隐藏状态计算:定义时间步长为n-1的关键词输入集合为xt(x1,x2,…,xn-1),当前时刻输入为xt,ht是该时间步的隐藏变量,为了使所有前向序列对当前时间步t的输出序列产生影响,引入权重参数whh,该权重参数用来描述时间步t-1的隐藏层变量ht-1对ht的作用。时间步t的隐藏层变量:

ht=φ(xtwxh+ht-1whh+bh),

其中,wxh为xt的输入参数,whh为隐藏层参数,bh为隐藏层偏差参数,h为隐藏单元个数,为了使得前向时间步的序列对后向序列产生影响,隐藏变量ht将联合xt+1作为下一个时间步的输入,依次循环下去;

(1.2)分解机语义隐藏状态计算:当关键词集合的最后一项xn-1输入完成后,隐藏状态计算的隐藏变量为hn-1,此时,hn-1集合了所有缺陷关键词的语义信息。为了研究缺陷之间的关联与否,将输入序列中的所有大坝缺陷关键词两两组合,重新拼接成新的序列,如图1所示,在xij中计算预备隐藏向量hij:

hij=φ(xijwxh+hn-1whh+bij),

其中,wxh为xij的输入权重,whh为预备隐藏状态的权重,bij为偏置项;

(1.3)语义向量计算:最终包含关键词两两之间关联性的隐藏向量hn:

其中,wij为预备隐藏变量hij各自的权重参数。当训练集出现的两关键词的相关性语句,这两个关键词对应的权重累加1,因此,由训练集关键词之间的关联频数可以得到两关键词之间的量化联系。此时,为了避免组合向量的信息累加值过大,将wij进行归一化操作,在预测过程中,wij均初始化为1,同时为wij设置条件,只有当wij大于某一阈值时,才会触发关联机制,生成相应关联权重最大的关联性语句。归一化之后的权值与预备隐藏向量hij相乘并累加得到最终的hn,即作为编码结果的语义向量c。

(2)将编码器语义向量通过注意力机制为输入的缺陷关键词分配权重,控制缺陷描述文本语义,如图2所示。

(2.1)求解码器隐藏状态st′-1与编码器隐藏状态ht的关联度函数:将st′-1与ht进行拼接后输入到单隐藏层多层感知机变换的全连接网络中,再把全连接网络的输出经过softmax层得到注意力机制的权重分布:

a(s,h)=vttanh(wss+whh)

v、ws、wh为学习参数;

(2.2)求st′-1与ht的关联度得分et′t:et′t的计算取决于t时刻输入向量的隐藏状态ht和解码器中t′-1时刻的隐藏状态st′-1的关联度得分:

et′t=a(st′-1,ht);

(2.3)根据关联度得分分配注意力:设编码器在时间步t的隐藏状态为ht,且总时间步为n,则解码器在时间步t′的语义向量ct′为编码器中所有隐藏状态的加权平均:

对于解码器的时间步t′来说,权重αt′t是对应编码器各个时间步的概率分布,为了实现αt′t作为概率在[0,1]之间的值域,并且概率和为1,通过softmax函数进行归一化运算:

(3)采用lstm解码器进行文本预测,通过输入门、遗忘门和输出门来控制隐藏状态中信息的流动,减少传统循环神经网络梯度消失或梯度爆炸的现象。

(3.1)计算通过遗忘门、输入门、输出门和候选记忆细胞的信息:lstm三个门的输入均为上一时刻预测输出向量yt′-1、当前时刻经注意力机制计算后的ct′和上一时间步隐藏状态st′-1,如图3所示,假设隐藏单元的个数为n′,时间步t′的输入门为it′、遗忘门为ft′以及输出门ot′分别计算如下:

it′=σ(yt′-1wyi+st′-1wsi+ct′wci+bi)

ft′=σ(yt′-1wyf+st′-1wsf+ct′wcf+bf)

ot′=σ(yt′-1wyo+st′-1wso+ct′wco+bo)

其中,wyi、wyf、wyo和wsi、wsf、wso以及wci、wcf、wco是权重参数,bi、bf、bo为偏差参数,σ为sigmoid激活函数。

候选记忆细胞采用值域为[-1,1]的tanh函数作为激活函数:

(3.2)计算记忆细胞信息:信息在lstm中通过元素乘法⊙实现,即操作矩阵中对应的元素相乘。当前时间步记忆细胞ct′的计算融合了上一时间步记忆细胞和当前时间步候选记忆细胞的信息,并通过遗忘门和输入门来筛选信息:

(3.3)计算解码器隐藏状态:遗忘门控制上一时间步的记忆细胞ct′-1中的信息是否传递到当前时间步,而输入门则控制所有的输入向量通过候选记忆细胞如何进入当前时间步的记忆细胞,同时,输出门还筛选从记忆细胞到隐藏状态st′的信息:

st′=ot′⊙tanh(ct′)

因此,输出门的值决定了记忆细胞的信息流动去向,在极端情况下,若输出门为1,记忆细胞将完全输出给隐藏状态st′,若输出门为0,则记忆细胞的信息仍然保留在记忆细胞中;

(3.4)预测输出向量:预测的输出向量yt′为:

yt′=σ(st′wsq+bq)

此时输出的yt′为了能够运用到各词典对应的概率中,需要经softmax函数进行归一化,将yt′的值域控制在[0,1]的值域内。

对于训练过程而言,要保证每个条件概率最大,即损失函数为:

而对于预测过程而言,针对yt′转化后的向量中,将其中的最大值对应的词典中的词作为预测输出词向量。大坝缺陷描述文本生成结果如图4所示,模型能够根据关键词之间组合的关联性,学习到相关性文本,图中不仅能够生成“渗水”与“碱性物质析出”的相关语句,同时还能根据关键词组合语义生成两缺陷的关联性语句。通过生成的结果来对大坝进行及时处理与补救,从而是的大坝能够更好的安全运行。

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