
估计概率分布是自然语言处理(NLP)领域中的核心问题之一。然而,在深度学习(DL)出现之前以及深度学习时代,尽管线性链条件随机场(linear-chain CRF)在序列标注任务中得到了广泛应用,但将树结构条件随机场(tree-structure CRF)应用于短语结构句法分析(constituency parsing)的研究却十分有限,主要原因在于“内部-外部算法”(inside-outside algorithm)的复杂性与计算效率低下。本文提出了一种快速且准确的神经条件随机场句法分析器(neural CRF constituency parser)。其核心思想是:通过在GPU上直接进行大规模张量运算,对“内部算法”(inside algorithm)进行批量处理以实现损失函数的高效计算;同时,借助高效的反向传播机制,避免使用“外部算法”(outside algorithm)进行梯度计算,从而显著提升训练效率。此外,我们提出了一种简单而有效的两阶段解析方法——先进行括号生成(bracketing),再进行标签预测(labeling),进一步提升了整体解析效率。为提升解析性能,我们受到依存句法分析近期进展的启发,引入了一种基于边界表示(boundary representation)与双仿射注意力(biaffine attention)的新评分架构,并设计了一种有益的dropout策略。在Penn Treebank(PTB)、CTB5.1和CTB7三个标准数据集上的实验表明,我们的两阶段CRF解析器在不使用BERT和使用BERT两种设置下均达到了新的最先进(state-of-the-art)性能,且每秒可解析超过1000个句子。相关代码已开源,地址为:https://github.com/yzhangcs/crfpar。