CN113157875A - Knowledge graph question-answering system, method and device - Google Patents

Knowledge graph question-answering system, method and device Download PDF

Info

Publication number
CN113157875A
CN113157875A CN202110270515.3A CN202110270515A CN113157875A CN 113157875 A CN113157875 A CN 113157875A CN 202110270515 A CN202110270515 A CN 202110270515A CN 113157875 A CN113157875 A CN 113157875A
Authority
CN
China
Prior art keywords
word
node
concept
type
dictionary
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202110270515.3A
Other languages
Chinese (zh)
Inventor
张学龙
王哓鸣
史晓凌
么新新
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Zhitong Yunlian Technology Co Ltd
Original Assignee
Beijing Zhitong Yunlian Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Zhitong Yunlian Technology Co Ltd filed Critical Beijing Zhitong Yunlian Technology Co Ltd
Priority to CN202110270515.3A priority Critical patent/CN113157875A/en
Publication of CN113157875A publication Critical patent/CN113157875A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/332Query formulation
    • G06F16/3329Natural language query formulation or dialogue systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/3332Query translation
    • G06F16/3334Selection or weighting of terms from queries, including natural language queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • G06F16/3344Query execution using natural language analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/36Creation of semantic tools, e.g. ontology or thesauri
    • G06F16/367Ontology

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Mathematical Physics (AREA)
  • Human Computer Interaction (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Animal Behavior & Ethology (AREA)
  • Machine Translation (AREA)

Abstract

The invention discloses a knowledge graph question-answering system, a knowledge graph question-answering method and a knowledge graph question-answering device, wherein the knowledge graph question-answering system comprises: the data layer is used for storing a concept map and an example map; the model layer is used for storing a dictionary required for semantic analysis of the question of the user; the processing layer is used for performing word segmentation and syntactic dependency analysis on a user question to obtain a dependency relationship tree, performing node classification and pruning on the dependency relationship tree to obtain a pruned and type-labeled dependency relationship tree, outputting a corresponding relationship between a word list and a node object constraint path aiming at the pruned and type-labeled dependency relationship tree on the basis of a dictionary and a knowledge graph, acquiring a target node on the basis of the corresponding relationship, and inquiring an example graph according to the target node and the node object constraint path to acquire an example point of the target node; and the application layer is used for receiving the user question input by the user and displaying the returned example points to the user.

Description

Knowledge graph question-answering system, method and device
Technical Field
The invention relates to the technical field of computers, in particular to a knowledge graph question-answering system, a knowledge graph question-answering method and a knowledge graph question-answering device.
Background
In the current intelligent wave, the internet + becomes an important strategic direction for intelligent transformation and upgrading in many fields, wherein an intelligent question-answering system is one of the most urgent requirements for optimizing a service flow and improving service efficiency transformation.
The knowledge graph has the characteristics of strong expression capability, good expandability, flexible operation and the like, and the effect of the question-answering system is improved by constructing the knowledge graph and fusing the knowledge graph in the question-answering system in the vertical field. The system for asking and answering about knowledge maps at home and abroad is generally a task type, and manually defines the task type which can be answered in advance, the slot position which needs to be filled under each task type and the logic of a search graph database to obtain the final answer; or on the basis of a retrieval type question-answering system architecture, triple information of entities and relations in a knowledge graph is fused to realize more accurate reply.
Limitations of both of the above methods include:
(1) the types of questions that can be answered are limited; the task-type question-answering system needs to be defined artificially, and the retrieval-type question-answering system is limited by the types of questions in the question bank.
(2) Limited by the design of the knowledge-graph conceptual graph in the vertical field; in the task-based question-answering system, the search logic of the same question type in different concept graph designs is different, so the structure of the concept graph needs to be clear in advance.
(3) In the retrieval type question-answering system, the integration of the knowledge graph is only for improving the accuracy of similarity calculation between the user question and the question in the question-answering base, and the reasoning capability of the knowledge graph is not fully utilized.
Disclosure of Invention
The invention aims to provide a knowledge-graph question-answering system, a knowledge-graph question-answering method and a knowledge-graph question-answering device, and aims to solve the problems in the prior art.
The invention provides a knowledge-graph question-answering system, which comprises:
the data layer is used for storing a concept graph and an example graph, wherein the concept graph is used for describing types of concept nodes, attribute information of the concept nodes of each type and relations among the concept nodes of different types, and the example graph is used for storing example information corresponding to the concept graph;
the model layer is used for storing a dictionary required for semantic analysis of the question of the user;
the processing layer is used for performing word segmentation and syntactic dependency analysis on a user question to obtain a dependency relationship tree, performing node classification and pruning on the dependency relationship tree to obtain a pruned and type-labeled dependency relationship tree, outputting a corresponding relationship between a word list and a node object constraint path aiming at the pruned and type-labeled dependency relationship tree on the basis of a dictionary and a knowledge graph, acquiring a target node on the basis of the corresponding relationship, and inquiring an example graph according to the target node and the node object constraint path to acquire an example point of the target node;
and the application layer is used for receiving the user question input by the user and displaying the returned example points to the user.
The invention provides a knowledge graph question-answering method, which comprises the following steps:
the method comprises the steps of preserving a concept graph and an example graph in advance, wherein the concept graph is used for describing types of concept nodes, attribute information of the concept nodes of each type and relations among the concept nodes of different types, and the example graph is used for preserving example information corresponding to the concept graph;
pre-storing a dictionary required for semantic analysis of a question of a user;
receiving a user question input by a user, performing word segmentation and syntactic dependency analysis on the user question to obtain a dependency relationship tree, performing node classification and pruning on the dependency relationship tree to obtain a pruned and type-marked dependency relationship tree, outputting a corresponding relationship between a word list and a node object constraint path aiming at the pruned and type-marked dependency relationship tree, acquiring a target node based on the corresponding relationship, inquiring an example map according to the target node and the node object constraint path, acquiring an example point of the target node, and displaying the returned example point to the user.
The embodiment of the invention also provides a knowledge graph question-answering device, which comprises: the system comprises a memory, a processor and a computer program stored on the memory and capable of running on the processor, wherein the computer program realizes the steps of the knowledge-graph question-answering method when being executed by the processor.
The embodiment of the invention also provides a computer readable storage medium, wherein an implementation program for information transmission is stored on the computer readable storage medium, and the steps of the knowledge-graph question-answering method are implemented when the program is executed by a processor.
By adopting the embodiment of the invention, the natural language technology is utilized to carry out semantic analysis at a word level and a sentence level on the question of the user, the analysis result of the natural language technology and the sentence level and the knowledge graph data are integrated, and the object and the query path corresponding to the node in the knowledge graph are analyzed from the question of the user, so that the defects that the types of the questions which can be answered in the traditional graph-based question-answering system are limited and are limited by the design of the knowledge graph can be solved.
The foregoing description is only an overview of the technical solutions of the present invention, and the embodiments of the present invention are described below in order to make the technical means of the present invention more clearly understood and to make the above and other objects, features, and advantages of the present invention more clearly understandable.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings used in the description of the embodiments or the prior art will be briefly described below, and it is obvious that the drawings in the following description are some embodiments of the present invention, and other drawings can be obtained by those skilled in the art without creative efforts.
FIG. 1 is a schematic diagram of a knowledge-graph question-answering system in accordance with an embodiment of the present invention;
FIG. 2 is a detailed schematic diagram of a knowledge-graph question-answering system in accordance with an embodiment of the present invention;
FIGS. 3a-3d are schematic diagrams of a question processing procedure according to an embodiment of the present invention;
FIG. 4 is a flow chart of a knowledge-graph question-answering method of an embodiment of the present invention;
FIG. 5 is a schematic diagram of a knowledge-graph question answering apparatus in accordance with an embodiment of the present invention.
Detailed Description
In order to solve the above problems in the prior art, embodiments of the present invention provide a method and a system for knowledge graph question-answering based on dictionary and syntactic dependency analysis: and performing semantic analysis on the user question at a word level and a sentence level by utilizing a natural language technology, integrating the analysis results of the user question and the sentence level and knowledge map data, and analyzing an object and a query path corresponding to a node in a knowledge map from the user question. The specific operation is that the semantic analysis of word level is carried out by utilizing dictionary matching aiming at a user question, key word information such as concept, entity, attribute and the like is extracted, then the syntactic structure in the question is determined by utilizing syntactic dependency analysis, and the dependency logic relationship between key words in the sentence is obtained; and packaging key words describing node information in the knowledge graph into a node object by combining triple information in the knowledge graph, namely analyzing the semantics of the question of the user into one or more node objects, obtaining a constraint path and a target node between the node objects according to the result of dependency analysis, and finally querying in the example graph to obtain a final result and returning the final result. Through the operation, semantic information of word levels and sentence levels in the sentence is synthesized, and the intention of the question can be analyzed to the maximum extent; and when the key words are packaged into node objects, the node objects can be flexibly configured according to the real data of the knowledge graph, and manual change of the knowledge graph does not need to be determined in advance.
The technical solutions of the present invention will be described clearly and completely with reference to the following embodiments, and it should be understood that the described embodiments are some, but not all, embodiments of the present invention. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
In the description of the present invention, it is to be understood that the terms "center", "longitudinal", "lateral", "length", "width", "thickness", "upper", "lower", "front", "rear", "left", "right", "vertical", "horizontal", "top", "bottom", "inner", "outer", "clockwise", "counterclockwise", and the like, indicate orientations and positional relationships based on those shown in the drawings, and are used only for convenience of description and simplicity of description, and do not indicate or imply that the device or element being referred to must have a particular orientation, be constructed and operated in a particular orientation, and thus, should not be considered as limiting the present invention.
Furthermore, the terms "first", "second" and "first" are used for descriptive purposes only and are not to be construed as indicating or implying relative importance or implicitly indicating the number of technical features indicated. Thus, features defined as "first", "second", may explicitly or implicitly include one or more of the described features. In the description of the present invention, "a plurality" means two or more unless specifically defined otherwise. Furthermore, the terms "mounted," "connected," and "connected" are to be construed broadly and may, for example, be fixedly connected, detachably connected, or integrally connected; can be mechanically or electrically connected; they may be connected directly or indirectly through intervening media, or they may be interconnected between two elements. The specific meanings of the above terms in the present invention can be understood in specific cases to those skilled in the art.
System embodiment
According to an embodiment of the present invention, a knowledge-graph question-answering system is provided, fig. 1 is a schematic diagram of the knowledge-graph question-answering system according to the embodiment of the present invention, as shown in fig. 1, the knowledge-graph question-answering system according to the embodiment of the present invention specifically includes:
a data layer 10 for storing a concept graph for describing types of concept nodes, attribute information of the concept nodes of each type, and relationships between the concept nodes of different types, and an instance graph for storing instance information corresponding to the concept graph;
the model layer 12 is used for storing a dictionary required for semantic analysis of the question of the user;
the processing layer 14 is used for performing word segmentation and syntactic dependency analysis on a user question to obtain a dependency relationship tree, performing node classification and pruning on the dependency relationship tree to obtain a pruned and type-labeled dependency relationship tree, outputting a corresponding relationship between a word list and a node object constraint path for the pruned and type-labeled dependency relationship tree based on a dictionary and a knowledge graph, acquiring a target node based on the corresponding relationship, and querying a graph instance according to the target node and the node object constraint path to acquire an instance point of the target node;
and the application layer 16 is used for receiving the user question input by the user and displaying the returned example points to the user.
The above-described modules according to the embodiments of the present invention will be described in detail below with reference to the accompanying drawings.
As shown in fig. 2, the whole knowledge-graph question-answering system based on dictionary and syntactic dependency analysis is divided into 4 levels, including: data layer 10, model layer 12, process layer 14, and application layer 16. The data layer 10 is used for managing knowledge graph data; the model layer 12 is responsible for managing dictionaries required by semantic parsing of question sentences of users; the processing layer 14 is responsible for processing the question of the user; the application layer 16 is responsible for the reception of user questions and the presentation of the final result. The data layer 10, the model layer 12, and the processing layer 14 of the system will be described in detail below.
The data layer 10 includes a concept graph and an instance graph, which may also be referred to as a model layer and an instance layer, and the concept graph describes types of nodes, attribute information of each type of node, and relationships between different types of concept nodes, and the instance graph stores real instance information and is an instantiation of the concept graph.
The model layer 12 includes 6 dictionaries, namely, a concept synonym dictionary, an attribute synonym dictionary, an instance synonym dictionary, an attribute-concept dictionary, an instance-concept dictionary, and a preposition dictionary, and the concept synonym dictionary maintains all possible descriptions of each concept in the concept graph, and the details are shown in table 1:
TABLE 1
Concept spoken word Concept standard words
Shaft Shaft
Well Shaft
Oil and gas field Oil and gas field
Oil field Oil and gas field
Block Block
Parturition plan Parturition plan
The attribute synonym dictionary maintains all possible descriptions of attributes in the concept graph, the details of which are shown in Table 2:
TABLE 2
Attribute spoken word Attribute standard word
Depth of well Depth of well
Depth of well Depth of well
Daily oil production capacity Daily oil yield
Daily oil yield Daily oil yield
Rate of rise of water cut Rate of rise of water cut
Rate of rise of water content Rate of rise of water cut
Annual oil production Annual oil production
Annual oil production Annual oil production
Strength of water injection Strength of water injection
Error of crude oil metering system Error of crude oil metering system
Oil production rate Oil production rate
The example synonyms maintain all possible descriptions of each example in the example graph, the details of which are shown in Table 3:
TABLE 3
Example spoken words Example Standard words
Zone a of the column Tower A block
Block of tower a Tower A block
Zone A of the column Tower A block
Zone b of the column Tower B block
Block of tower b Tower B block
Zone B of the column Tower B block
TK001 well TK001 shaft
TK001 shaft TK001 shaft
tk001 TK001 shaft
The attribute-concept dictionary maintains concepts corresponding to each standard attribute (i.e., the attributes present in the graph), the details of which are shown in table 4:
TABLE 4
Attribute standard word Concept of
Annual oil production Parturition plan
Daily oil yield Parturition plan
Comprehensive water-containing well Shaft
Comprehensive water content Block
Rate of rise of water cut Block
Rate of rise of water content Block
Example-concept dictionary maintains the concepts to which each canonical example (i.e., the example present in the example graph) belongs, the details of which are shown in table 5:
TABLE 5
Example Standard words Concept of
Tower A block Block
Tower B block Block
TK001 shaft Shaft
Central oil field Oil and gas field
Northwest oil field Oil and gas field
Eight regions Block
The preposition dictionary maintains spoken words with part of speech as prepositions, and the details are shown in table 6:
TABLE 6
Preposition word
What is what
What is
How much
It should be noted that, in the embodiment of the present invention, 4 dictionaries, namely a concept synonym dictionary, an attribute synonym dictionary, an instance synonym dictionary, and a preposition dictionary, need to be manually maintained and added; the attribute-concept dictionary is automatically generated according to concept map data without manual maintenance; the example-concept dictionary is automatically generated according to example map data, and manual maintenance is not needed.
The processing layer 14 includes five modules, which are a module 1 (corresponding to the first sub-module) for word segmentation and dependency analysis, a module 2 (corresponding to the second sub-module) for classification and pruning of the dependency tree nodes, a module 3 (corresponding to the third sub-module) for encapsulation of the node objects and acquisition of the node constraint paths, where the node objects are shown in table 7, a module 4 (corresponding to the fourth sub-module) for acquisition of the target nodes, and a module 5 (corresponding to the fifth sub-module) for query of the graph database. The specific operation of the five modules is described in detail below.
TABLE 7
Key Value type
Concept standard words String
Example Standard words String
List of attribute standard words List<String>
The module 1 is a word segmentation and dependency analysis module, and is used for performing word segmentation and syntax dependency analysis on a question of a user. When the words are segmented for the question, a dictionary-based word segmentation method such as MMSEG is adopted. Wherein the entries of the dictionary include common words and professional words in the vertical field, the professional words include entries in 4 dictionaries of concept synonyms, attribute synonyms and example synonyms, dependency syntax analysis is performed on the participled question, dependency logic relationship between each word in the sentence, i.e., dependency relationship tree, is output, and fig. 3a-d are how much annual oil production is respectively given for the question "tower a region allocation plan and tower B region allocation plan? "schematic diagram of processing procedure", wherein fig. 3a is dependency tree after question dependency analysis, fig. 3b is dependency tree after pruning and type marking, fig. 3c is dependency tree after correction for "parallel" and fig. 3d is node constraint path. As shown in fig. 3a, each node of the relation tree is a word, and words in the nodes are spliced together from left to right to form a question of the user. The line segment with the arrow indicates the relation of words in two nodes, the starting point is a father node, the end point is a root node, and the number of the father nodes of each node in the dependency relationship tree is less than or equal to 1.
The module 2 is used for classifying and pruning the nodes of the dependency relationship tree, and specifically, the nodes in the dependency relationship tree output by the module 1 are classified into six types, namely, an example word, a concept word, an attribute word, a preposition auxiliary word, other auxiliary words and a useless word, and the nodes corresponding to the useless words are removed, namely, the dependency relationship tree is pruned without information, and the dependency relationship tree with each node type is output and labeled, as shown in fig. 3 b. Wherein the specific operation of classification in each node in the dependency tree is:
2-1, firstly, judging whether the words in the nodes are entries in a concept synonym dictionary, an attribute synonym dictionary, an example synonym dictionary and a preposition dictionary; if the vocabulary entry is in the concept synonym dictionary, the node type is a concept word, if the vocabulary entry is in the attribute synonym dictionary, the node type is an attribute word, if the vocabulary entry is in the example synonym dictionary, the node type is an example word, and if the vocabulary entry is in the preposition dictionary, the node type is a preposition auxiliary word; and if the entries do not belong to the five classes of dictionaries, performing 2-2.
2-2, judging whether the node is a leaf node, if so, the node type is a useless word, and if not, the node type is other auxiliary words.
The module 3 is used for encapsulating the node object and acquiring the node constraint path; for the pruned and typed dependency relationship tree output by the module 2, the keyword describing one node of the graph is packaged into one object by combining the triple information of the knowledge graph, and the corresponding relationship between the output word list and the node object, namely the word list, the node object and the node object constraint path (node object 1) (node object 2) … (node object z), is output. The specific operation of the node object encapsulation is as follows:
the purpose of the 3-1 dependency tree modification is to modify the parent of the node pointed to by the "parallel" edge, as shown in FIG. 3 c. For the pruned and type-marked dependency relationship tree output by the module 2, sequentially traversing each node, if the current node is "parallel" to the parent node n0, acquiring the parent node n1 and the relationship e1 of the parent node, deleting the relationship between the current node and the parent node n0, changing the parent node of the current node to the node n1, and changing the relationship to e 1.
And 3-2, acquiring an initial constraint path of the word, outputting a plurality of < word constraint paths and direction types > for each question, and continuing 3-3 operations.
3-2-1 for the modified dependency relationship tree output by the module 3-1, starting from each leaf node, naming the leaf node as the current node, and constraining the path as the current node information (word and node type): the word 1/type 1, let the direction type of the constraint path be-1, and proceed 3-2-2 for each < constraint path, direction type >.
3-2-2, acquiring that the last node of the current constraint path is a current node (current node information: word 1 and node type 1) and the direction type of the constraint path is a current direction type, finding a father node of the current node along a relation line segment with an arrow, and directly outputting the current constraint path if no father node exists; if the subscript of the father node word in the question is larger than the subscript of the word of the current node, setting the direction type a as 0, if the subscript of the father node word in the question is smaller than the subscript of the word of the current node, setting the direction type a as 1, if the current direction type is-1 or the same as a, splicing father node information (word 2 and node type 2) behind the current constraint path: the current constraint path (word 2/type 2) and the corresponding direction type are set as a, and a new constraint path is obtained to continue 3-2-2 operation; if the current direction type is not-1 and is different from a, outputting the current constraint path, and setting a new constraint path as follows: word 2/type 2, corresponding direction type is set to-1, and continue 3-2-2 operation.
And 3-3, acquiring a word constraint path, traversing each of a plurality of word constraint paths and direction types output by 3-2, if the last node of one word constraint path is the same as the first node in the rest of the word constraint paths and direction types, and the direction types are respectively 0, 1 or 1 and 0, splicing the word constraint path with the direction type 1 to the back with the direction type 0 for output in a reverse order, otherwise, directly outputting the word constraint path.
3-4 normalization of word constraint paths, for each word constraint path (word 1/type 1) output by 3-3, (word 2/type 2) … (word m/type m) (where m > ═ 1), traversing from left to right each word i/type i (where i > ═ 1 and i < ═ m) type i continues skipping if it is "other auxiliary words" or "preposition auxiliary words"; if the word is the concept word, searching a concept standard word corresponding to the word i based on the concept synonym dictionary, and enabling the standard word i to be the concept standard word and the concept i to be the concept standard word; if the word is 'example word', searching an example standard word corresponding to the word i based on the example synonym dictionary, searching a concept standard word corresponding to the example standard word based on the example-concept dictionary, and enabling the standard word i to be the example standard word, wherein the concept i is the concept standard word; if the word is the 'attribute word', searching an attribute standard word corresponding to the word i based on the attribute synonym dictionary, searching a concept standard word corresponding to the attribute standard word based on the attribute-concept dictionary, and enabling the standard word i to be the attribute standard word and the concept i to be the concept standard word. Output (word 1/standard 1, type 1, concept 1) (word 2/standard 2, type 2, concept 2) … (word n/standard n, type n, concept n) (where n < ═ m).
For example, after the operation of 3-2 and 3-3 is performed on the dependency relationship tree after the modification of fig. 3c, two constraint paths are obtained, which are (tower a area/example word) · (parturition plan/concept word) · (annual oil production/attribute word) · (respectively/other auxiliary words) · (yes/other auxiliary words) · (how many/preposition auxiliary words), and (tower B area/example word) · (parturition plan/concept word) · (annual oil production/attribute word) · (respectively/other auxiliary words) · (yes/preposition auxiliary words) · (how many/preposition auxiliary words); after 3-4 operations, two standardized constraint paths are obtained, namely (tower A area/tower A area, example word, block) · (allocation plan/allocation plan, concept word, allocation plan) · (annual oil production/annual oil production, attribute word, allocation plan), (tower B area/tower B area, example word, block) · (allocation plan/allocation plan, concept word, allocation plan) · (annual oil production/annual oil production, attribute word, allocation plan).
3-5 initializing the node object; for each normalized word constraint path (word 1/standard word 1, type 1, concept 1) · (word 2/standard word 2, type 2, concept 2) … (word n/standard word n, type n, concept n), encapsulating concepts identical from left to right into node objects, outputting a correspondence relationship between a word list and a node object < word list i, word list i/node object i > and a node object constraint path (word list 1, node object 1) · (word list 2, node object 2) … (word list z, node object z) (where z < ═ n), and feeding to 3-6 to continue operation.
3-6, perfecting the node object;
perfecting a node object corresponding to the 3-6-1 word list; aiming at a plurality of input < word lists i, word lists i '/node objects i' > are compared pairwise, if a word list i 'corresponding to the word list i contains a word list j' (condition 1) corresponding to the word list j, the union of the word list i 'and the list i' is named as a word list k ', fields in the node objects i' corresponding to the word list i and the node objects j 'corresponding to the word list j are complemented and perfected to form nodes k', further the word list i, the word list i '/node objects i' > are changed into < word lists i, the list k '/node objects k' >, < word lists j, the word list j '/node objects j' > are changed into < word lists j, the list k '/node objects k' >, the word lists i '/node objects i' >, and the word lists i, the node objects are continuously fed to 3-6-1 to complete the node objects until the word lists i exist, and 3-6-2 is carried out when the condition 1 is not met in each word list i '/node object i' >.
3-6-2 modifies each node object i to a new node i ' corresponding to the word list i for the plurality of node object constraint paths output in 3-5, and correspondingly outputs a node object constraint path (node object 1 ') (node object 2 ') … (node object z '), where z ' < ═ n, as shown in fig. 3d, and the correspondence relationship between the word list and the node object < word list i ', node object i ' >.
Obtaining a target node by a module 4; and aiming at the modified pruned dependency relationship tree output by the module 3-1 and labeling the dependency relationship tree of each node type, calculating the node type as the node which is closest to the preposed auxiliary word in the concept word, the attribute word or the example word and the node type, acquiring a word k corresponding to the node, and if the word list comprises the word k in the corresponding relationship < word list, node object > of one or more word lists output by the module 3 and the node, labeling the node object corresponding to the word list as a target node for output.
Module 5 query of graph database; and inquiring the instance graph aiming at the plurality of node constraint paths output by the module 3 and the target node output by the module 4 to obtain the instance point return of the target node.
In summary, according to the embodiments of the present invention, the natural language technology is used to perform semantic parsing on the user question at a word level and a sentence level, and the results of the semantic parsing and the sentence level are combined to parse the object and the query path corresponding to the node in the knowledge graph from the user question, so as to solve the problem that the traditional graph-based question-answering system has limited types of recoverable questions and is limited by the knowledge graph design.
Method embodiment
According to an embodiment of the present invention, a method for knowledge-graph question-answering is provided, fig. 4 is a flowchart of the method for knowledge-graph question-answering according to the embodiment of the present invention, as shown in fig. 4, the method for knowledge-graph question-answering according to the embodiment of the present invention specifically includes:
step 401, pre-storing a concept graph and an instance graph, wherein the concept graph is used for describing types of concept nodes, attribute information of the concept nodes of each type and relations among the concept nodes of different types, and the instance graph is used for storing instance information corresponding to the concept graph;
step 402, pre-storing a dictionary required for semantic analysis of a question of a user; the dictionary specifically includes: the system comprises a concept synonym dictionary, an attribute synonym dictionary, an example synonym dictionary, an attribute-concept dictionary, an example-concept dictionary and a preposition dictionary, wherein the concept synonym dictionary is used for maintaining all possible descriptions of each concept in a concept map, the attribute synonym dictionary is used for maintaining all possible descriptions of attributes in the concept map, the example synonym dictionary is used for maintaining all possible descriptions of each example in the example map, the attribute-concept dictionary is used for maintaining concepts corresponding to each standard attribute, the example-concept dictionary is used for maintaining concepts to which each standard example belongs, and the preposition dictionary is used for maintaining spoken words with the part of speech being prepositions.
Step 403, receiving a user question input by a user, performing word segmentation and syntactic dependency analysis on the user question to obtain a dependency relationship tree, performing node classification and pruning on the dependency relationship tree to obtain a pruned and type-labeled dependency relationship tree, outputting a corresponding relationship between a word list and a node object constraint path for the pruned and type-labeled dependency relationship tree based on a dictionary and a knowledge graph, obtaining a target node based on the corresponding relationship, querying an instance graph according to the target node and the node object constraint path, obtaining an instance point of the target node, and displaying the returned instance point to the user.
Step 403 specifically includes:
performing word segmentation on a user question by adopting a word segmentation method based on a dictionary, performing dependency syntax analysis on the word-segmented question, and outputting a dependency relationship tree representing the dependency logic relationship between each word in the sentence;
dividing the nodes in the dependency relationship tree into six types of example words, concept words, attribute words, preposition auxiliary words, other auxiliary words and useless words, removing the nodes corresponding to the useless words in the dependency relationship tree, and outputting a dependency relationship tree with branches and labeling each node type; the method specifically comprises the following steps: firstly, judging whether words in nodes in the dependency relationship tree are entries in a concept synonym dictionary, an attribute synonym dictionary, an instance synonym dictionary and a preposition dictionary; if the vocabulary entry is in the concept synonym dictionary, determining that the node type is a concept word, if the vocabulary entry is in the attribute synonym dictionary, determining that the node type is an attribute word, if the vocabulary entry is in the example synonym dictionary, determining that the node type is an example word, and if the vocabulary entry is in the preposition dictionary, determining that the node type is a preposition auxiliary word; if the entries do not belong to the five classes of dictionaries, further judging whether the node is a leaf node, if so, determining that the node type is a useless word, and if not, determining that the node type is other auxiliary words;
modifying the dependency relationship tree which is pruned and labeled with each node type, packaging a keyword for describing one node of the knowledge graph into one node object by combining the triple information of the knowledge graph, and outputting the corresponding relationship between a word list and the node object, namely the word list, the node object and the constraint path of each node object; the method specifically comprises the following steps: for the dependency relationship tree which is pruned and labeled with each node type, sequentially traversing each node, if the relationship between the current node and the father node n0 is parallel, acquiring the father node n1 and the relationship between the current node and the father node e1 of the father node, deleting the relationship between the current node and the father node n0, changing the father node of the current node into the node n1, changing the relationship between the current node and the father node into e1, and outputting a modified dependency relationship tree; for the modified dependency relationship tree, starting from each leaf node, naming the leaf node as a current node, and taking a constraint path as current node information: 1/type 1, and setting the direction type of the constraint path as-1; aiming at each < constraint path, direction type >, the last node of the current constraint path is obtained as the current node and the direction type of the constraint path is the current direction type, the father node of the current node is searched, if no father node exists, the current constraint path is directly output; if the subscript of the father node word in the question is larger than the subscript of the word of the current node, setting the direction type a as 0, if the subscript of the father node word in the question is smaller than the subscript of the word of the current node, setting the direction type a as 1, if the current direction type is-1 or is the same as a, splicing father node information, namely word 2 and node type 2, behind the current constraint path, and setting the corresponding direction type as a to obtain a new constraint path; if the current direction type is not-1 and is different from a, outputting the current constraint path, and setting a new constraint path as follows: 2/type 2, the corresponding direction type is set as-1, and a plurality of < word constraint paths, direction types > are output aiming at each question; traversing each of a plurality of word constraint paths and direction types, if the last node of one word constraint path is the same as the first node in the rest of the word constraint paths and the direction types are respectively 0, 1 or 1 and 0, splicing the word constraint path with the direction type of 1 to the back with the direction type of 0 for output in a reverse order, otherwise, directly outputting the word constraint path; for each output word constraint path (word 1/type 1) (word 2/type 2) … (word m/type m) where m > ═ 1, traversing each word i/type i from left to right, where i > ═ 1 and i < ═ m, type i skipping continues if it is "other assist words" or "preposition assist words"; if the word is the concept word, searching a concept standard word corresponding to the word i based on the concept synonym dictionary, and enabling the standard word i to be the concept standard word and the concept i to be the concept standard word; if the word is 'example word', searching an example standard word corresponding to the word i based on the example synonym dictionary, searching a concept standard word corresponding to the example standard word based on the example-concept dictionary, and enabling the standard word i to be the example standard word, wherein the concept i is the concept standard word; if the word is the 'attribute word', searching an attribute standard word corresponding to the word i based on the attribute synonym dictionary, searching a concept standard word corresponding to the attribute standard word based on the attribute-concept dictionary, and enabling the standard word i to be the attribute standard word and the concept i to be the concept standard word, and outputting a standardized word constraint path (word 1/standard word 1, type 1, concept 1) (word 2/standard word 2, type 2, concept 2) … (word n/standard word n, type n, concept n), wherein n < ═ m. For each normalized word constraint path (word 1/standard word 1, type 1, concept 1) · (word 2/standard word 2, type 2, concept 2) … (word n/standard word n, type n, concept n), encapsulating concepts identical from left to right into node objects, outputting a correspondence relationship between a word list and a node object < word list i, word list i/node object i > and a node object constraint path (word list 1, node object 1) · (word list 2, node object 2) … (word list z, node object z), where z < ═ n; comparing every two of a plurality of word lists i, i '/node objects i' > in pairs, if a condition 1 exists, namely a word list i 'corresponding to the word list i comprises a word list j' corresponding to a word list j, naming a union of the word list i 'and the list i' as a word list k ', mutually supplementing and perfecting fields in a node object i' corresponding to the word list i and a node object j 'corresponding to the word list j to form a node k', further changing the word list i, i '/node object i' > into a word list i, k '/node object k' >, < word list j, j '/node object j' > into a word list j, k '/node object k' >, continuing to perfect the node objects until the word list i, i '/node object i' > do not satisfy the condition 1 in pairs, for multiple node object constraint paths, modifying each node object i into a new node i ' corresponding to a word list i, and correspondingly outputting a node object constraint path (node object 1 ') (node object 2 ') … (node object z '), wherein z ' < ═ n, and the corresponding relationship between the word list and the node object < word list i ', node object i ' >;
based on the modified dependency relationship tree, calculating a node with a node type being a concept word, an attribute word or a node with a closest distance to a preposed auxiliary word with a node type being a preposed auxiliary word in an example word, acquiring a word k corresponding to the node, judging whether the word lists in one or more word lists and the corresponding relationship < the word lists and the node objects > contain the word k, and if so, marking the node objects corresponding to the word lists as target nodes for outputting;
and acquiring and feeding back the instance points of the target node according to the multiple node constraint paths and the target node query instance graph.
The embodiment of the present invention is a method embodiment corresponding to the system embodiment described above, and specific operations of each step may be understood with reference to the description of the system embodiment, which is not described herein again.
Apparatus embodiment one
An embodiment of the present invention provides a knowledge-graph question-answering device, as shown in fig. 5, including: a memory 50, a processor 52 and a computer program stored on the memory 50 and executable on the processor 52, which computer program, when executed by the processor 52, performs the steps as described in the method embodiments.
Device embodiment II
An embodiment of the present invention provides a computer-readable storage medium, on which an implementation program for information transmission is stored, and when the program is executed by the processor 52, the steps described in the method embodiment are implemented.
The computer-readable storage medium of this embodiment includes, but is not limited to: ROM, RAM, magnetic or optical disks, and the like.
It will be apparent to those skilled in the art that the modules or steps of the present invention described above may be implemented by a general purpose computing device, they may be centralized on a single computing device or distributed across a network of multiple computing devices, and alternatively, they may be implemented by program code executable by a computing device, such that they may be stored in a storage device and executed by a computing device, and in some cases, the steps shown or described may be performed in an order different than that described herein, or they may be separately fabricated into individual integrated circuit modules, or multiple ones of them may be fabricated into a single integrated circuit module. Thus, the present invention is not limited to any specific combination of hardware and software.
Finally, it should be noted that: the above embodiments are only used to illustrate the technical solution of the present invention, and not to limit the same; while the invention has been described in detail and with reference to the foregoing embodiments, it will be understood by those skilled in the art that: the technical solutions described in the foregoing embodiments may still be modified, or some or all of the technical features may be equivalently replaced; and the modifications or the substitutions do not make the essence of the corresponding technical solutions depart from the scope of the technical solutions of the embodiments of the present invention.

