Method and system for searching medical entities based on knowledge graph embedding and keywords

JP2025541055A5Pending Publication Date: 2026-03-02ZHEJIANG UNIV OF SCI & TECH
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
JP2025503495
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Priority Date
2023-11-27
Filing Date
2023-11-28
Publication Date
2026-03-02

AI Technical Summary

Technical Problem

Conventional methods for searching medical entities on vectorized knowledge graphs fail to accurately identify and prioritize search results that meet user expectations due to the inability to incorporate all query intents and constraints, leading to irrelevant or wide-ranging search outcomes.

Method used

A method and system for searching medical entities using knowledge graph embedding and keywords, involving query tag tree generation, screening, and result ordering based on spatial distance and neighborhood matching to enhance search precision and relevance.

Benefits of technology

The method effectively filters and ranks search results by incorporating keyword information and spatial distances, improving search accuracy and user experience by prioritizing relevant entities.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 00000000_0000_ABST
    Figure 00000000_0000_ABST
Patent Text Reader

Abstract

The present invention discloses a method and system for searching medical entities based on knowledge graph embedding and keywords, including generating a query tag tree, screening the query tag tree, and ordering query results. A corresponding embedded search formula is generated by analyzing the natural language of the query, and results are calculated in the knowledge graph using the formula. The search results are then stored in a tree structure. The query intent that cannot be generated is used as a keyword to search for the keyword's neighbors in the medical knowledge graph, and the query tag tree is further screened. The results are ordered by the spatial distance of the nodes in the tag tree in the knowledge graph, and the search results are returned. This method uses a keyword container to store information on some words for which search formulas cannot be directly generated, preventing the loss of key information. The keywords stored in the keyword container are used to screen nodes, reducing the amount of unnecessary information returned.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention belongs to the technical field of computer applications and relates to a method and system for searching medical entities based on knowledge graph embedding and keywords. [Background technology]

[0002] A knowledge graph is a graph structure used to display and organize knowledge relationships, allowing computers to understand and infer information about the relationships between entities, and providing better support for applications in natural language processing such as question-answering, recommendation, and search. The basic concepts of a knowledge graph include entities, attributes, relationships, nodes, edges, graphs, and three tuples. Multiple entities within a neighborhood can be collectively called an ontology. An attribute is the name or description of an entity, and a relationship is a directional connection between two entities. A triple is used to represent the basic unit in a knowledge graph and consists of a subject, a predicate, and an object.

[0003] In the application of knowledge graphs to the medical field, diseases, symptoms, drugs, doctors, and patients can be viewed as entities, and relationships between different entities can include "treatment," "symptoms present," and "affiliation." (Disease A, symptoms present, symptom B) can form a triplet in the medical knowledge graph. Compared with traditional knowledge bases, using a knowledge graph embedding model to represent a vectorized medical knowledge graph can integrate, understand, and apply large amounts of medical information, allowing computers to efficiently process and analyze knowledge through vector-to-vector calculations. It also helps doctors better understand the relationships between different diseases and their symptoms, supporting clinical decision-making and diagnosis. It also allows medical students, patients, and their families to more quickly obtain the medical entity information they need, providing a better search experience for users.

[0004] When searching on a vectorized medical knowledge graph, in order to narrow the search scope and clarify the search purpose, conventional methods mainly understand the user's query intent by identifying named entities and extracting relationships. This means that multiple constraints are usually added to the search statement. This can lead to the inability to identify constraints that do not belong to named entities or relationships. Since these constraints are not incorporated into the search formula embedded in the knowledge graph, the final search results may not meet the user's expectations. Therefore, a special strategy must be adopted to address this situation in order to better meet the user's search needs. Summary of the Invention

[0005] To address the problems of the prior art, the present invention proposes a method and system for searching medical entities based on knowledge graph embedding and keywords, which can be effectively applied to searching knowledge graphs in the medical field.

