本发明涉及计算机视觉领域,尤其是涉及了一种基于对象检测器和递归神经网络的统一图解析网络。
背景技术:
在十年之内,在经典视觉问题上的表现,如图像分类、对象检测和分割,由于使用了深度学习框架得到很大程度的进步。鉴于深度学习对于这种低级视觉问题的巨大成功,下一步可能是理解图像,生成语义,比如对象之间的关系等。图像理解可以用于电视电话、电视会议等需要传输图像的应用中,在基于理解基础上的压缩可以大大减少需传输的图像数据。对航空遥感和卫星遥感图片的分析和理解,可用于对地质、矿产、森林、水利、海洋、农业等资源的调查和研究,进行自然灾害的预测和预报、环境的污染监测、气象分析,以及军事目标的识别。利用图像理解可以自动识别信件、包裹等的邮编、地址等信息,从而进行自动分检和归类。然而目前对于图像理解及语义生成的方法有几个限制:第一,将分离的方法连接起来导致从输入到输出要经过一个长的传输管道,这可能导致累积的错误,并丢失图表中的语境;第二,更重要的是,一般的循环神经网络(rnn)不能完全处理图形结构的信息。
本发明提出了一种基于对象检测器和递归神经网络的统一图解析网络,首先利用一个对象检测器检测图像中的对象,接着通过图推断预测顶点之间边的存在,并使用一个动态图生成网络在线构造二向图,并从相邻的边聚合信息,然后通过端到端的方式对网络进行训练,最后处理生成的关系信息,以进一步生成知识句。本发明解决了以往输入到输出路径过长导致错误累积、图表中的语境丢失等问题,同时能够充分处理图像中的信息,优化完成后,还可以用于解决问题回答等基于语言的问题。
技术实现要素:
针对现有的技术在图像理解上容易出错或丢失语境而且不能完全处理图像信息的问题,本发明提出了一种基于对象检测器和递归神经网络的统一图解析网络,首先利用一个对象检测器检测图像中的对象,接着通过图推断预测顶点之间边的存在,并使用一个动态图生成网络在线构造二向图,并从相邻的边聚合信息,然后通过端到端的方式对网络进行训练,最后处理生成的关系信息,以进一步生成知识句。
为解决上述问题,本发明提供一种基于对象检测器和递归神经网络的统一图解析网络,其主要内容包括:
(一)解析图的组成;
(二)动态图生成网络;
(三)多任务训练;
(四)级联推理。
其中,所述的所述的解析图的组成,是使用大对象(独立物体)、文本、箭头和箭尾来定义物体。
其中,所述的动态图生成网络,通过图推断来预测一对顶点之间的边的存在,从而对图中对象的关系匹配进行了预测,图的节点和边分别与对象和对象之间的关系相对应,因此,关系图用一个双向图来描述:
g=(v,e)(1)
其中v=x∪y表示成对互斥的顶点集合
进一步地,所述的双向图,其构造过程为复制被检测到的对象o为ox和
进一步地,所述的dggn方法,结合了图论中的邻接矩阵,它主要用于通过图形的已知结构来传播信息,然而,由于邻接矩阵是未知的,因此引入一个动态内存组件来估计这个邻接矩阵,它包含节点之间的连接信息,并且将二维的邻接矩阵扩展到三维存储器;动态邻接张量内存(datm)
进一步地,所述的张量d的检索步骤,过程为获取以前的隐藏状态
其中,ak,i表示矩阵a的(i,j)元素,
进一步地,所述的张量d的更新步骤,其过程为使用一个m+1长度的向量来更新单元dij,它将输出at和gru单元的隐藏状态ht连接起来:
at=σ(wlht+bt)(7)
di,j=[at,ht](8)
其中σ(·)是一个s形函数,为了获得隐藏状态
其中,所述的多任务训练,其过程是统一图解析网络(udpnet)是通过端到端方式进行训练的,因为udpnet由两个分支组成(基于单次检测器的对象检测和dggn的图形生成),本质上,这是一个多任务学习问题,因此,每个分支的不同损失被合并到总体损失l中,如下所列:
l=αlc+βll+γlr(9)
总体损失是分类损失lc,对象检测分支的位置回归损失ll,以及图生成网络的关系分类损失lr的加权和;正如在原始的单次检测器(ssd)中定义的那样,分类损失lc是对多个类的信任度的损失函数,而位置回归损失ll则是预测框和参考框之间的平滑的l1损失,关联分类损失lr是两个相邻或不相邻的类之间的损失函数;为了更快的收敛,首先预先训练对象检测分支,然后用整体损失对这两个分支进行微调。
进一步地,所述的训练对象检测分支,其特征在于,制定了一套策略来匹配候选项对和参考标签,首先,假设对象检测分支检测到n个对象,那么就生成n2对关系候选项,对于每个关系候选来说,两个集合的交集是均等的,每个集合都在一个被检测到的对象和最近的参考标签之间计算过;然后每一个参考关系都与最好的重叠关系候选相匹配,考虑到不同图中检测到的对象数量的不平衡,从每个训练图中抽取相同数量的关系候选对象。
其中,所述的级联推理,其过程是首先检测到图表中的对象,然后应用交并比(iou)阈值为0.45的非最大抑制(nms)在分数高于0.01的候选项集合上,与训练不同的是,使用被检测到的所有候选项集合来为下一个分支生成候选配对,接着将图形生成分支应用于所有关系候选对象,以推断彼此之间的关系;最后,可以得到一个由相邻的置信度评分高于0.1的节点组成的图;在图推断之后,可以处理生成的关系信息,以进一步生成知识句,这可以作为问题回答模型的输入。
附图说明
图1是本发明一种基于对象检测器和递归神经网络的统一图解析网络的系统流程图。
图2是本发明一种基于对象检测器和递归神经网络的统一图解析网络的dggn和一般gru的对比图。
图3是本发明一种基于对象检测器和递归神经网络的统一图解析网络的dggn的检索和更新。
具体实施方式
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互结合,下面结合附图和具体实施例对本发明作进一步详细说明。
图1是本发明一种基于对象检测器和递归神经网络的统一图解析网络的系统流程图。主要包括解析图的组成,动态图生成网络,多任务训练,级联推理。
解析图的组成时使用大对象(独立物体)、文本、箭头和箭尾来定义物体。
多任务训练的过程具体地说是统一图解析网络(udpnet)是通过端到端方式进行训练,因为udpnet由两个分支组成(基于单次检测器的对象检测和dggn的图形生成),本质上,这是一个多任务学习问题,因此,每个分支的不同损失被合并到总体损失l中,如下所列:
l=αlc+βll+γlr(1)
总体损失是分类损失lc,对象检测分支的位置回归损失ll,以及图生成网络的关系分类损失lr的加权和;正如在原始的单次检测器(ssd)中定义的那样,分类损失lc是对多个类的信任度的损失函数,而位置回归损失ll则是预测框和参考框之间的平滑的l1损失,关联分类损失lr是两个相邻或不相邻的类之间的损失函数;为了更快的收敛,首先预先训练对象检测分支,然后用整体损失对这两个分支进行微调。
训练对象检测分支时制定了一套策略来匹配候选项对和参考标签,首先,假设对象检测分支检测到n个对象,那么就生成n2对关系候选项,对于每个关系候选来说,两个集合的交集是均等的,每个集合都在一个被检测到的对象和最近的参考标签之间计算过;然后每一个参考关系都与最好的重叠关系候选相匹配,考虑到不同图中检测到的对象数量的不平衡,从每个训练图中抽取相同数量的关系候选对象。
级联推理首先检测到图表中的对象,然后应用交并比(iou)阈值为0.45的非最大抑制(nms)在分数高于0.01的候选项集合上,与训练不同的是,使用被检测到的所有候选项集合来为下一个分支生成候选配对,接着将图形生成分支应用于所有关系候选对象,以推断彼此之间的关系;最后,可以得到一个由相邻的置信度评分高于0.1的节点组成的图;在图推断之后,可以处理生成的关系信息,以进一步生成知识句,这可以作为问题回答模型的输入。
图2是本发明一种基于对象检测器和递归神经网络的统一图解析网络的dggn和一般gru的对比图。
动态图生成网络dggn通过图推断来预测一对顶点之间的边的存在,从而对图中对象的关系匹配进行了预测,图的节点和边分别与对象和对象之间的关系相对应,因此,关系图用一个双向图来描述:
g=(v,e)(2)
其中v=x∪y表示成对互斥的顶点集合
构造双向图时先复制被检测到的对象o为ox和
dggn方法结合了图论中的邻接矩阵,它主要用于通过图形的已知结构来传播信息,然而,由于邻接矩阵是未知的,因此引入一个动态内存组件来估计这个邻接矩阵,它包含节点之间的连接信息,并且将二维的邻接矩阵扩展到三维存储器;动态邻接张量内存(datm)
图3是本发明一种基于对象检测器和递归神经网络的统一图解析网络的dggn的检索和更新。
检索时先获取以前的隐藏状态
其中,ak,i表示矩阵a的(i,j)元素,
更新时使用一个m+1长度的向量来更新单元dij,它将输出at和gru单元的隐藏状态ht连接起来:
at=σ(wlht+bt)(8)
di,j=[at,ht](9)
其中σ(·)是一个s形函数,为了获得隐藏状态
对于本领域技术人员,本发明不限制于上述实施例的细节,在不背离本发明的精神和范围的情况下,能够以其他具体形式实现本发明。此外,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围,这些改进和变型也应视为本发明的保护范围。因此,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。