Claims (10)

1. A knowledge-graph question-answering system, comprising:
the data layer is used for storing a concept graph and an example graph, wherein the concept graph is used for describing types of concept nodes, attribute information of the concept nodes of each type and relations among the concept nodes of different types, and the example graph is used for storing example information corresponding to the concept graph;
the model layer is used for storing a dictionary required for semantic analysis of the question of the user;
the processing layer is used for performing word segmentation and syntactic dependency analysis on a user question to obtain a dependency relationship tree, performing node classification and pruning on the dependency relationship tree to obtain a pruned and type-labeled dependency relationship tree, outputting a corresponding relationship between a word list and a node object constraint path aiming at the pruned and type-labeled dependency relationship tree on the basis of a dictionary and a knowledge graph, acquiring a target node on the basis of the corresponding relationship, and inquiring an instance graph according to the target node and the node object constraint path to acquire an instance point of the target node;
and the application layer is used for receiving the user question input by the user and displaying the returned example points to the user.
2. The system according to claim 1, wherein the dictionary specifically comprises: the system comprises a concept synonym dictionary, an attribute synonym dictionary, an example synonym dictionary, an attribute-concept dictionary, an example-concept dictionary and a preposition dictionary, wherein the concept synonym dictionary is used for maintaining all possible descriptions of each concept in a concept map, the attribute synonym dictionary is used for maintaining all possible descriptions of attributes in the concept map, the example synonym dictionary is used for maintaining all possible descriptions of each example in the example map, the attribute-concept dictionary is used for maintaining concepts corresponding to each standard attribute, the example-concept dictionary is used for maintaining concepts to which each standard example belongs, and the preposition dictionary is used for maintaining spoken words with the part of speech being prepositions.
3. The system according to claim 1, characterized in that the processing layer comprises in particular:
the first submodule is used for segmenting words of a user question by adopting a word segmentation method based on a dictionary, carrying out dependency syntax analysis on the segmented question and outputting a dependency relationship tree representing the dependency logic relationship between each word in a sentence;
the second sub-module is used for dividing the nodes in the dependency relationship tree into six types of example words, concept words, attribute words, preposition auxiliary words, other auxiliary words and useless words, removing the nodes corresponding to the useless words in the dependency relationship tree, and outputting the dependency relationship tree with pruning and labeling each node type;
the third sub-module is used for correcting the dependency relationship tree which is pruned and labeled with each node type, packaging a keyword for describing one node of the knowledge graph into a node object by combining the triple information of the knowledge graph, and outputting the corresponding relationship between a word list and the node object, namely the word list, the node object and the constraint path of each node object;
a fourth sub-module, configured to calculate, based on the modified dependency relationship tree, a node whose node type is the closest node to an auxiliary word whose node type is a preposition in a concept word, an attribute word, or an instance word, obtain a word k corresponding to the node, determine whether the word list in one or more word lists and the corresponding relationship < word list, node object > contains the word k, and if yes, mark the node object corresponding to the word list as a target node and output the target node;
and the fifth sub-module is used for acquiring the instance points of the target node according to the plurality of node constraint paths and the target node query instance graph and feeding back the instance points to the application layer.
4. The system of claim 1, wherein the second submodule is specifically configured to:
firstly, judging whether words in nodes in the dependency relationship tree are entries in a concept synonym dictionary, an attribute synonym dictionary, an instance synonym dictionary and a preposition dictionary; if the vocabulary entry is in the concept synonym dictionary, determining that the node type is a concept word, if the vocabulary entry is in the attribute synonym dictionary, determining that the node type is an attribute word, if the vocabulary entry is in the example synonym dictionary, determining that the node type is an example word, and if the vocabulary entry is in the preposition dictionary, determining that the node type is a preposition auxiliary word; if the entries do not belong to the five classes of dictionaries, whether the node is a leaf node is further judged, if the node is the leaf node, the node type is determined to be a useless word, and if not, the node type is other auxiliary words.
5. The system of claim 1, wherein the third submodule is specifically configured to:
aiming at the dependency relationship tree which is pruned and labeled with each node type, sequentially traversing each node, if the relationship between the current node and the father node n0 is parallel, acquiring the father node n1 and the relationship between the current node and the father node e1 of the father node, deleting the relationship between the current node and the father node n0, changing the father node of the current node into the node n1, changing the relationship between the current node and the father node into e1, and outputting a modified dependency relationship tree;
for the modified dependency relationship tree, starting from each leaf node, naming the leaf node as a current node, and taking a constraint path as current node information: 1/type 1, and setting the direction type of the constraint path as-1;
aiming at each < constraint path, direction type >, the last node of the current constraint path is obtained as the current node and the direction type of the constraint path is the current direction type, the father node of the current node is searched, if no father node exists, the current constraint path is directly output; if the subscript of the father node word in the question is larger than the subscript of the word of the current node, setting the direction type a as 0, if the subscript of the father node word in the question is smaller than the subscript of the word of the current node, setting the direction type a as 1, if the current direction type is-1 or is the same as a, splicing father node information, namely word 2 and node type 2, behind the current constraint path, and setting the corresponding direction type as a to obtain a new constraint path; if the current direction type is not-1 and is different from a, outputting the current constraint path, and setting a new constraint path as follows: 2/type 2, the corresponding direction type is set as-1, and a plurality of < word constraint paths, direction types > are output aiming at each question;
traversing each of a plurality of word constraint paths and direction types, if the last node of one word constraint path is the same as the first node in the rest of the word constraint paths and the direction types are respectively 0, 1 or 1 and 0, splicing the word constraint path with the direction type of 1 to the back with the direction type of 0 for output in a reverse order, otherwise, directly outputting the word constraint path;
for each output word constraint path (word 1/type 1) (word 2/type 2) … (word m/type m) where m > ═ 1, traversing each word i/type i from left to right, where i > ═ 1 and i < ═ m, type i skipping continues if it is "other assist words" or "preposition assist words"; if the word is the concept word, searching a concept standard word corresponding to the word i based on the concept synonym dictionary, and enabling the standard word i to be the concept standard word and the concept i to be the concept standard word; if the word is 'example word', searching an example standard word corresponding to the word i based on the example synonym dictionary, searching a concept standard word corresponding to the example standard word based on the example-concept dictionary, and enabling the standard word i to be the example standard word, wherein the concept i is the concept standard word; if the word is the 'attribute word', searching an attribute standard word corresponding to the word i based on the attribute synonym dictionary, searching a concept standard word corresponding to the attribute standard word based on the attribute-concept dictionary, and enabling the standard word i to be the attribute standard word and the concept i to be the concept standard word, and outputting a standardized word constraint path (word 1/standard word 1, type 1, concept 1) (word 2/standard word 2, type 2, concept 2) … (word n/standard word n, type n, concept n), wherein n < ═ m.
For each normalized word constraint path (word 1/standard word 1, type 1, concept 1) · (word 2/standard word 2, type 2, concept 2) … (word n/standard word n, type n, concept n), encapsulating concepts identical from left to right into node objects, outputting a correspondence relationship between a word list and a node object < word list i, word list i/node object i > and a node object constraint path (word list 1, node object 1) · (word list 2, node object 2) … (word list z, node object z), where z < ═ n;
comparing every two of a plurality of word lists i, i '/node objects i' > in pairs, if a condition 1 exists, namely a word list i 'corresponding to the word list i comprises a word list j' corresponding to a word list j, naming a union of the word list i 'and the list i' as a word list k ', mutually supplementing and perfecting fields in a node object i' corresponding to the word list i and a node object j 'corresponding to the word list j to form a node k', further changing the word list i, i '/node object i' > into a word list i, k '/node object k' >, < word list j, j '/node object j' > into a word list j, k '/node object k' >, continuing to perfect the node objects until the word list i, i '/node object i' > do not satisfy the condition 1 in pairs, and for the multiple node object constraint paths, modifying the node object i into a new node i ' corresponding to the word list i, and correspondingly outputting a node object constraint path (node object 1 ') (node object 2 ') … (node object z '), wherein z ' < ═ n, and the corresponding relation between the word list and the node object < word list i ', node object i ' >, wherein the multiple node object constraint paths are complete.
6. A knowledge-graph question-answering method is characterized by comprising the following steps:
the method comprises the steps of preserving a concept graph and an example graph in advance, wherein the concept graph is used for describing types of concept nodes, attribute information of the concept nodes of each type and relations among the concept nodes of different types, and the example graph is used for preserving example information corresponding to the concept graph;
pre-storing a dictionary required for semantic analysis of a question of a user;
receiving a user question input by a user, performing word segmentation and syntactic dependency analysis on the user question to obtain a dependency relationship tree, performing node classification and pruning on the dependency relationship tree to obtain a pruned and type-marked dependency relationship tree, outputting a corresponding relationship between a word list and a node object constraint path aiming at the pruned and type-marked dependency relationship tree, acquiring a target node based on a concept graph, inquiring an example graph according to the target node and the node object constraint path, acquiring an example point of the target node, and displaying the returned example point to the user.
7. The method according to claim 6, wherein the dictionary specifically comprises: the system comprises a concept synonym dictionary, an attribute synonym dictionary, an example synonym dictionary, an attribute-concept dictionary, an example-concept dictionary and a preposition dictionary, wherein the concept synonym dictionary is used for maintaining all possible descriptions of each concept in a concept map, the attribute synonym dictionary is used for maintaining all possible descriptions of attributes in the concept map, the example synonym dictionary is used for maintaining all possible descriptions of each example in the example map, the attribute-concept dictionary is used for maintaining concepts corresponding to each standard attribute, the example-concept dictionary is used for maintaining concepts to which each standard example belongs, and the preposition dictionary is used for maintaining spoken words with the part of speech being prepositions.
8. The method according to claim 6, wherein performing word segmentation and syntactic dependency analysis on the user question based on the dictionary to obtain a dependency relationship tree, performing node classification and pruning on the dependency relationship tree to obtain a pruned and typed dependency relationship tree, outputting a correspondence between a word list and a node object constraint path for the pruned and typed dependency relationship tree based on the dictionary and a knowledge graph, obtaining a target node based on the correspondence, and querying an instance graph according to the target node and the node object constraint path to obtain an instance point of the target node specifically comprises:
performing word segmentation on a user question by adopting a word segmentation method based on a dictionary, performing dependency syntax analysis on the word-segmented question, and outputting a dependency relationship tree representing the dependency logic relationship between each word in the sentence;
dividing the nodes in the dependency relationship tree into six types of example words, concept words, attribute words, preposition auxiliary words, other auxiliary words and useless words, removing the nodes corresponding to the useless words in the dependency relationship tree, and outputting a dependency relationship tree with branches and labeling each node type; the method specifically comprises the following steps: firstly, judging whether words in nodes in the dependency relationship tree are entries in a concept synonym dictionary, an attribute synonym dictionary, an instance synonym dictionary and a preposition dictionary; if the vocabulary entry is in the concept synonym dictionary, determining that the node type is a concept word, if the vocabulary entry is in the attribute synonym dictionary, determining that the node type is an attribute word, if the vocabulary entry is in the example synonym dictionary, determining that the node type is an example word, and if the vocabulary entry is in the preposition dictionary, determining that the node type is a preposition auxiliary word; if the entries do not belong to the five classes of dictionaries, further judging whether the node is a leaf node, if so, determining that the node type is a useless word, and if not, determining that the node type is other auxiliary words;
modifying the dependency relationship tree which is pruned and labeled with each node type, packaging a keyword for describing one node of the knowledge graph into one node object by combining the triple information of the knowledge graph, and outputting the corresponding relationship between a word list and the node object, namely the word list, the node object and the constraint path of each node object; the method specifically comprises the following steps: for the dependency relationship tree which is pruned and labeled with each node type, sequentially traversing each node, if the relationship between the current node and the father node n0 is parallel, acquiring the father node n1 and the relationship between the current node and the father node e1 of the father node, deleting the relationship between the current node and the father node n0, changing the father node of the current node into the node n1, changing the relationship between the current node and the father node into e1, and outputting a modified dependency relationship tree; for the modified dependency relationship tree, starting from each leaf node, naming the leaf node as a current node, and taking a constraint path as current node information: 1/type 1, and setting the direction type of the constraint path as-1; aiming at each < constraint path, direction type >, the last node of the current constraint path is obtained as the current node and the direction type of the constraint path is the current direction type, the father node of the current node is searched, if no father node exists, the current constraint path is directly output; if the subscript of the father node word in the question is larger than the subscript of the word of the current node, setting the direction type a as 0, if the subscript of the father node word in the question is smaller than the subscript of the word of the current node, setting the direction type a as 1, if the current direction type is-1 or is the same as a, splicing father node information, namely word 2 and node type 2, behind the current constraint path, and setting the corresponding direction type as a to obtain a new constraint path; if the current direction type is not-1 and is different from a, outputting the current constraint path, and setting a new constraint path as follows: 2/type 2, the corresponding direction type is set as-1, and a plurality of < word constraint paths, direction types > are output aiming at each question; traversing each of a plurality of word constraint paths and direction types, if the last node of one word constraint path is the same as the first node in the rest of the word constraint paths and the direction types are respectively 0, 1 or 1 and 0, splicing the word constraint path with the direction type of 1 to the back with the direction type of 0 for output in a reverse order, otherwise, directly outputting the word constraint path; for each output word constraint path (word 1/type 1) (word 2/type 2) … (word m/type m) where m > ═ 1, traversing each word i/type i from left to right, where i > ═ 1 and i < ═ m, type i skipping continues if it is "other assist words" or "preposition assist words"; if the word is the concept word, searching a concept standard word corresponding to the word i based on the concept synonym dictionary, and enabling the standard word i to be the concept standard word and the concept i to be the concept standard word; if the word is 'example word', searching an example standard word corresponding to the word i based on the example synonym dictionary, searching a concept standard word corresponding to the example standard word based on the example-concept dictionary, and enabling the standard word i to be the example standard word, wherein the concept i is the concept standard word; if the word is the 'attribute word', searching an attribute standard word corresponding to the word i based on the attribute synonym dictionary, searching a concept standard word corresponding to the attribute standard word based on the attribute-concept dictionary, and enabling the standard word i to be the attribute standard word and the concept i to be the concept standard word, and outputting a standardized word constraint path (word 1/standard word 1, type 1, concept 1) (word 2/standard word 2, type 2, concept 2) … (word n/standard word n, type n, concept n), wherein n < ═ m. For each normalized word constraint path (word 1/standard word 1, type 1, concept 1) · (word 2/standard word 2, type 2, concept 2) … (word n/standard word n, type n, concept n), encapsulating concepts identical from left to right into node objects, outputting a correspondence relationship between a word list and a node object < word list i, word list i/node object i > and a node object constraint path (word list 1, node object 1) · (word list 2, node object 2) … (word list z, node object z), where z < ═ n; comparing every two of a plurality of word lists i, i '/node objects i' > in pairs, if a condition 1 exists, namely a word list i 'corresponding to the word list i comprises a word list j' corresponding to a word list j, naming a union of the word list i 'and the list i' as a word list k ', mutually supplementing and perfecting fields in a node object i' corresponding to the word list i and a node object j 'corresponding to the word list j to form a node k', further changing the word list i, i '/node object i' > into a word list i, k '/node object k' >, < word list j, j '/node object j' > into a word list j, k '/node object k' >, continuing to perfect the node objects until the word list i, i '/node object i' > do not satisfy the condition 1 in pairs, for multiple node object constraint paths, modifying each node object i into a new node i ' corresponding to a word list i, and correspondingly outputting a node object constraint path (node object 1 ') (node object 2 ') … (node object z '), wherein z ' < ═ n, and the corresponding relationship between the word list and the node object < word list i ', node object i ' >;
based on the modified dependency relationship tree, calculating a node with a node type being a concept word, an attribute word or a node with a closest distance to a preposed auxiliary word with a node type being a preposed auxiliary word in an example word, acquiring a word k corresponding to the node, judging whether the word lists in one or more word lists and the corresponding relationship < the word lists and the node objects > contain the word k, and if so, marking the node objects corresponding to the word lists as target nodes for outputting;
and acquiring and feeding back the instance points of the target node according to the multiple node constraint paths and the target node query instance graph.
9. A knowledge-graph question-answering apparatus, comprising: memory, a processor and a computer program stored on the memory and executable on the processor, the computer program, when executed by the processor, implementing the steps of the method of knowledge-graph question-answering according to any one of claims 6 to 8.
10. A computer-readable storage medium, characterized in that the computer-readable storage medium has stored thereon an implementation program of information transfer, which when executed by a processor implements the steps of the knowledge-graph question-answering method according to any one of claims 6 to 8.
CN202110270515.3A 2021-03-12 2021-03-12 Knowledge graph question-answering system, method and device Pending CN113157875A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110270515.3A CN113157875A (en) 2021-03-12 2021-03-12 Knowledge graph question-answering system, method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110270515.3A CN113157875A (en) 2021-03-12 2021-03-12 Knowledge graph question-answering system, method and device