[0006] In a first aspect, the present invention provides a medical entity search method based on knowledge graph embedding and keywords, including generating a query tag tree, screening the query tag tree, and ordering the query results.

[0007] The query tag tree is generated by analyzing the natural language of the query, generating a corresponding knowledge graph according to the analysis result and embedding it into the search formula, then calculating the results in a vectorized representation of the knowledge graph using the formula, and saving the search results in a tree structure. The query tag tree is screened using the query intent that cannot be generated in the embedded search formula of the knowledge graph as a keyword. The query tag tree is further screened according to the proximity of the keyword in the medical knowledge graph. The result generation ordering is performed by ordering the results according to the spatial distance of the nodes in the tag tree in the vectorized representation of the knowledge graph.

[0008] The steps are as follows: Step 1: Analyzing the input question For natural language questions entered by a user, different dependency structures are obtained by analyzing the dependencies between words in the natural language question using dependency syntax. First, for two components in a parallel relationship of the "follow-dependency" type, a dependency structure with overlapping components is found among the remaining dependency structures, and a new dependency structure is constructed with each of the two "follow-dependency" type components using the relationship in that dependency structure. The dependency structures are classified. Three types of dependency structures, "subject," "object," and "sub-or-obj," are traversed, and two dependency structures with overlapping components are combined into triples. For dependency structures that cannot be combined into triples, the components that cannot be combined into triples are placed in a keyword container as keywords. Dependency structures of the "question" type are traversed, and the second part of each is used to generate question items. The remaining dependency structures are discarded.

[0009] Step 2: Triplicate screening For the triples obtained by combining in step 1, use the methods of maximum forward matching and maximum backward matching to entity link each element in the triple with a component in the knowledge graph, and each entity and ontology in the triple obtains a mode layer ontology in the knowledge graph. All triples are traversed, and triples that do not have a structure of <entity, relationship, entity> and triples that have a structure of <entity, relationship, entity> but whose ontologies cannot be connected by a relationship in the mode layer are screened out, and the screened triples are discarded.

[0010] Step 3: Conversion to triads Among the triples retained after screening in step 2, there are two types of triples: the first type of triples contains one named entity and one modal layer ontology, and the second type of triples contains two modal layer ontologies.

[0011] A knowledge graph embedded search formula is generated using the first class of triples to perform a search, and if the found content belongs to a certain mode layer ontology in the second class of triples, the searched content is substituted into the position of the mode layer ontology in the second class of triples, and the second class of triples is transformed into a triple containing one named entity and one mode layer ontology, that is, the second class of triples is transformed into the first class of triples.

[0012] Step 4: Generate a query tag tree After the transformation from the second kind of triples to the first kind of triples is completed, all the found contents are recursively saved in a tree structure, where tag is used to save the name of the entity represented by the current node, children is used to save the child nodes of the current node, parent is used to save the parent node of the current node, and value is used to save the distance between the entity represented by the current node and the entity represented by its parent node, forming a tag tree.

[0013] Step 5: Screening the Query Tag Tree The neighborhood of the keyword stored in the keyword container in step 1 is searched for in the coded knowledge graph, then the node that is the same as the neighborhood of the keyword is searched for in the query tag tree generated in step 4 and set as the tag node, and all other sibling nodes and nodes below the sibling nodes of the tag node in the query tag tree are deleted. The query tag tree after some nodes have been deleted is saved until the neighborhood search for all keywords is completed.

[0014] Step 6: Ordering query results Normalize the distances stored in the nodes in the query tag tree that were retained after step 5. The corresponding node in the tag tree of the entity that matches the question type is taken as the target node, and the distance from each target node to the root node is calculated as the final distance in the query tag tree of that entity. For nodes that appear multiple times in the tag tree, the average of the sum of the distances to the root node is taken as the final distance.

[0015] All target nodes are ordered in descending order of the number of times they appear in the tag tree, and entities with the same number of times the target node appears are ordered in ascending order of their final distances. The ordered results are returned to the user as search results.

