A Constituent Syntactic Parse Tree Based Discourse Parser

This paper describes our system in the CoNLL-2016 shared task. Our system takes a piece of newswire text as input and returns the discourse relations. In our system we use a pipeline to conduct each subtask. Our system is evaluated on the CoNLL-2016 Shared Task closed track and obtains 0.1515 in F1 measurement, especially the part of detecting connectives, which achieves 0.9838 on blind test set.


Introduction
An end-to-end discourse parser is a system using natural language text as input and the discourse relation in labeled text as output. It has been widely used in the field of natural language processing, such as text classification, question answering system. In these discourse relations, two argument spans are marked as targets looked for by discourse relations, while conjunctions (connective) play an important role to confirm the relationship between the two argument spans. According to whether the conjunctions clearly appear in the text, discourse relations can be divided into two categories: explicit and non-explicit.
Penn Discourse Treebank (PDTB) has become the most important corpus in the field of discourse parsing. Previous work (Lin et al., 2014) integrated the entire training process together to form a complete discourse parser. There were five major components in the system, including Connective classifier, Argument labeler, Explicit classifier, Non-Explicit classifier, Attribution span labeler, with a part of PDTB as the training, which has achieved good prediction performance.

System Overview
We design our discourse parser as a sequential pipeline, shown in Figure 1. The whole system can be divided into two main parts: explicit and non-explicit.
The Explicit part contains: (1) Connective Classifier Detects the discourse connectives. Note that not all commonly used conjunctions have the effect of connective, so we first identify the ones function as discourse connective.
(2) Explicit Argument Labeler Locates the relative positions and extracts spans of Arg1 and Arg2. We use an efficient method to extract for integrating Arg1 and Arg2 together.
(3) Explicit Sense Classifier Determines the discourse function of the detected connectives.
For the explicit part and non-explicit part, there is: (4) Filter Gets rid of obviously incorrect parts, such as the ones that have already been marked as explicit relationship, with the remainder as the input part of non-explicit.
The non-explicit part contains: (5) Non-explicit Argument Labeler marks the location and range of Arg1 and Arg2 in the case that lacks of connective.
(6) Non-explicit Sense Classifier Determines the discourse relations according to the semantic context of Arg1 and Arg2.

