【NLP】语义角色标注(Semantic Role Labelling)

  • 2019 年 10 月 4 日
  • 筆記

作者:习翔宇

https://zhuanlan.zhihu.com/p/35789254

在自然语言处理中,从分析技术上可以分为下面三种

  • 词法分析 lexical analysis
  • 句法分析 syntactic parsing
  • 语义分析 semantic parsing

其中语义分析是指将自然语言句子转化为反映这个句子语义的形式化表达。例如

  1. 我吃了一块肉
  2. 一块肉被我吃了

在语义上都表示为吃(我,肉)的意思,但句子结构却有不同。

句子的语义分析是对句子处理技术更高一级的要求,在信息检索、信息抽取、自动文摘等应用广泛。

1. SRL定义

Semantic Role Labeling (SRL) is defined as the task to recognize arguments for a given predicate and assign semantic role labels to them.

语义角色标注是一种浅层语义分析技术,以句子为单位,分析句子的谓词-论元结构,其理论基础来源于Fillmore(1968)年提出的格语法,不对句子所包含的语义信息进行深入分析。具体来说,语义角色标注的任务就是以句子的谓词为中心,研究句子中各成分与谓词之间的关系,并且用语义角色来描述他们之间的关系。例如如下所示

SRL实例

这个句子中包括:

  1. 谓词 “发表”
  2. 施事 “奥巴马”
  3. 受事 “演说”
  4. 时间 “昨晚”
  5. 地点 “在白宫”

语义角色标注就是要针对句子中的(核心)谓词来确定其他论元以及其他论元的角色。

2. 语料及语义角色

英文的SRL数据集包括:

  1. FrameNet
  2. PropBank

汉语的SRL数据集较少,应用最多的是Chinese Proposition Bank(CPB)[1].

The goal of the Chinese Proposition Bank project is to create a corpus of text annotated with information about basic semantic propositions. Predicate-argument relations are being added to the syntactic trees of the Chinese Treebank.

其中成分包括三种:

  • 谓词是整个句子的核心词,一般是动词或者形容词;
  • 核心论元表示跟这个谓词直接相关的论元,用ArgN来表示,

  • Semantic Adjuncts表示不与谓词直接相关的论元,可独立存在,用ArgM-XXX来表示,例如时间、地点、目的、程度、范围等等;

SRL语义角色标签和含义如下所示

标记语料举例如下所示:

3. 传统SRL方法

传统SRL方法主要包括以下步骤:

其中:

  • 候选论元剪除指从句子中剪除掉不可能成为论元的词,通常采用基于规则的方法,例如遍历语法树、句法依存树等方法;
  • 论元识别,指从候选论元中识别出所有属于该谓词的论元,一般看作二值分类问题,采用SVM或者最大熵分类等方法;
  • 论元标注,指对识别出的论元赋予语义角色,一般看作多值分类问题;
  • 后处理,指对标注结果进行进一步处理,例如删除语义重复的论元等。

在论元识别和论元分类中,都是看作了分类问题来进行求解,在论元识别和论元标注中的特征往往不同,主要包括以下内容:

  • 谓词
  • 路径
  • 短语类型
  • 位置
  • 语态
  • 中心词
  • 从属关系
  • 论元的第一个和最后一个词
  • 组合特征
  • ……

传统SRL方法的不足包括以下内容:

  • Firstly, performances are heavily dependent on feature engineering, which needs domain knowledge and laborious work of feature extraction and selection. (性能依赖于特征工程,需要领域知识和大量的特征提取工作)
  • Secondly, although sophisticated features are designed, the long-range dependencies in a sentence can hardly be modeled. (没有特征能够表示长距离的依赖关系)
  • Thirdly, a specific annotated dataset is often limited in its scalability, but the existence of heterogenous resource, which has very different semantic role labels and annotation schema but related latent semantic meaning, can alleviate this problem. However, traditional methods cannot relate distinct annotation schemas and introduce heterogeneous resource with ease.(无法引入异构资源来解决数据不足的问题)

4. 基于深度学习的SRL方法

在深度学习占领了自然语言处理领域之后,基于深度学习的SRL方法也得到了广泛应用且效果良好。

例如Zhen Wang[2]等人提出了采用双向RNN的方法来进行中文语义角色标注,网络结构如下所示:

Feng Qian[3]提出将dependency tree structure通过architecture engineering的方法(而非feature engineering的方法)放入到LSTM cell中,能够充分利用句子的句法依存结果提高结果,网络结构如下所示。

Reference

  • http://verbs.colorado.edu/chinese/cpb/
  • Wang Z, Jiang T, Chang B, et al. Chinese semantic role labeling with bidirectional recurrent neural networks[C]//Proceedings of the 2015 Conference on Empirical Methods in Natural Language Processing. 2015: 1626-1631.
  • Qian F, Sha L, Chang B, et al. Syntax Aware LSTM model for Semantic Role Labeling[C]//Proceedings of the 2nd Workshop on Structured Prediction for Natural Language Processing. 2017: 27-32.