Publications (1)

Publication Number Publication Date
CN113157875A true CN113157875A (en) 2021-07-23

Family

ID=76886867

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110270515.3A Pending CN113157875A (en) 2021-03-12 2021-03-12 Knowledge graph question-answering system, method and device

Country Status (1)

Country Link
CN (1) CN113157875A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114186689A (en) * 2022-02-14 2022-03-15 支付宝(杭州)信息技术有限公司 Methods, systems, apparatus, and media for path discovery in a knowledge graph
CN115170917A (en) * 2022-06-20 2022-10-11 美的集团(上海)有限公司 Image processing method, electronic device, and storage medium

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013084136A (en) * 2011-10-11 2013-05-09 Nippon Hoso Kyokai <Nhk> Semantic analysis device and program thereof
CN111708874A (en) * 2020-08-24 2020-09-25 湖南大学 Man-machine interaction question-answering method and system based on intelligent complex intention recognition

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013084136A (en) * 2011-10-11 2013-05-09 Nippon Hoso Kyokai <Nhk> Semantic analysis device and program thereof
CN111708874A (en) * 2020-08-24 2020-09-25 湖南大学 Man-machine interaction question-answering method and system based on intelligent complex intention recognition

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
JUNWEI BAO 等: "Constraint-based question answering with knowledge graph", 《PROCEEDINGS OF COLING 2016, THE 26TH INTERNATIONAL CONFERENCE ON COMPUTATIONAL LINGUISTICS: TECHNICAL PAPERS》, 31 December 2016 (2016-12-31), pages 2503 *
宋巍: "基于句法特征的代词消解方法研究", 《中国优秀硕士学位论文全文数据库 信息科技辑》, 15 July 2012 (2012-07-15), pages 138 - 2788 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114186689A (en) * 2022-02-14 2022-03-15 支付宝(杭州)信息技术有限公司 Methods, systems, apparatus, and media for path discovery in a knowledge graph
CN114186689B (en) * 2022-02-14 2022-05-20 支付宝(杭州)信息技术有限公司 Methods, systems, apparatus, and media for path discovery in a knowledge graph
CN115170917A (en) * 2022-06-20 2022-10-11 美的集团(上海)有限公司 Image processing method, electronic device, and storage medium
CN115170917B (en) * 2022-06-20 2023-11-07 美的集团(上海)有限公司 Image processing method, electronic device and storage medium