System Components
Our system consists of six parts, and the general workflow refers to the shallow discourse parser based on the constituent parse tree (Chen et al., 2015). Feature extraction for training follows previous works (Kong et al., 2014;Lin et al., 2014;.
We deduce each sentence into a constituent parse tree. Relative information is extracted from these constituent parse trees to train models and predict discourse relations. In PDTB, there are 100 species of discourse connective, but not all conjunctions in the form of these 100 kinds of connective in the text are necessarily discourse relation. Thus, at first, we find out all connectives appearing in the text by scanning each constituent parse tree, then use the connective classifier to determine whether each connective functions as discourse connective. The features in connective classifier are as follows.
(1) ConnPos The category of the tree node which covers the whole connective.
(2) PrevConn The previous word of the connective and the connective itself.
(3) PrevPos The category of the previous word of the connective.
(4) PrevPosConnPos The category of previous word and category of the connective.
(5) ConnNext The connective itself and the next word of the connective.
(6) NextPos The category of the next word of the connective.
(7) ConnPosNextPos The category of the connective itself and category of the next word.
After extracting the mentioned feature for each connective, we annotate it as 1 or 0 according to whether this word in PDTB functions as discourse connective. (Jia et al., 2013;Zhao and Kit, 2008) showed maximum entropy classifier performed well in relative tasks, so we apply it to our classification problem * . According to official evaluation, F1 score of this part in our system is 0.9905 on the dev set and 0.9838 on the blind test set, comparing to 0.9514 and 0.9186, the best result of CoNLL-2015. The detailed results are shown in Table 1 From the comparison, we can learn that (1)From the constituent parse tree we build, we can extract connective features precisely.
(2)We use a straightforward way build our classifier. Comparing to previous works, our features and model are much more intuitively, and finally get even better result.
(3)There are different ways to process text, and our work shows that using constituent parse tree is a proper method in this task or similar ones. * MaxEnt classifier of OpenNLP, an open-source toolkit. See http://opennlp.apache.org/

Argument labeler
In this part, we use interval mapping based on constituent parse tree and the extracting method proposed by (Kong et al., 2014). When training, in constituent parse tree, we start with the node of connective, and ended with the root node. Along the path, left and right sibling of each node have become the candidate member of the Argument. Given that some part of the explicit discourse relation used previous sentence (PS) as Arg1, we use the a efficient method (Kong et al., 2014), which is to treat the sentence previous to the one contained discourse connective as the candidate of Arg1. Later, we compare these candidates with PDTB, and label them as Arg1 and Arg2 or null, according to their uses in PDTB, of which null means that the candidate doesn't have the function of Arg1 or Arg2. By this means, we obtain satisfying effect of argument labeling.
The features were as follows: (1) ConStr Prototype of connective in the text.
(3) ConCat Part of speech of connective.
(6) CandiCtx Candidate's category, category of parent node, category of left sibling, and category of right sibling.
(7) ConCandiPath Category of each node from the Candi to root node along the tree.
(8) ConCandiPosition The relative position between Candi and connective (left or right).
(9) ConCandiPathLSib Whether the left sibling number of the Candi is bigger than one.

Explicit Sense Classifier
In this part, we combine the feature of Lin's experiment with the feature of Pilter's, particularly as follows, (1) C prototype (2) C POS (3) prev+C (4) category of parent (5)   The detailed results are shown in Table 2. The results are also better than the best ones of CoNLL-2015, which were 0.3861 on the dev set and 0.2394 on the blind test set.

Filter
After identifying all explicit discourse relation connectives, and before non-explicit parser, we need to filter the training set. There are two cases for this filtering. (1) If one sentence, is labelled as Arg1 of some explicit discourse in previous step, then the related two sentences will not be considered by the following non-explicit parser. (2) In the original text, if two adjacent sentences are located between the last sentence of the previous paragraph and the first sentence of the next paragraph respectively, then these two sentences will not be considered, either.

Non-Explicit Parser
After explicit parser and filtering above, we take the rest part as input into non-explicit parser, for finding all the non-explicit discourse relations. In PDTB, there are three kinds of non-explicit discourse relations, which are Implicit, AltLex and EntRel. We notice that there is only 2.94% of Al-tLex. Besides, according to official evaluation criteria, we need to detect only 15 senses of the part of implicit. According to (Chen et al., 2015), we integrate EntRel together with implicit as a special sense for training and predicting.

Non-explicit Argument Labeler
In this part, we simply take the rest adjacent sentences which have been filtered as the argument span of non-explicit.

Non-explicit Sense Classifier
We perform sentence classification as mentioned above, practicing EntRel as a special sense of implicit, and ignored the senses which have few frequency of occurrences in PDTB. According to the previous works, the lost connective plays an important role in senses. Generally, connective appears at the beginning of the second sentence. According to this assumption, we use the following features.
(5) FirstS The first word of Arg1 and Arg2.
(6) LastS The last word of Arg1 and Arg2.

Results of Experiments
Our system is trained on the training set and evaluated on test set provided in the CoNLL-2016 Shared Task. We train our model of detecting connectives, extracting arguments of explicit part, predicting sense of connectives and predicting sense of non-explicit part, respectively. The results of the official evaluation are shown in the Table 3, 4 and 5. From the result, we can learn that (1) The part of connective detection and classification achieve great performances.
(2) The results of the sampled part are good, while there is still some gap between our system and the best one on the explicit and non-explicit part.

Conclusion
In this paper, we present a complete discourse parser. Based on these previous works and through continuous improvement, our system has achieved good results. According to the official evaluation of CoNLL-2016 Shared Task closed track, our system gets 0.9905 in F1-measure on explicit connective classifier, and finally achieves 0.1515 in F1measure on the official blind test.