[0016] In a second aspect, the present invention provides a medical entity search system for implementing the method, the system including: a query tag tree generation module that analyzes the natural sentence of the query, and generates a corresponding knowledge graph embedded search formula based on the analysis result, and calculates the result in a vectorized displayed knowledge graph based on the formula, stores the search result in a tree structure, and obtains a query tag tree; A query tag tree screening module uses a query intent that cannot be generated in a knowledge graph embedded search formula as a keyword, and screens nodes in the query tag tree according to the keyword's neighborhood information in the medical knowledge graph. The query tag tree is a query result ordering module that screens the query results, calculates the spatial distances in the vectorized representation knowledge graph of the remaining nodes in the query tag tree after screening, and orders the nodes.

[0017] The present invention has the following beneficial effects. 1. Use keyword containers to partially store word information that cannot be directly generated as a search query, thereby avoiding the loss of keyword information. 2. During the process of filtering the query tag tree, the keywords stored in the keyword container can be used to filter nodes, reducing the amount of unnecessary information, making the search results more accurate and facilitating users to quickly obtain the information they need from the returned content. 3. By utilizing the characteristics of vectorized knowledge graphs, the spatial distance between entities in the vectorized knowledge graph can be used to rank search results, effectively improving search effectiveness. The more advanced the knowledge graph embedding model used to perform the search, the more significant the effect. [Brief explanation of the drawings]

[0018] [Figure 1] 1 is a component syntax tree in an embodiment. [Figure 2] FIG. 2 is a schematic diagram of dependency syntactic analysis in an embodiment. [Figure 3] FIG. 2 is a schematic diagram of a dependency structure obtained by analysis in an embodiment. [Figure 4] FIG. 1 is a schematic diagram of a triplet combination. [Figure 5] FIG. 1 is a schematic diagram of a recursive method in an embodiment. [Figure 6] FIG. 2 is a schematic diagram of a query tag tree generated in an embodiment. DETAILED DESCRIPTION OF THE INVENTION

[0019] In order to make the objectives, technical solutions and advantages of the embodiments of the present application clearer, the technical solutions of the present application are clearly and completely described below in conjunction with the accompanying drawings, but it is clear that the described embodiments are only some embodiments of the present application, and not all of the embodiments. All other embodiments that can be obtained by those skilled in the art based on the embodiments of the present application without any creative work belong to the scope of protection of the present application.

[0020] The terms "comprises" and "having," and variations thereof, when referring to embodiments of the present application are intended to cover a non-exclusive inclusion. For example, a process, method, system, product, or apparatus comprising a series of steps or units is not limited to the listed steps or units, but may optionally further include other steps or units not listed, or may optionally further include other steps or units inherent to the process, method, product, or apparatus.

[0021] The present invention will now be further described with reference to the accompanying drawings. The present invention provides a method for searching medical entities based on knowledge graph embedding and keywords. Specifically, Step 1: Analyzing the input question A natural language question entered by a user is analyzed using dependency syntax to analyze the dependencies between words in the natural language question, and the sentence structure constructed based on the dependencies.

[0022] This dependency construction first divides a sentence into words, assigns part-of-speech tags to each word, selects a verb from among them as the central word, and creates dependency structures between other words and the central word based on the relationships between subject and predicate, verb and object, and modifier and modified word, and then uses different types of dependency structures to express the grammatical functions between words and the semantic structure of the sentence.

[0023] As shown in Figure 1, for the spontaneously spoken sentence "Medicines taken by patients who have undergone craniotomy" entered by a user, the sentence is first segmented to obtain "Patients who have undergone craniotomy / take / of / drugs." Next, part-of-speech tags are assigned to each word based on the results of word segmentation, resulting in "<craniotomy / NN>, <received / VV>, <had / AS>, <patient / NN>, <of / DEC>, <taken / VV>, <of / DEC>, <drugs / NN>." Finally, a component syntactic tree is constructed from the results of part-of-speech tagging.

