A semantic role labeling method fusing component tree structure
By integrating semantic role annotation into the constituent tree structure, a novel constituent tree labeling system is constructed, which resolves the conflict between semantic role annotation and constituent syntax structure, and achieves more efficient semantic role annotation and compatibility with constituent syntax.
Patent Information
- Application Number
- CN202211735124.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-12-30
- Publication Date
- 2025-12-30
- Estimated Expiration
- 2042-12-30
AI Technical Summary
Existing technologies have failed to effectively resolve the compatibility issues between semantic role labeling and constituent syntactic structure, leading to conflicts.
Semantic role relationships are annotated into the constituent tree structure. By constructing a new constituent tree labeling system, syntactic information is integrated into the semantic role annotation, establishing the connection between semantic roles and constituent syntax. The Stanford-parser tool is used to transform the constituent tree into a dependency tree, and a binary tree structure is built through recursive processing to annotate the core word direction and semantic relationships.
It improves the compatibility between semantic role labeling and constituent syntax, resolves the conflict between semantic role labeling and constituent syntax structure, and achieves more efficient semantic role labeling.
Smart Images

Figure CN116205239B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to a semantic role labeling method that integrates a component tree structure, belonging to the field of computer natural language processing technology. Background Technology
[0002] Semantic analysis is an important research direction in the field of natural language processing, transforming natural language into a formalized language that computers can understand. Semantic analysis mainly focuses on semantic role labeling. Semantic role labeling is a mid-to-shallow semantic level task used to extract all predicates and their corresponding arguments in a sentence. For example, in the sentence "Foreign trade investment enterprises have become an important growth point for China's foreign trade," it is necessary to identify "become" as the predicate, with the corresponding arguments being "foreign trade investment enterprises" and "an important growth point for China's foreign trade," and the corresponding semantic labels being "A0" and "A1," respectively. Semantic role labeling is increasingly being applied in information retrieval, information extraction, and other scenarios. Researchers have proposed many semantic role labeling methods, such as the Chinese invention patents "A Semantic Role Labeling Method Based on Collaborative Neural Networks" (CN102662931B) and "A Semantic Role Labeling and Semantic Extraction Method for Unrestricted Path Natural Language" (CN106705974B).
[0003] Existing technologies have proven that integrating syntactic information into semantic role labeling (SNP) can effectively improve its performance. Some researchers have attempted to incorporate syntactic information into the loss function calculation to learn syntactic knowledge. Others have tried training two separate models for syntactic and SNP labeling simultaneously, concatenating the LSTM vector representations from the syntactic model into the word vectors of the SNP, or using encoding methods like GCN to fuse syntactic information. While these methods have achieved some success, demonstrating to a certain extent that fusing syntactic information is beneficial to SNP models, they only consider how to include syntactic information in the learned vectors from the perspective of vector learning. They do not consider the compatibility between SNP and constituent syntax, leading to conflicts between constituent syntax and SNP. Summary of the Invention
[0004] The purpose of this invention is to address the shortcomings and deficiencies of existing technologies, and to resolve technical problems such as the conflict between semantic role labeling and constituent syntactic structure, which affects the compatibility between semantic role labeling and constituent syntax, by creatively proposing a semantic role labeling method that integrates a constituent tree structure. This method labels semantic role relationships into a constituent tree structure, thereby establishing a connection between semantic role labeling and syntax, achieving complete compatibility between semantic role labeling and constituent syntactic structure.
[0005] The innovations of this invention include: This method directly studies the relationship between semantic roles and constituent syntactic data from a data perspective. First, the original constituent tree is transformed into a binary tree according to rules. For all semantic relations, the relationship between the left and right children of a node in the constituent tree can be mapped to each other, thereby establishing the connection between semantic roles and the tree structure. Syntactic information is integrated into semantic role annotation from a data perspective.
[0006] Simultaneously, this method constructs a novel constituent tree labeling system. Each label contains three pieces of information: the first indicates whether the tree node is the original node or a binary node transformed from a multi-way node; the second indicates the direction of the subtree corresponding to the core word under the node; and the third indicates the semantic role relationship between the left and right subtrees of the node. First, the constituent tree is transformed into a dependency tree using the Stanford-parser tool. Then, the dependency relationship is used to find the corresponding core word under the node, thereby labeling the direction corresponding to the core word, and simultaneously transforming multi-way nodes into binary nodes. Afterward, semantic role labeling information is used to label the semantic relationships in the constituent tree. If multiple verbs share the same role, the direction of the core word is changed to parallel.
[0007] The present invention is achieved using the following technical solution.
[0008] A semantic role annotation method that integrates a component tree structure includes the following steps:
[0009] Step 1: Convert the constituent syntax to dependency syntax. The output format can be Conll format.
[0010] In dependency syntax, there are two columns that represent the sequence number of the corresponding core word and the specific dependency relationship, respectively. These two columns of information will be used for subsequent processing of the constituent syntax tree.
[0011] Step 2: Using dependency syntax, convert the constituent tree into a binary tree and label it with two pieces of information: whether it is an original constituent tree node and the direction of the core word.
[0012] Specifically, step 2 includes the following steps:
[0013] Step 2.1: Convert multi-way nodes to binary nodes and mark whether they are the converted nodes. Recursively process all nodes in the tree. If it is a leaf node or a binary node, mark the first piece of information as "C", indicating that this node is the original component tree node. If it is a multi-way node, perform the following processing:
[0014] The first step is to process all node intervals into having only one core word. First, the first node in each interval is assumed to be "head". Then, dependency parsing is used to sequentially find the last node whose head is not within the interval, which is designated as the head node, denoted as node A. Next, for each node, the node whose head node is not node A is found, denoted as node B. Finally, node B and the interval formed by all nodes whose head node is B are treated as a new node. The first piece of information for this new node is labeled "H", representing a non-original component tree node.
[0015] The second step is to convert the component tree processed in the first step into a binary tree.
[0016] Process all non-binary nodes in the component tree, find the head node under that node. If the head node is the first node under that node, then use left join to merge the leftmost two intervals into a new node and mark it with the information "H". Otherwise, use right join to merge the rightmost two intervals into a new node and mark it with the information "H".
[0017] Step 2.2: Mark the direction information of core words.
[0018] Step 2.1 yields a binary tree labeled with information on whether a node is a node from the original component tree. Now, recursively search the binary tree nodes. For each node, use dependency relationships to determine the dependency relationship between its left and right children. If the core word of the left child is the head of the core word of the right child, then the core word of the entire interval is the core word of the left child, and the core word direction information is labeled "L". Otherwise, the node whose right child's core word is the head is labeled "R". If it is a leaf node, it is labeled "T".
[0019] Step 3: Label semantic role information on the binary tree.
[0020] Specifically, step 3 includes the following steps:
[0021] Step 3.1: Identify the semantic role relationships in non-parallel structures.
[0022] For a pair of labeled semantic role relationships, if there exists a node in the binary component tree where the core word corresponding to its left child has this relationship with the interval corresponding to its right child, the semantic information of that node is labeled as "L". Conversely, if the core word corresponding to its right child has this relationship with the interval corresponding to its left child, the semantic information of that node is labeled as "R".
[0023] Step 3.2: Solve structures where verbs have a parallel relationship.
[0024] If, for a pair of labeled semantic role relations, no corresponding node can be found following step 3.1, then it is assumed that the verbs of these pairs are parallel to each other and share a constituent interval. Specifically, find the node corresponding to the argument of this semantic relation in the structure tree, and change the core word direction of all its sibling nodes whose core word direction is inconsistent with its predicate direction to "B".
[0025] At this point, the semantic role labeling of the fused subtree structure has been completed.
[0026] Beneficial effects
[0027] Compared with existing technologies, the method of this invention resolves the conflict between semantic role labeling and constituent syntax structure, thereby improving the compatibility between semantic role labeling and constituent syntax. Attached Figure Description
[0028] Figure 1 This is the original component tree structure corresponding to the example sentences in the embodiments of the present invention.
[0029] Figure 2 This refers to the dependency syntax corresponding to the example sentences in the embodiments of this invention.
[0030] Figure 3 This is the transformed component tree structure corresponding to the example sentences in the embodiments of the present invention. Detailed Implementation
[0031] The method of the present invention will be further described in detail below with reference to the accompanying drawings and embodiments.
[0032] Example
[0033] This embodiment illustrates the specific implementation process of the method of the present invention.
[0034] Take the statement "FAW Group has used the capital market to raise funds and now owns three listed companies, including FAW Car" as an example. Figure 1 The image shows the constituent syntax tree corresponding to this sentence.
[0035] A semantic role annotation method that integrates a component tree structure includes the following steps:
[0036] Step 1: You can use the stanford-parser 3.3.0 tool to convert the constituent syntax into dependency syntax, and the output format is Conll format.
[0037] like Figure 2 As shown, column 2 contains the individual words, column 7 contains the sequence number of the head corresponding to the word, and column 8 contains the specific dependency relationships.
[0038] Step 2: Use dependency syntax to convert the constituent tree into a binary tree and label it with two pieces of information: whether it is an original constituent tree node and the direction of the core word.
[0039] Step 2.1: Convert multi-way nodes into binary nodes and mark whether they are the converted nodes.
[0040] Recursively process all nodes in the tree. If it is a leaf node or a binary node, mark the first piece of information as "C", indicating that this node is an original subtree node. For example, "direct" and "financing" in the original structure are binary nodes, so the first piece of information is marked as "C". If it is a multi-branch node, perform the following processing:
[0041] Step 2.2.1: Process all node intervals to have only one core word.
[0042] First, we assume the first node in the interval is the head. Then, using dependency syntax, we sequentially search for the last node whose head is not in the interval and designate it as the head node, denoted as node A. Next, we search for each node and find the node whose head node is not node A, denoted as node B. Finally, we define node B and the interval formed by all nodes whose head node is B as a new node. We label the first piece of information of this new node as "H", representing a non-original component tree node.
[0043] Step 2.2.2: Convert the component tree processed in 2.2.1 into a binary tree.
[0044] Process all non-binary nodes in the component tree. Find the head node under the current node. If the head node is the first node under the current node, use a left join operation, merging the leftmost two intervals into a new node and marking it with "H". Otherwise, use a right join operation, merging the rightmost two intervals into a new node and marking it with "H". For example, in "FAW Car", according to... Figure 2 Given the dependency relationships, with "car" as the core word, we use "car" as the core word and transform it into a binary tree using a right-associative approach. For the newly constructed node, the first piece of information is labeled "H". For example... Figure 3 As shown.
[0045] Step 2.2: Mark the direction information of core words.
[0046] Step 2.1 yields a binary tree labeled with information about whether a node is a node from the original component tree. Recursively search the binary tree nodes. For each node, use dependency relationships to determine the dependency relationship between its left and right children. If the core word of the left child is the head of the core word of the right child, then the core word of the entire interval is the core word of the left child, and the core word direction information is labeled "L". Conversely, nodes where the core word of the right child is the head are labeled "R". If it is a leaf node, it is labeled "T". For example... Figure 2 As shown, "financing" is the head of "direct", so the direction of "direct financing" is marked as "R".
[0047] Step 3: Label semantic role information on the binary tree.
[0048] Step 3.1: Identify non-parallel semantic role relationships. For a pair of labeled semantic role relationships, if a node in the binary component tree has a relationship between the core word corresponding to its left child and the interval corresponding to its right child, then the semantic information of that node is labeled as "L". Conversely, if the core word corresponding to its right child and the interval corresponding to its left child have this relationship, then the semantic information of that node is labeled as "R". In the semantic relationship labeling, "own" is the predicate, and "FAW Car and three other listed companies" is its argument. This relationship corresponds exactly to the relationship between the left and right children of a node in the component tree, so the third piece of information of the node "owns FAW Car and three other listed companies" is labeled as "L".
[0049] Step 3.2: Resolving structures where verbs have a parallel relationship. If, for a pair of labeled semantic role relationships, no corresponding node can be found following step 3.1, then it is assumed that the verbs have a parallel relationship with another verb and share a component interval. The processing procedure is as follows: First, find the node corresponding to the argument of this semantic relationship in the structure tree, and then change the core word direction of all its sibling nodes whose core word direction is inconsistent with its predicate direction to "B". For example, in "utilize capital market direct financing", "utilize" is the core word, but "financing" and "utilize" share the common argument "FAW", so the second information of the node "utilize capital market direct financing" is changed to "B", indicating that "utilize" and "financing" have a parallel relationship.
[0050] Figure 3 The final result is a component tree structure where each node contains 3 pieces of information.
[0051] The above description is merely a preferred embodiment of the present invention, and the present invention should not be limited to the content disclosed in this embodiment and the accompanying drawings. Any equivalent or modified embodiments made without departing from the spirit of the present invention fall within the scope of protection of the present invention.
Claims
1. A method for semantic role labeling of a fusion component tree structure, characterized in that, The method comprises the following steps: Step 1: convert the constituent syntax into the dependency syntax in the Conll format; The dependency syntax contains two key information, namely the serial number column corresponding to the core word and the specific dependency relation column, which are used for subsequent processing of the constituent syntax tree; Step 2: convert the constituent tree into a binary tree and mark two information by using the dependency syntax: whether it is an original constituent tree node and the core word direction; Step 2.1: convert the multi-ary node into a binary node and mark the information whether it is a converted node; recursively process all nodes in the tree, if it is a leaf node or a binary node, mark the first information as "C", indicating that the node is an original constituent tree node, if it is a multi-ary node, the following processing is performed: Firstly, all node intervals are processed to have only one core word; firstly, the first node in the interval is defaulted as the head, and then the last node whose head is not in the interval is found as the head node by using the dependency syntax, and the head node is recorded as node A; then each node is found, and the node whose head node is not node A is recorded as node B; finally, the interval formed by the B node and all nodes whose head node is the B node is independently formed as a new node, and the first information of the new node is marked as "H", representing a non-original constituent tree node; Secondly, the constituent tree processed by the first step is converted into a binary tree; All non-binary nodes in the constituent tree are processed, the head node under the node is found, if the head node is the first node under the node, the left-associative manner is adopted, the leftmost two intervals are merged into a new node, and the information "H" is marked, otherwise, the right-associative manner is adopted, the rightmost two intervals are merged into a new node, and the information "H" is marked; Step 2.2: mark the core word direction information; A binary tree marked with the information whether it is an original constituent tree node is obtained by step 2.1; at this time, the binary tree nodes are recursively searched, for each node, the dependency relationship of the left and right children is judged by using the dependency relationship, if the left child core word is the head of the right child core word, the whole interval core word is the left child core word, and the core word direction information is marked as "L"; otherwise, the right child core word is marked as "R"; if it is a leaf node, it is marked as "T"; Step 3: mark the semantic role information on the binary tree; Step 3.1: find the semantic role relationship of non-parallel structure; For a pair of marked semantic role relationship, if there is a node in the binary constituent tree, the core word corresponding to the left child and the interval corresponding to the right child have such relationship, the semantic information of the node is marked as "L"; otherwise, if the core word corresponding to the right child and the interval corresponding to the left child have such relationship, the semantic information of the node is marked as "R"; Step 3.2: solve the structure of the verb having parallel relationship; If for a pair of annotated semantic role relations, the corresponding nodes cannot be found according to the steps of 3.1, it is considered that the verbs produce a parallel relationship and share the component interval with another verb; specifically, find the node corresponding to the argument of the semantic role relation in the structure tree, and change the core word direction of all the nodes whose core word direction is inconsistent with the predicate direction of the node to "B".
Citation Information
Patent Citations
Semantic role labeling method based on synergetic neural network
CN102662931B
A method for semantic role labeling and semantic extraction in unrestricted path natural language
CN106705974B