语义分析是自然语言处理(Natural Language Processing, NLP)领域中的一项基础任务, 是自然语言理解的基础. 在统计机器翻译[1]、信息抽取[2]、自动问答[3]和计算机辅助评估[4]等下游任务中, 通过语义分析获取句子级别上的丰富的语义信息, 推动自然语言处理领域的发展.
汉语文章中有2/3的句子是复句, 因而复句在现代汉语中占十分重要的地位. 复句通常由两个及两个以上意义密切相关的分句组成. 关系词(也称关系标记)是用来连接各个分句构成复句的语法成分, 但在汉语复句中, 分句中的关系词可以部分省略或全部省略[5].
关系词非充盈态复句是指关系词在分句中没完全显式出现的复句. 复句的关系类别是指两个分句之间语义关系类别, 一个含有多个分句的复句可以划分为多个含两个分句式的复句. 因此, 本文选取含有两个分句的二句式复句作为研究对象.
二句式复句定义为一个二元组
非充盈态复句满足: (r(c1)=Φ∧r(c2)≠Φ)∨(r(c1) ≠Φ∧r(c2) =Φ)
复句的类别与关系词搭配有很强的关系, 一个关系词与不同的关系词搭配, 构成不同的类别. 例句1中, 关系词“既”与“也”搭配, 复句关系类别为并列关系. 例句2中, 关系词“如果”与“也”搭配, 类别为因果关系. 对于一个每个分句的关系词显式出现的充盈态复句, 根据关系词搭配的可以判断出对应的类别. 对于例3, 例4和例5, 仅分句2中出现关系词‘也’, 对这样的关系词非充盈态复句, 无法根据关系词的搭配直接判断复句的类别.
例1: 这种电话既是用于紧急情况下的报警, 也用于遇到一般困难时的求助.
例2: 如果技术掌握得当, 阔叶树移栽也有成功的实例.
例3: 当我的独创产品成为世界一流时, 我也自然而然跻身于世界强人之列.
例4: 他听课, 也不打声招呼.
例5: 条件不同, 面临的任务也不同.
1 相关工作对于复句关系类别识别的方法分为两类, 第一类是借助关系词识别和关系词搭配的研究分析复句的语义关系. Huang HH等基于半监督学习方法探索关系标记的概率分布, 发现成对的关系词连用对分析篇章的语义关系起到的强提示[6]. 胡金柱、舒江波等将词性和关系标记搭配理论相结合, 提出正向选择算法用于关系词识别[7]. 胡金柱、陈江曼等分析了关系词连用情况, 提出一种连用关系词识别算法[8]. 胡金柱、胡泉等对在关系词识别过程中的规则解析算法进行了研究, 提出了包含匹配算法[9].
第二类是结合句法树的词法、句法特征, 采用机器学习的方法识别复句关系类别. 李艳翠、孙静等基于已标注的清华汉语树库, 采用最大熵、决策树和贝叶斯方法判断准关系词是否为关系词以及复句关系类别的识别[10]. 周文翠和袁春风[11]选取主语、谓语等相关特征, 使用支持向量机模型识别并列复句. 杨进才、陈忠忠等结合汉语复句的句法理论和分句间的语义信息, 提出了基于语义相关度的非充盈态的二句式复句关系类别识别[12]. Huang HH等利用决策树算法提取词性、句子长度、关系标志特征, 来识别汉语句子间的因果、并列关系[13].
上述方法需要依赖良好的语言学知识, 通过人工总结规则以及发掘特征, 不利于发现隐藏的特征, 影响识别系统的自动化.
本文以复句整体为处理对象, 在神经网络模型中输入关系词特征, 以自动地从复句分句中发现与关系词相关的蕴含的语义关系特征.
2 方法 2.1 复句分类体系汉语复句关系分类体系很多, 著名汉语语言学家邢福义先生的复句关系“三分系统”[5]是目前广泛使用的主流的分类体系. 三分系统将复句分成因果、并列、转折3大类, 其中每一大类又分成多个小类(如表1 所示).
R<c1
使用的Shallow CNN模型结构如图1所示. 首先, 利用查询词表, 提取词对应的词向量, 将整个复句转换成句子向量并将其作为卷积层的输入[14]; 同时, 将关系词特征输入到我们的模型中. 经过卷积和maxpooling操作, 不同窗口大小的滤波器获取不同的特征映射, 最后这些特征连接起来, 作为全连接层和Softmax层的输入, 输出各个类别概率分布.
2.3 词向量的获取
一个关系词在不同的语境下, 对应的复句关系类别可能不同, 关系词与类别是一对多的关系. 经过对大规模地语料统计, 我们考察了关系词在关系类别、词性、搭配情况以及在搭配中处于前呼还是后应等属性, 统计了499个准关系词的上述特征属性, 构建关系词库.
图2展示的是部分关系词与复句关系类别的对应. 根据关系表采用onehot离散化每一个词, 得到每一个词对应的关系向量, Rri∈Rl中(其中l是关系类别数), 若用Xi∈Rk表示每个词在预训练词向量中对应的向量, 则每个词对应的特征向量记为Yi:
$ {Y_i} = Xr \oplus {R_{ri}} $ |
一个长度为n的句子表示为:
$ {Y_{1:n}} = {Y_1} \oplus {Y_2} \oplus \cdots \oplus {Y_n} $ | (1) |
其中, ⊕是连接操作, 用Yi:i+j代表特征Yi, Yi+1,···,Yi+j之间的拼接操作.
2.4 卷积核最大池化操作卷积操作是滤波器w∈Rnk, 一个大小为h个单词的窗口的滤波器产生新特征. 例如, 一个特征ci是由大小为Yi:i+h–1的窗口生成的. 句子级的特征向量利用滤波器矩阵[W1, W2,···, Wn–h+1]进行卷积操作生成, 这些句子级的向量被转化为特征映射:
$ {c_i} = \left[ {relu\left( {W \cdot {Y_{1:h}} + b} \right), \cdots ,relu\left( {W \cdot {Y_{n - h + 1}} + b} \right)} \right] $ | (2) |
这里的下标[i+h–1]表示卷积窗口的始末下标. 此外, 在embedding层和滤波器矩阵之间应用卷积操作, 即利用不同窗口大小的卷积核作用于整个句子, 以获取不同的特征映射表示, 得到复句的不同特征表示. 接下来, 在上一步得到的特征映射中使用max-pooling操作[15], 即
在特征
$ v = {\hat c^1} \oplus {\hat c^2} \oplus \cdots \oplus {\hat c^h} $ | (3) |
然后将得到的特征通过全连接层Softmax, 输出最终的概率分布.
2.6 模型训练在训练过程中, 我们有两种类型的词向量: 一种是直接通过训练数据训练词向量, 另一种是结合关系词特征得到的词向量.
CNN网络训练是基于梯度的Adadelta优化器 [16] 和反向传播算法[17]. 同时, 我们结合了early stopping[18]和dropout[19]来防止过拟合.
交叉熵函数用来证明可以加速反向传播算法, 提供良好的网络性能和相对较短的停滞期, 尤其对分类任务[20]. 为了构建目标函数, 应该考虑交叉熵损失函数和L2正则化项. 我们使用ReLU作为模型的激活函数, 可以产生与Sigmoid函数接近的结果, 而ReLU不存在指数计算, 求导计算量小, 且收敛得更快, 同时缓解了过拟合的情况. 模型参数调节列表如表2所示.
3 实验与分析 3.1 数据集汉语复句语料库(the Corpus of Chinese Compound Sentence, CCCS), 可访问
3.2 实验对比与分析
决策树算法(C5.0)[13]: 作为传统机器学习模型的代表, 在各种分类问题上取得不错的效果. 本次对比的对象中, Huang HH等使用了词性、句子长度和关系连接词等特征, 用C5.0模型训练.
Semantic_relevance模型[12] : 该模型是基于汉语复句语义相关度计算, 主要考虑了词语共现、关系词搭配距离、词间距等因素. 根据计算结果判别复句语义关系类别.
我们进行了3个实验, 第1个是预训练词向量作为CNN模型的输入; 第2个实验在CNN中引入外部知识, 加入了关系词特征, 得到融合模型FCNN; 第3个是对比实验, 与文献[13]中, Huang HH等用决策树算法进行的汉语句子的关系分类进行对比. 此外, 我们也进行了是否使用停用词表(停用词表不包括所有的关系词)的对比实验, 实验结果表明其对结果影响很小, 几乎可以忽略不计.
表4的结果显示, Shallow CNN比文献[12]和文献[13]中的方法在正确率分别高出5.16%和1.96%, 说明神经网络利用词向量能够捕获基本的词法、语义相似度一些信息. Shallow CNN通过卷积运算自动学习词法方面的特征, 将低级特征组合成高级特征, 得到整个复句的语义表示; 同时使用max池化操作捕获复句关系词特征, 对复句的关系类别识别起到显著的作用.
4 讨论
为了保证实验结果的公平, 所有模型使用的是同一数据集. 表5分别展示了C5.0、shallow CNN和FCNN 模型在Precision、Recall和Macro-F1不同的表现结果.
结果表明, 相比较于C5.0, Shallow CNN和FCNN在Macro-F1上高出16.84%以上, 这表明我们的方法在复句关系分类方面要好于C5.0算法. C5.0算法是决策树算法的一种, 该算法需要人工构建特征, 分析分句之间的语言学特征比如词性、关系连接词等, 从而构建对应的特征矩阵. 因此, 特征的选取对C5.0算法起到关键的作用, 而特征的好坏依赖于语言学知识和规则的总结. 本文提出的Shallow CNN模型直接利用CNN做特征提取, 得到句子的特征表示. 值得一提的是, FCNN在Shallow CNN的基础上加了关系词特征, 它在召回率和Macro-F1上比Shallow CNN好, 分别提高了2.36%和0.32%, 这表明关系词提供了一些有利于复句关系类别分类的信息. FCNN模型融合关系词与关系类别之间映射关系这一特征, 首先CNN利用embedding层获取复句的语义特征表示, 然后融合对关系类别识别起到关键作用的关系词特征, 进一步强化神经网络自动学习该特征, 从而更加高效地识别关系类别.
我们对标识结果进行统计分析, 发现FCNN模型不仅对于一个关系词对应单种关系类别的识别效果好, 并且对于像“也”这样的关系词, 它对应多个关系类别(如图2所示), FCNN也要比Shallow CNN的识别效果要好. 对于文中的例句, FCNN能够识别出例3是并列关系, 例4是转折关系, 例5是因果关系. 模型中融合了关系词特征, 从侧面说明了关系词特征对复句类别的识别起到了提示作用.
我们进一步分析使用预训练词向量初始化的影响. 如图3所示, 相比较于使用(–1,1)的均匀分布初始化词向量, 而使用训练语料初始化词向量的Micro-F1值大约提高了24%.
依据上述分析, 一方面, 基于特征的方法会很大程度地依赖特征提取的质量, 并且耗时耗力; 另一方面, 特征提取又需借助于NLP解析工具, 这也会带来解析工具已经存在的传播误差, 影响系统性能. 因此, Shallow CNN和融合特征的FCNN, 减少对先验的语言学知识和大量的手动提取的特征的依赖, 总体上要优于传统的机器学习的方法.
5 总结本文中, 我们利用卷积神经网络模型学习了两个分句之间有效的关系表示, 进一步训练Shallow CNN分类器, 更好地处理复句的两个分句的语义关系, 并且该模型对复句的关系分类是简单高效的. 当加入关系词特征时, 系统的效果得了提升, 我们模型已远远优于仅依赖手动提取特征的模型. 自动学习特征能得到很好的结果, 可用于替代利用语言学知识和现有的NLP工具设计的特征.
在接下来的工作中, 我们将重点探索无标复句的关系类别识别. 并在依存句法树上构建神经网络模型, 融合更丰富的语法与结构特征[21].
[1] |
Meyer T. Disambiguating temporal-contrastive discourse connectives for machine translation. Proceedings of the ACL 2011 Student Session. Stroudsburg, PA, USA. 2011. 46–51.
|
[2] |
Huttunen S, Vihavainen A, Yangarber R. Relevance prediction in information extraction using discourse and lexical features. Proceedings of the 18th Nordic Conference of Computational Linguistics (NODALIDA 2011). Riga, Latvia. 2011. 114–121.
|
[3] |
Sun MY, Chai JY. Discourse processing for context question answering based on linguistic knowledge. Knowledge-Based Systems, 2007, 20(6): 511-526. DOI:10.1016/j.knosys.2007.04.005 |
[4] |
Mohler M, Bunescu R, Mihalcea R. Learning to grade short answer questions using semantic similarity measures and dependency graph alignments. Proceedings of the 49th Annual Meeting of the Association for Computational Linguistics. Stroudsburg, PA, USA. 2011. 752–762.
|
[5] |
邢福义. 汉语复句研究. 北京: 商务印书馆, 2001.
|
[6] |
Huang HH, Chang TW, Chen HY, et al. Interpretation of Chinese discourse connectives for explicit discourse relation recognition. Proceedings of COLING 2014, the 25th International Conference on Computational Linguistics: Technical Papers. Dublin, Irelan. 2014. 632–643.
|
[7] |
胡金柱, 陈江曼, 杨进才, 等. 基于规则的连用关系标记的自动标识研究. 计算机科学, 2012, 39(7): 190-194. DOI:10.3969/j.issn.1002-137X.2012.07.043 |
[8] |
胡金柱, 胡泉, 舒江波. 复句关系词自动识别中规则解析的包含匹配算法研究. 华中师范大学学报(自然科学版), 2014, 48(5): 643-649. |
[9] |
胡金柱, 舒江波, 胡泉, 等. 复句关系词自动识别中规则的表示方法研究. 计算机工程与应用, 2016, 52(1): 127-132. DOI:10.3778/j.issn.1002-8331.1401-0214 |
[10] |
李艳翠, 孙静, 周国栋, 等. 基于清华汉语树库的复句关系词识别与分类研究. 北京大学学报(自然科学版), 2014, 50(1): 118-124. |
[11] |
周文翠, 袁春风. 并列复句的自动识别初探. 计算机应用研究, 2008, 25(3): 764-766. DOI:10.3969/j.issn.1001-3695.2008.03.034 |
[12] |
杨进才, 陈忠忠, 沈显君, 等. 二句式非充盈态有标复句关系类别的自动标志. 计算机应用研究, 2017, 34(10): 2950-2953. DOI:10.3969/j.issn.1001-3695.2017.10.016 |
[13] |
Huang HH, Chen HH. Contingency and comparison relation labeling and structure prediction in Chinese sentences. Proceedings of the 13th Annual Meeting of the Special Interest Group on Discourse and Dialogue. Stroudsburg, PA, USA. 2012. 261–269.
|
[14] |
LeCun Y, Bottou L, Bengio Y, et al. Gradient-based learning applied to document recognition. Proceedings of the IEEE, 1998, 86(11): 2278-2324. DOI:10.1109/5.726791 |
[15] |
Collobert R, Weston J, Bottou L, et al. Natural language processing (almost) from scratch. The Journal of Machine Learning Research, 2011, 12: 2493-2537. |
[16] |
Zeiler MD. ADADELTA: An adaptive learning rate method. arXiv: 1212.5701, 2012.
|
[17] |
Rumelhart DE, Hinton GE, Williams R. Learning representations by back-propagating errors. Cognitive Modeling, 1988, 5(3): 1. |
[18] |
Caruana R, Lawrence S, Giles L. Overfitting in neural nets: Backpropagation, conjugate gradient, and early stopping. Proceedings of the 13th International Conference on Neural Information Processing Systems. Cambridge, UK. 2001. 381–387.
|
[19] |
Srivastava N, Hinton G, Krizhevsky A, et al. Dropout: A simple way to prevent neural networks from overfitting. The Journal of Machine Learning Research, 2014, 15(1): 1929-1958. |
[20] |
Turian J, Ratinov L, Bengio Y. Word representations: A simple and general method for semi-supervised learning. Proceedings of the 48th Annual Meeting of the Association for Computational Linguistics. Stroudsburg, PA, USA. 2010. 384–394.
|
[21] |
奚雪峰, 周国栋. 面向自然语言处理的深度学习研究. 自动化学报, 2016, 42(10): 1445-1465. |