[0024] Table 1 shows the parts of speech that appear in Figure 1.

[0025] [Table 1]

[0026] The component syntax tree reconstructs the word segmentation results of a sentence into a tree structure with tagged parts of speech, allowing subsequent operations to more accurately capture the semantic relationships between words and the structure of the sentence.The dependency structure between each word obtained by the component syntax tree is shown in Figure 2, and the corresponding Chinese paraphrases are shown in Table 2.

[0027] [Table 2]

[0028] By first classifying various dependency structures according to the rules in Table 3 and then constructing a triplet based on each dependency structure, we can achieve results similar to those in named entity identification and relationship extraction tasks. Dependency syntax analyzes all components in a sentence, not just named entities and relationships, preventing information loss.

[0029] [Table 3]

[0030] Under the "subject" type are various dependency structure types for subjects, which may contain triplet head entities; under the "object" type are various dependency structure types for objects, which may contain triplet tail entities; under the "sub-or-obj" type are various dependency structure types for adjectives and modifiers, which may contain triplet head and tail entities; under the "question" type are dependency structure types that may contain the purpose of a query, "constant" is a dependency structure type that may form a phrase, and "follow-dependency" is a dependency structure type that combines both.

[0031] For example, for a natural question, "Chief physician who specializes in craniotomy," dependency syntax analysis yields five types of dependency structures as shown in Figure 3, where dobj (specialty-1, craniotomy-2) is classified as type object, acl (doctor-5, specialty-1) as type sub-or-obj, root (root-0, doctor-5) as type question, compound (doctor-5, chief-4) as type constant, and mark (specialty-1, mark-3) does not contain a query intent, so it is discarded without generating a triplet or storing it in a keyword container.

[0032] Once classification is complete, for each pair of dependency structures of type "subject", dependency structures of type "object" or "sub-or-obj" are searched for that have overlapping components, and the two are combined into a single triplet. Next, for each pair of dependency structures of type "object", dependency structures of type "sub-or-obj" are searched for that have overlapping components, and the two are combined into a single triplet. As shown in Figure 4, for dependency structures where no overlapping parts are found, the components that are not part of a triplet are placed into a keyword container. For dependency structures of type "question", question items are generated. Dependency structures that cannot be classified are simply discarded.

[0033] According to the above rules, dobj(specialty-1, craniotomy-2) and acl(doctor-5, speciality-1) in Figure 3 can be combined into one triplet <doctor, speciality, craniotomy> because they have the overlap component "specialty-1." The root (root-0, doctor-5) of type "question" generates the question item "doctor." No other dependency structure can be found for compound(doctor-5, chief-4) that can be combined into a triplet, but "doctor" has already been generated and is included in the triplet <doctor, speciality, craniotomy>, so "chief" is stored in the keyword container. Mark(specialty-1, of-3) does not contain any query intent, so no triplet is generated and it is not stored in the keyword container.

[0034] Step 2: Triplicate screening Ideally, the triples combined through step 1 should have a standard <entity, relationship, entity> structure, and the corresponding ontologies of the two "entities" in the triples in the knowledge graph model layer may be connected by the "relation" described in the triples. However, when faced with some complex syntax, the combined triples do not satisfy the above conditions. For example, a triple in the form <entity, relationship, entity> may actually have no connecting relationship in the knowledge graph model layer, and may not conform to other forms of <entity, relationship, entity>, such as <relation, entity, relationship>. These ineligible triples are redundant information generated in the process of understanding the query statement and are not relevant to subsequent search.

[0035] The triple screening process involves entity-linking each element of all combined triples with the components of the knowledge graph using the methods of maximum forward matching and maximum backward matching, and obtaining the ontology in the model layer corresponding to each entity and ontology of the triples. All triples are traversed, and triples whose structure is not <entity, relationship, entity> and triples whose ontologies of the two entities cannot be connected by a relationship in the model layer are screened and discarded.