Similar Documents

Publication Publication Date Title
CN112069298B (en) Man-machine interaction method, device and medium based on semantic web and intention recognition
CN109684448B (en) Intelligent question and answer method
CN110362660B (en) Electronic product quality automatic detection method based on knowledge graph
CN109800284B (en) Task-oriented unstructured information intelligent question-answering system construction method
CN104657440B (en) Structured query statement generation system and method
CN111291161A (en) Legal case knowledge graph query method, device, equipment and storage medium
US20130290338A1 (en) Method and apparatus for processing electronic data
US20150310073A1 (en) Finding patterns in a knowledge base to compose table answers
US20160275196A1 (en) Semantic search apparatus and method using mobile terminal
CN104657439A (en) Generation system and method for structured query sentence used for precise retrieval of natural language
CN107885786A (en) Towards the Natural Language Query Interface implementation method of big data
CN102402561B (en) Searching method and device
CN113590784B (en) Triplet information extraction method and device, electronic equipment and storage medium
CN116991869A (en) Method for automatically generating database query statement based on NLP language model
CN109783806A (en) A kind of text matching technique using semantic analytic structure
CN113157875A (en) Knowledge graph question-answering system, method and device
CN110532358A (en) A kind of template automatic generation method towards knowledge base question and answer
CN114218472A (en) Intelligent search system based on knowledge graph
CN114625748A (en) SQL query statement generation method and device, electronic equipment and readable storage medium
CN115600593A (en) Method and device for acquiring key content of literature
CN113377739A (en) Knowledge graph application method, knowledge graph application platform, electronic equipment and storage medium
CN117473054A (en) Knowledge graph-based general intelligent question-answering method and device
CN108536796B (en) Heterogeneous ontology matching method and system based on graph
CN114490709B (en) Text generation method and device, electronic equipment and storage medium
CN111783465B (en) Named entity normalization method, named entity normalization system and related device

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination