NLP如何突破深度学习的能力边界?

 阿里云安全     |      2020-03-25 00:00:00

1. 背景

从本质上可以知道,语言就是一套逻辑符号,这意味着NLP处理的输入是高度抽象并且离散的符号,它跳过了感知的过程,而直接关注各种抽象概念,语义和逻辑推理。正是由于NLP涉及到高层语义、记忆、知识抽象以及逻辑推理等复杂的认知特性,导致基于数据驱动和统计学习的深度学习模型在NLP领域遇到了比较大的瓶颈。可以不夸张的说,NLP中复杂的认知特性已经完全超出了深度学习的能力边界。那如何打破这个魔咒,突破深度学习的能力边界,从而实现感知智能到认知智能的关键跨越呢? 这正是本文需要探索的原因所在,可能的一条出路就是通过对非结构化的数据(如业务的数据,产品的数据,行业领域的数据)进行整合和知识蒸馏,从而变成结构化的业务知识,结构化产品的知识,结构化的行业领域知识,在这些结构化的知识的基础上,再运用深度学习的模型进行推理,实现知识驱动,再进一步进阶到基于推理的驱动,这样就会形成结构化的知识推理引擎,从而提高整个智能系统的认知能力。那知识图谱就是将非结构的数据进行提炼归纳成结构化的知识的基础设施,图神经网络GNN就是在知识图谱基础设施上的推理模型。一句话概括就是:用不确定的眼光看待世界,再用确定的结构化知识来消除这种不确定性。

2.知识图谱

在介绍知识图谱之前,先得弄清楚什么是知识?知识是从大量有意义的数据中归纳总结出来的,是从有意义数据中压缩、提炼,从而形成有价值的规律。比如,天文学家日夜观察各种行星的位置,及对应的时间,这些都是观察的数据,但是牛顿从这些观察的数据中发现了万有引力定律,这就是知识。就像后来的天文学家运用牛顿的万有引力定律这个有价值的知识,发现了更多的未知星体和宇宙的奥秘,知识也将大大的加强智能系统的认知能力,也将使智能系统走向更深的未知领域。知识图谱就是对知识进行存储,表示,抽取,融合,推理的基础设施。

建设一个知识图谱系统,需要包括:知识建模、知识获取、知识融合、知识存储、知识模型挖掘和知识应用6大部分:

1、知识schema建模:构建多层级知识体系,将抽象的知识、属性、关联关系等信息,进行定义、组织、管理,转化成现实的知识库。

2、知识抽取:将不同来源、不同结构的数据转化成图谱数据,包括结构化数据、半结构化数据(解析)、知识标引、知识推理等,保障数据的有效性和完整性。

3、知识融合:由于知识图谱中的知识来源广泛,存在知识质量良莠不齐、来自不同数据源的知识重复、知识间的关联不够明确等问题,所以必须要进行知识的融合。知识融合是高层次的知识组织,使来自不同知识源的知识在同一框架规范下进行异构数据整合、消歧、加工、推理验证、更新等步骤,达到数据、信息、方法、经验以及人的思想的融合,形成高质量的知识库。

4、知识存储:根据业务特点以及知识规模选择合适的存储方式将融合后的知识进行持久化保存。

5、知识模型挖掘:知识的分布式表示学习,通过图挖掘相关算法进行知识推理出新知识,关联规则挖掘一些隐藏知识。

6、知识应用:为已构建知识图谱提供图谱检索、知识计算、图谱可视化等分析与应用能力。并提供各类知识运算的API,包含图谱基础应用类、图结构分析类、图谱语义应用类、自然语言处理类、图数据获取类、图谱统计类等等。

说这么多知识图谱的概念,可能这些概念有些抽象,这里给出一个实际的关务hscode领域的知识图谱的例子:

image.png

3.图神经网络GNN

知识图谱将按照欧式空间分布的的文本、图片、时间序列等数据进行归纳融合,提炼出了按照非欧空间的图结构来存储结构化知识。图结构的复杂性对传统的深度学习算法提出了重大挑战,主要是因为非欧空间的图结构数据是不规则的。每个图都有无固定数量的节点,同时图中的每个节点都有不同数量的邻居节点,这就导致传统深度学习的卷积操作不能在图结构上有效的计算。同时,传统深度学习算法的一个核心假设是样本实例彼此独立,如两张关于猫的图片是完全独立的。然而,对于图结构数据来说,情况并非如此,图中的节点通过边的连接信息,使节点之间有机的组合起来,从而天然构造了功能强大的结构性feature。另外,业界公认的传统的深度学习的一大软肋是无法有效的进行因果推理,只能进行某种意义上的统计相关性推理,这就大大降低了智能系统的认知能力。针对上述传统深度学习算法在图结构数据和因果推理上的天然软肋,业界最近兴起了针对图结构数据建模和因果推理的新方向-图神经网络GNN。

3.1 图卷积网络GCN基本原理

图卷积神经网络GCN是目前最重要的图神经网络,本文落地的图神经网络也是基于图卷积神经网络GCN。图卷积神经网络GCN本质上是基于Message-Passing的信息传递式的通用框架,是由多层的图卷积操作组成,每一个图卷积层仅处理一阶邻域信息,通过叠加若干图卷积层可以实现多阶邻域的信息传递。基于Message-Passing的图神经网络有以下三个基本公式构成:

image.png

image.png

image.png

对应的符号解释如下:

image.png

几乎所有的GNN模型的底层运行机制都是基于上述三个公式,只不过不同的AGGREGATE,COMBINE,READOUT的实现策略不同,导致演化成了GCN,GAT,GraphSAGE等不同类型的图神经网络。

3.2 图卷积网络GCN的AGGREGATE计算方式

图卷积网络GCN中的AGGREGATE是将GCN的每一层通过邻接矩阵A和特征向量 ,相乘得到每个顶点邻居特征的汇总,然后再乘上一个参数矩阵 , 加上激活函数σ,做一次非线性变换得到聚合邻接顶点特征的矩阵 。基本公式如下:

image.png

1.image.png 是图卷积网络GCN中第l层的特征向量,其中 image.png
是输入特征。

2.image.png 是图卷积网络GCN每一层的参数矩阵。

3.image.png 是图Graph的邻接矩阵加上每个图节点的自旋单位矩阵。

4.image.png 是图Graph邻接矩阵 image.png 的度矩阵。

上面是一般GCN的AGGREGATE策略,但是这样的AGGREGATE策略是的transductive learning的方式,需要把所有节点都参与训练才能得到图中节点的特征表示,无法快速得到新节点的特征表示。为了解决这个问题,参考文献[1]中的GraphSage利用采样(Sample)部分结点的方式进行学习,学习到K个聚合AGGREGATE函数,GraphSage的重点就放在了AGGREGATE函数的设计上。它可以是不带参数的