[0036] Step 3: Conversion to triads Among the triples retained after the screening in step 2, there are two types of triples: the first type of triples contains one named entity and one modal layer ontology, and the second type of triples contains two modal layer ontologies.

[0037] A knowledge graph embedded search formula is generated using the first class of triples to perform a search, and when the found content belongs to a certain mode layer ontology in the second class of triples, the found content is substituted into the position of the mode layer ontology in the second class of triples, and the second class of triples is transformed into a triple containing one named entity and one mode layer ontology, that is, the second class of triples is transformed into the first class of triples.

[0038] Step 4: Generate a query tag tree After the transformation from the second kind of triples to the first kind of triples is completed, all the found contents are recursively saved in a tree structure, where tag is used to save the name of the entity represented by the current node, children is used to save the child nodes of the current node, parent is used to save the parent node of the current node, and value is used to save the distance between the entity represented by the current node and the entity represented by its parent node, forming a tag tree.

[0039] As shown in Figure 5, four different entities are represented by {a, b, c, d}, {A, B, C, D} are the logical layer ontologies of these entities in the knowledge graph, and v represents the spatial distance between the current node and its parent node. First, we traverse all triple sets and find the triples related to entity a1 corresponding to logical layer ontology A.<a1,rAB,B> Then, the changed spatial position of entity a1 according to the relationship rAB is calculated by the formula a1 × rAB, and the top k entities b1, b2, ..., bk nearest to that position are found. These k entities are set as child nodes of the node corresponding to entity a1 in the tag tree. Furthermore, the triplet<B,rBC,C> is a triplet set of length k<b1,rBC,C> ,<b2,rBC,C> ,...,<bk,rBC,C> Then, the above steps are repeated to find the child nodes of entities b1, b2, ..., bk until all triples are calculated, and the final tag tree is shown in Figure 6, where × is the spatial navigation operation using relations in the knowledge graph embedding model.

[0040] Step 5: Screening the Query Tag Tree In the field of medical entity search, the query intent contained in some search queries cannot be generated into knowledge graph embedded search expressions, and some query intents cannot be fully expressed in the knowledge graph search path, which may result in a wide range of search results being returned, which requires users to search for information that matches their actual query intent among many returned results, which wastes users' time and energy.

[0041] For example, if a user inputs "acute disease requiring vascular surgery" as a query condition, the existing method generates the search formula Edisease × R = Esurgery, where Edisease, Esurgery, and R represent the corresponding vectors in the knowledge graph vector space of "disease," "vascular surgery," and "requires," respectively. However, the query intent of "acute" cannot be generated in the search formula, and the returned results include not only acute diseases such as aneurysm rupture and acute arterial thrombosis, but also chronic diseases such as vascular stenosis and venous dilation, so the user needs extra time to screen the returned results.

[0042] In knowledge graphs, there are attributes that are applicable only to specific entities, and these attributes are also represented as triples. However, incorporating triples containing these attributes into training knowledge graph embedding does not improve the embedding effectiveness. Conversely, this not only wastes training resources but may also have a negative impact on the spatial structure of the final vectorized knowledge graph. While coded knowledge graphs cannot provide machine understanding of the semantic information of entities and relationships like vectorized knowledge graphs, they are well-suited to retaining the unique attributes of these entities. Therefore, during training knowledge graph embedding, attributes belonging to these specific entities are often retained in the coded knowledge graph. Meanwhile, in medical knowledge graph searches, many query intents that cannot be generated from knowledge graph embedding query queries target the attributes of these coded entities. Therefore, in our method, we propose screening the tag tree by searching the coded knowledge graph for the neighborhoods of the keywords stored in the keyword container in Step 1 and then screening the tag tree generated in Step 4 against these neighborhoods to retain results that better match the user's query intent. The specific steps are as follows:

