Attention-Based Convolutional Neural Network for Semantic Relation Extraction
基于注意力机制的卷积神经网络用于语义关系提取
摘要
我们设计了一种全新的基于注意力机制的卷积神经网络结构旨在解决关系分类问题。该模型主要依赖于单词嵌入、词性标注嵌入以及位置嵌入等技术。该机制能够更有效地识别对两个实体关系有重要影响的部分。该体系架构能够在特定任务标记数据的支持下提取关键特征,并无需额外依赖复杂的外部知识。与现有最先进的神经网络模型相比,我们的模型展现出超越其效果的同时,在特征工程方面实现了更为高效的应用。
1.引言
在多种自然语言处理领域中,关系分类扮演着至关重要的角色,并逐渐成为研究热点之一。基于机器学习的方法已被提出用于该任务,在这一过程中主要基于不同特征或内核函数的设计上取得了显著成果。
2.Related Works
各种学习范例已被广泛应用于关系抽取领域。如前所述,在监督范式中表现良好的监督方法在该任务中展现出色效果。在监督框架下,关系分类被视为一个多分类问题,在这一过程中研究人员致力于提取复杂的特征无论是基于分布表示还是基于核函数的方法均已被提出。(Kambhatla, 2004;Suchanek等人, 2006)将分类提示(如序列与解析树)转化为特征空间。(钱等人, 2008;穆尼与布尼斯库, 2005)提出了卷积树核;(布尼斯库与穆尼, 2005)提出了子序列核以及依赖树核等多种内核方法以解决关系分类问题。(Plank与Moschitti, 2013)除了仅考虑 结构信息 外 还引入了 语义信息 到内核设计中 这一做法虽能提升性能 但因需人工标注而限制了其广泛应用 (为远程监管提供了新的动力)。
3 Methodology
给定一组 句子 (x₁,x₂,…xₙ)以及两个对应的 实体 ,该模型评估各关系发生的可能性。其中所提出的体系架构如图1所示。在这一过程中 ,特征提取 是主要组成部分 ,主要由 句子卷积 模块与 注意力机制辅助的选择模块 构成 。经过特征提取后 ,分别生成了两种表示:一种是基于 句子卷积 的向量表示;另一种是基于注意力机制辅助的选择向量表示
- Sentence convolution: Given a sentence and two target entities, the convolutional neural network (CNN) is used to encode the sentence's distributed representation.
- Contextual selection based on attention mechanisms: We employ word-level attention to select related words that are most relevant to the target entities.
3.1 Sentence Convolution
3.1.1 Input of Model
Word Embeddings:
图2展示了我们所设计的卷积神经网络架构。在"词表示层"中,每个输入标记词通过查找预定义词向量被转换为高维空间中的点。(Collobert等人, 2011)研究表明,在大量未标注数据集上学习获得的词向量优于随机初始化策略所得结果。尽管训练这些词向量通常耗时较长但仍有多个开源资源可供获取无需额外付费。本研究未涉及现有词向量间的对比分析因超出当前研究范畴而略过不谈。我们的实验基于CBOW模型在Google News提供的海量数据上实现了具有千万级别规模的标准预训练词向量(Mikolov等人, 2013)。

Position Embeddings:
在关系抽取任务中,在确定实体之间的关系时,靠近目标实体的词通常更具信息性。类似于(Zeng等人,2014),我们使用由实体对指定的位置嵌入。它可以帮助CNN跟踪每个单词离头部或尾部实体有多近,头部或尾部实体被定义为当前单词到头部或尾部实体的相对距离的组合。比如,
“The game was sealed in the original packing unopened and untouched.”
在这个句子中,从单词“sealed”到头部实体“game”的相对距离是2,尾部实体“packing”是-4。根据上面的规则,我们可以得到上面句子中的每个单词到每个实体的相对距离。我们首先创建实体e1和实体e2的两个相对距离文件。然后,我们使用CBOW模型分别对两个相对距离文件进行位置嵌入预处理(Mikolov等人,2013)。位置嵌入的维度设置为5。
Part-of-speech tag Embeddings.
我们的词嵌入是从谷歌新闻语料库中获得的,这与关系分类语料库略有不同。我们通过将每个输入单词与它的位置标签联合来处理这个问题,以提高鲁棒性。在我们的实验中,我们只考虑使用一个粗粒度的位置类别,包含15个不同的标签。我们使用斯坦福语料库工具获得词性标注(曼宁等人,2014)。然后我们用基于内容的学习模型对标记进行嵌入预处理,词性标记嵌入的维数设置为10。最后,我们连接每个单词的单词嵌入、位置嵌入和词性标记嵌入,并将其表示为序列的向量 w = [W F, pF, POSF]。
3.1.2 Convolution, Max-pooling and Non-linear Layer
在关系抽取任务中存在一个主要难题即句子_长度_呈现_可变性_重要信息则可能分布在各个位置因此我们应尝试将所有局部特征进行整合并完成整体关联预测为此我们采用了卷积层这一模型架构选择了一个滑动窗口机制用于从句子中提取局部特征具体而言该滑动窗口具有固定大小设定为3其作用是通过逐一扫描整个句子来识别出每个窗口内的关键信息

3.2 Attention-based Context Selection
注意力模型被应用于一种完全不同的场景,它由不同的对象组成,即一个句子和两个实体。因此,我们试图让我们的模型能够确定句子的哪些部分对两个标注的实体最有影响 。
例如
“That coupled with the death and destruction caused by the storm was a very traumatic experience for these residents.”.
Here, the type of relation is “Cause-Effect(e2,e1)”.
在这句话中,非实体词“caused”在确定“Cause-Effect”关系时具有特殊的意义。幸运的是,我们可以利用“caused”和“death”之间存在显著联系的事实。我们引入一个单词注意机制 来定量地模拟单词相对于目标实体的上下文相关性。
为了计算句子中每个单词的权重 ,我们需要将句子中的每个单词和每个实体馈送到多层感知器**(MLP)**。注意力权重计算的网络结构如图3 (a)所示。
假设每个句子都包含T个单词。wit ,其中t∈[1,T]代表第i句中的单词。eij with j ∈ [1,2]表示第i句中的第j个实体。我们将实体eij和单词wit的表示连接起来,得到单词t的新表示,即hj it= [wit,eij]。uj量化了第i个句子中第j个实体与第t个单词的相关程度。这个相关性得分函数由单词wit和实体eij的各自嵌入之间的MLP网络来计算。我们把关联度命名为单词注意权重,即uj it。
uj的计算程序如下:

MLP注意力网络的输出为u_j。通过应用softmax函数我们可以获得归一化后的重要系数\alpha_j

推荐遵循基于注意力机制层的架构设计(如图3(b)所示)。随后,我们通过以下步骤进行:首先,在给定输入句子i的情况下,计算其组成部分S_{i,j};该组成部分由以下加权方式构成:对于每个位置k∈1到n,在该位置处赋予权重α_{i,j,k};这些权重α_{i,j,k}则根据对应的词间关系矩阵M中的相应元素m_{k,l}进行归一化处理以获得最终结果S_{i,j}

上下文向量sij可以被视为一种用于检索信息的高级表示形式。值得注意的是,在注意力机制中所涉及的所有权重参数都是预先随机初始化并随后在整个训练过程中协同进化以优化模型性能
3.3 MLP layer
随后我们可以得到三个网络各自的输出结果,并包含卷积网络的结果以及两个实体相关的句子上下文向量
3.4 Model Trainning
该模型基于注意的转换神经网络架构被命名为关系分类模型,并可简称为参数向量θ。此条件概率p(i|x, θ)可通过将所有关系类型施加softmax运算来实现。

给出所有的T训练例子(x(I);y(i)),然后我们可以将参数的对数似然记下如下:

为了确定网络参数θ,在本研究中我们采用随机梯度下降方法以最大化对数似然函数J为目标进行优化运算。其中参数θ被随机初始化为初始值,并通过实现反向传播算法以根据训练数据逐步调整模型权重以达到最佳拟合效果的目的