[0043] Step 5.1: For the keywords stored in the keyword container, first, link these keywords with components in the coded representation of the knowledge graph using maximum forward matching and maximum backward matching, and search their neighbors in the knowledge graph. For one keyword key, it can be any one of the triples in the knowledge graph, so each situation should be discussed separately. 1: If key is subject, the neighborhood information of key is {(predicate, object)|(key, predicate, object)}. 2: If key is a predicate, the neighborhood information of key is {(subject, object)|(subject, key, object)}. 3: If the key is an object, the neighborhood information of the key is {(subject, predicate)|(subject, predicate, key)}. 4: If key is an ontology in the mode layer, the neighborhood information of key is {(subject)|(subject, type, key)}.

[0044] Step 5.2: Based on the neighborhood information of the keyword key, search for nodes that are the same as the neighborhood of the keyword in the query tag tree generated in step 4. If all the neighborhoods of a keyword cannot be found in the query tag tree, the keyword is deemed not to be connected to the current query tag tree and is discarded. If a node corresponding to the neighborhood of the keyword is found in the query tag tree, tag that node, and delete other sibling nodes of the tagged node and all nodes under the sibling nodes until the neighborhood search for all keywords is completed, and save the query tag tree after deleting some nodes.

[0045] Step 6: Ordering query results Ordering search results in entity search is important for improving the performance and user experience of a search system. By placing the most relevant entities at the top, users can find information that meets their needs more quickly, reducing browsing time and effort during the search process. Furthermore, grouping similar or overlapping entities helps users better understand the relationships and similarities between different entities in the search results and avoids wasting duplicate information.

[0046] Step 6.1: In the query tag tree, the relevance of a node representing an entity to the user's search target is measured by the number of occurrences of the node and the distance from this node to the root node. Before starting the ordering, we need to normalize the distances held by each node in the tag tree to prevent the average distance of a single jump in the search from being too large and dominating the ordering of the search results. Specifically, , traversing the entire tag tree from the root node, and if the list of child nodes of the current node is not empty, normalizing the distances of the nodes in the list. The formula is as follows:

[0047]

number

[0048] Step 6.2: After the distance normalization is completed, find the corresponding nodes in the tag tree of the entities that match the type of the question item, and use them as target nodes. Calculate the distance from each target node to the root node, and use this as the final distance for the entity. For repeated nodes in the tag tree, use the average of the sum of the distances from these duplicated nodes to the root node as the final distance.

[0049]

number

[0050] Step 6.3: The target nodes are ordered in descending order of the number of times they appear in the tag tree, and for nodes with the same number of appearances, they are ordered in descending order of the final distance. The ordered results are returned to the user as search results.

[0051] To verify the effectiveness of this method, in this example, we use the electronic medical records of some patients with cerebrovascular disease provided by a cooperating hospital as experimental data to generate the corresponding knowledge graph. We designed 609 search terms, each of which is a complex problem involving multiple triplet pairs, and the search targets for the search terms are drugs, diseases, departments, and surgeries.

[0052] The purpose of entity search is to search for entities related to a query from a database containing entity information based on a user's query. Since entity search usually returns a non-fixed number of results, it may be problematic to directly use the evaluation metrics Precision, Recall, and F1, which return a fixed number of results, to evaluate the performance of a method. Therefore, considering the impact of the number of returned results on the metrics, in this embodiment, three metrics, Precision@10, Recall@10, and F1@10, are used to characterize the test results.

[0053] Precision@10: Full name is the precision of the top 10 returned results, calculated as the ratio of the number of correct entities in the top 10 results for the query to the number of entities returned.

[0054]

number

[0055] Recall@10: Full name is the recall of the top 10 returned results, calculated as the ratio of the number of correct entities in the top 10 results for the query to the number of correct entities overall.

[0056]

number

[0057] F1@10: Full name is the balanced F-score of the top 10 returned results, calculated as the harmonic mean of Precision@10 and Recall@10.

[0058]

number

[0059] In this embodiment, the Xiao's path fusion algorithm and the KGEKS search algorithm of the prior art are selected, and comparative experiments are carried out on the TransE, TransD, RotatE and optimized RotatE models, respectively. The experimental results are shown in Table 4.

[0060] [Table 4]

[0061] In order to verify the effectiveness of the query tag tree screening in this method, we conducted ablation experiments, including search experiments involving the tag tree screening process and search experiments not involving the tag tree screening process, and similarly conducted ablation experiments of the tag tree screening algorithm with TransE, TransD, RotatE and the optimized RotatE model, respectively, and the experimental results are shown in Table 5.

[0062] [Table 5]

[0063] Experimental results show that the query tag tree screening algorithm can effectively improve search effectiveness, and the more advanced the knowledge graph embedding model used for searching, the more effective the query tag tree screening algorithm is usually.

[0064] Finally, it should be noted that the above embodiments are merely specific embodiments of the present invention, and are intended to illustrate the technical solutions of the present invention, but not to limit them, and the protection scope of the present invention is not limited thereto. Although the present invention has been described in detail with reference to the above embodiments, those skilled in the art should understand that they can modify or easily change the technical solutions described in the above embodiments within the technical scope disclosed by the present invention. These modifications, changes, or substitutions do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the embodiments of the present invention, and should all be included in the protection scope of the present invention. Therefore, the protection scope of the present invention is based on the claims.

Claims

1. generating a query tag tree, screening the query tag tree, and ordering the query results; the query tag tree is generated by analyzing the natural sentence of the query, and according to the analysis result, generating a search formula to be embedded in the corresponding knowledge graph; then calculating the result in the knowledge graph vectorized by the formula, and saving the search result in a tree structure; the query tag tree is screened by using the query intent that cannot be generated in the embedded search formula in the knowledge graph as a keyword, and screening the nodes of the query tag tree according to the neighborhood information of the keyword in the medical knowledge graph; the query results are ordered by calculating the spatial distance in the vectorized knowledge graph of the remaining nodes in the query tag tree after screening, and returning the query results.

2. Step 1: Analysis of the input question, For natural language questions entered by users, the system analyzes the dependencies between words in the natural language questions using dependency syntax to obtain different dependency structures, and generates triples and question items from the dependency structures. Step 2: Triplicate screening, Using the methods of maximum forward matching and maximum backward matching, each element in the triples is entity-linked with a component in the knowledge graph, and all triples are traversed. Among them, triples whose structure is not <entity, relationship, entity> and triples whose structure is <entity, relationship, entity> but whose ontologies of the two entities cannot be connected by an intra-set relationship in the mode layer are screened and discarded. The remaining triples include a first class triple containing one named entity and one mode layer ontology, and a second class triple containing two mode layer ontologies. Step 3: Transformation into a triplet, Use the first class of triples to generate an embedded search expression to search the knowledge graph, and if the found content belongs to a mode layer ontology in the second class of triples, substitute the found content into the position of the mode layer ontology within the triples, and convert the second class of triples into triples containing one named entity and one mode layer ontology, and repeat the above process until all the second class of triples are converted to contain one named entity and one mode layer ontology; Step 4: Generate a query tag tree. The contents found in step 3 are stored in a tree structure in a recursive manner to form a query tag tree; Step 5: Screening the query tag tree, In step 1, the neighborhood of the keyword stored in the keyword container is searched from the coded and displayed knowledge graph, and then in step 4, the same node as the neighborhood of the keyword is searched for in the query tag tree generated and set as a tag node, and other sibling nodes and all nodes under the sibling nodes in the query tag tree of the tag node are deleted, and after the neighborhood search of all keywords is completed, the query tag tree after deleting some nodes is saved, Step 6: Ordering the query results, The medical entity search method based on knowledge graph embedding and keywords according to claim 1, characterized in that the corresponding node in the tag tree of the entity that matches the question item type is set as the target node, the entities are ordered in descending order of the frequency of occurrence of the target node corresponding to the entity, and the query results are returned.

3. In step 1, first, for two components in a parallel relationship of the "follow-dependency" type, a dependency structure in which the same component exists is found from the remaining dependency structures, and a new dependency structure is constructed for each of the two components of the "follow-dependency" type using the relationship in the dependency structure. The medical entity search method based on knowledge graph embedding and keywords according to claim 2, characterized in that: the method classifies the dependency structures, traverses three types of dependency structures, namely "subject", "object", and "sub-or-obj", and combines two dependency structures with overlapping components into triples; for dependency structures that cannot be combined into triples under these types, the components that cannot be combined into triples are put into a keyword container as keywords; and traverses the dependency structures of "question" type, the second component of which is used to generate question items, and the remaining dependency structures are discarded.

4. The medical entity search method based on knowledge graph embedding and keywords according to claim 2 or 3, characterized in that the dependency structure is classified according to the following table: Table 1

5. 3. The medical entity search method based on knowledge graph embedding and keywords according to claim 2, characterized in that, in the tree structure, tag is used to store the name of the entity represented by the current node, children is used to store the child node of the current node, parent is used to store the parent node of the current node, and value is used to store the distance between the entity represented by the current node and the entity represented by its parent node.

6. The specific method of screening the query tag tree is as follows: Step 5.1: For the keywords stored in the keyword container, first, link the components in the coded representation of the knowledge graph using the forward maximal matching and backward maximal matching methods, and search for the neighborhood of the keyword in the knowledge graph; Step 5.2: Based on the keyword's neighborhood information, search for nodes that are the same as the keyword's neighborhood in the query tag tree generated in Step 4. If all the neighborhoods of a keyword are not found in the query tag tree, the keyword is deemed not to be connectable to the current query tag tree and is discarded. If a node corresponding to the keyword's neighborhood is found in the query tag tree, tag the node, and delete other sibling nodes of the tagged node and all nodes under the sibling nodes until the neighborhood search for all keywords is completed, and save the query tag tree with some nodes deleted.

7. The neighborhood information of a keyword is related to the type of the keyword, 1: If the key is a subject, the neighborhood information of the key is {(predicate, object) | (key, predicate, object)}, 2: If the key is a predicate, the neighborhood information of the key is {(subject, object) | (subject, key, object)}, 3: If the key is an object, the neighborhood information of the key is {(subject, predicate) | (subject, predicate, key)}, 4: The medical entity search method based on knowledge graph embedding and keywords as described in claim 2 or 6, characterized in that if the key is an ontology in the mode layer, the neighborhood information of the key is {(subject) | (subject, type, key)}.

8. The medical entity search method based on knowledge graph embedding and keywords according to claim 2, characterized in that after the screening in step 5, a normalization process is performed on the distances held by the remaining nodes in the query tag tree.

9. The medical entity search method based on knowledge graph embedding and keywords according to claim 2 or 8, characterized in that for entities with the same number of times of target node appearance, the average value of the distance between the corresponding multiple target nodes and the root node is calculated, and this is set as the final distance of the entity, and the entities with the same number of times of target node appearance are ordered in ascending order of final distance.

10. A medical entity search system implementing the method of any one of claims 1 to 9, comprising: The system includes a query tag tree generation module, a query tag tree screening module, and a query result ordering module; The query tag tree generation module analyzes the natural sentence of the query, and generates a corresponding knowledge graph embedded search formula according to the analysis result, and calculates the result in a vectorized knowledge graph according to the formula, stores the search result in a tree structure, and obtains a query tag tree; The query tag tree screening module uses the query intent that cannot be generated in the knowledge graph embedded search formula as a keyword, and screens nodes in the query tag tree according to the keyword's neighborhood information in the medical knowledge graph; A medical entity search system that implements the method described in any one of claims 1 to 9, characterized in that the query result ordering module screens the query results in the query tag tree, calculates spatial distances in a vectorized representation of the knowledge graph of the remaining nodes in the query tag tree after screening, and orders the nodes.