Intelligent triage methods, devices, storage media and electronic equipment
By constructing a doctor knowledge graph and using graph neural networks to vectorize doctors, combined with a matching degree calculation model, the problem of inconsistency between doctor labels and professional capabilities was solved, achieving more accurate doctor-patient matching and improving the patient's medical experience.
Patent Information
- Application Number
- CN202180001717.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-06-30
- Publication Date
- 2026-03-06
- Estimated Expiration
- 2041-06-30
Smart Images

Figure CN115803821B_ABST
Abstract
Description
Technical Field
[0001] This disclosure relates to the field of artificial intelligence technology, and more specifically, to an intelligent triage method, an intelligent triage device, a computer-readable storage medium, and an electronic device. Background Technology
[0002] With the development of internet technology, intelligent recommendation systems have become deeply integrated into people's lives. For example, intelligent recommendation systems can recommend restaurants, tourist attractions, and transportation plans that meet users' needs for them to choose from.
[0003] Currently, when using intelligent recommendation systems to recommend doctors to patients, the system typically matches highly relevant doctor tags based on the patient's self-reported symptoms, and then recommends a corresponding doctor to the patient based on the retrieved doctor tags.
[0004] It should be noted that the information disclosed in the background section above is only used to enhance the understanding of the background of this disclosure, and therefore may include information that does not constitute prior art known to those skilled in the art. Summary of the Invention
[0005] This disclosure provides an intelligent triage method, an intelligent triage device, a computer-readable storage medium, and an electronic device.
[0006] This disclosure provides an intelligent triage method, including:
[0007] Obtain the medical condition information of the target patient and obtain the target patient vector based on the medical condition information;
[0008] Vectorize each doctor in the doctor knowledge graph to obtain multiple doctor vectors;
[0009] The matching degree calculation model is used to calculate the matching degree between the target patient vector and the multiple doctor vectors, and a doctor is recommended to the target patient based on the magnitude of the matching degree.
[0010] In one exemplary embodiment of this disclosure, the medical condition information includes textual information; obtaining the target patient vector based on the medical condition information includes:
[0011] Encode each character in the text information to obtain multiple word vectors;
[0012] The multiple word vectors are sequentially input into a pre-trained neural network to obtain the target patient vector.
[0013] In one exemplary embodiment of this disclosure, the method further includes:
[0014] Obtain corpus information from multiple doctors;
[0015] The corpus information is semantically analyzed using natural language processing to extract the relationships between the multiple doctors.
[0016] Using the multiple doctors as entities, a doctor knowledge graph is constructed based on the relationships between the multiple doctors.
[0017] In one exemplary embodiment of this disclosure, the step of vectorizing each doctor in the doctor knowledge graph to obtain multiple doctor vectors includes:
[0018] The doctors in the doctor knowledge graph are vectorized using a graph neural network to obtain multiple doctor vectors.
[0019] In one exemplary embodiment of this disclosure, the step of vectorizing each doctor in the doctor knowledge graph using a graph neural network to obtain multiple doctor vectors includes:
[0020] Initialize the node vector corresponding to each doctor in the doctor knowledge graph;
[0021] The pre-trained graph neural network is used to iteratively update the vectors of each node to obtain the multiple doctor vectors.
[0022] In one exemplary embodiment of this disclosure, the step of iteratively updating the node vectors using the pre-trained graph neural network to obtain the plurality of doctor vectors includes:
[0023] according to
[0024]
[0025] Update each node vector to obtain the multiple doctor vectors;
[0026] Among them, W p W ph E C W Ch Here, σ is the parameter of the graph neural network, t is the activation function in the graph neural network, and e is the number of network iterations. i Let np(e) be the node corresponding to the i-th doctor in the doctor knowledge graph. i ) is node e i The set of parent nodes, e k For node e i The k-th parent node, Nc(e i ) is node e i The set of child nodes, e j For node e i The j-th child node, h t (ei ) represents node e after t network iterations. i The vector.
[0027] In one exemplary embodiment of this disclosure, calculating the matching degree between the target patient vector and the plurality of doctor vectors using a matching degree calculation model includes:
[0028] according to
[0029] score(doc i ,pat j )=v T σ(W[doc i ,pat j ]+b)
[0030] Calculate the matching score between the target patient vector and each doctor vector;
[0031] Among them, [doc i ,pat j [Doc is the vector of the i-th doctor] i and target patient vector pat j The concatenated vector contains W, v, and b as matching parameters, and σ as the activation function in the matching degree calculation model.
[0032] In one exemplary embodiment of this disclosure, the method further includes:
[0033] The matching degree calculation model, the graph neural network, and the neural network are trained to obtain the corresponding matching parameters and neural network parameters.
[0034] Based on the matching parameters and the neural network parameters, a matching score is calculated between the target patient vector and each doctor vector.
[0035] In one exemplary embodiment of this disclosure, training the matching degree calculation model to obtain the matching parameters of the matching degree calculation model includes:
[0036] Obtain a training dataset, which includes a positive training dataset and a negative training dataset;
[0037] The training dataset is input into the matching degree calculation model, and the objective function is constructed.
[0038] The matching parameters of the matching degree calculation model are determined based on the objective function.
[0039] In one exemplary embodiment of this disclosure, determining the matching parameters of the matching degree calculation model according to the objective function includes:
[0040] The matching parameters of the matching degree calculation model are updated using the stochastic gradient descent algorithm. When the objective function converges, the training of the matching parameters is completed.
[0041] In one exemplary embodiment of this disclosure, the objective function is:
[0042]
[0043] Among them, (doc) i ,pat i (doc) represents positive training data, indicating that the i-th doctor is suitable to treat the i-th patient's condition. j ,pat i ) represents negative training data, indicating that the j-th doctor is not suitable to treat the i-th patient's condition, and r represents the matching score of the positive training data. i ,pat i The matching score between the data and the negative training data (doc) j ,pat i The preset difference threshold between ) and .
[0044] In one exemplary embodiment of this disclosure, training the graph neural network to obtain its neural network parameters includes:
[0045] The parameters of the graph neural network are iteratively updated using the backpropagation algorithm. When the objective function converges, the training of the neural network parameters is completed.
[0046] In one exemplary embodiment of this disclosure, recommending a doctor to the target patient based on the degree of matching includes:
[0047] The set of doctors to be recommended is determined based on the degree of matching.
[0048] Based on the set of doctors to be recommended, doctors are recommended to the target patients.
[0049] In one exemplary embodiment of this disclosure, recommending a doctor to the target patient based on the set of doctors to be recommended includes:
[0050] The set of doctors to be recommended will be recommended to the target patients.
[0051] The set of doctors to be recommended is filtered according to the screening criteria input by the target patient, so as to recommend a target doctor to the target patient.
[0052] This disclosure provides an intelligent triage device, comprising:
[0053] The patient vector acquisition module is used to acquire the medical condition information of the target patient and obtain the target patient vector based on the medical condition information.
[0054] The doctor vector acquisition module is used to vectorize each doctor in the doctor knowledge graph to obtain multiple doctor vectors;
[0055] The vector matching module is used to calculate the matching degree between the target patient vector and the multiple doctor vectors using a matching degree calculation model, and recommend doctors to the target patient based on the magnitude of the matching degree.
[0056] This disclosure provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the method described in any one of the above descriptions.
[0057] This disclosure provides an electronic device, including: a processor; and a memory for storing executable instructions of the processor; wherein the processor is configured to perform the method described in any of the preceding methods by executing the executable instructions.
[0058] It should be understood that the above general description and the following detailed description are exemplary and explanatory only, and are not intended to limit this disclosure. Attached Figure Description
[0059] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments consistent with this disclosure and, together with the description, serve to explain the principles of this disclosure. It is obvious that the drawings described below are merely some embodiments of this disclosure, and those skilled in the art can obtain other drawings based on these drawings without any inventive effort.
[0060] Figure 1 A schematic diagram of an exemplary system architecture for an intelligent triage method and apparatus to which embodiments of the present disclosure can be applied is shown;
[0061] Figure 2 A schematic diagram of the structure of a computer system suitable for implementing embodiments of the present disclosure is shown;
[0062] Figure 3 A flowchart illustrating an intelligent triage method according to an embodiment of the present disclosure is shown schematically;
[0063] Figure 4 A flowchart illustrating the acquisition of a target patient vector according to an embodiment of the present disclosure is shown schematically.
[0064] Figure 5 A flowchart illustrating the construction of a physician knowledge graph according to one embodiment of the present disclosure is shown schematically;
[0065] Figure 6 A schematic diagram of a physician knowledge graph according to one embodiment of the present disclosure is shown.
[0066] Figure 7 A flowchart illustrating the acquisition of a doctor vector according to an embodiment of the present disclosure is shown schematically;
[0067] Figure 8 A flowchart illustrating a doctor-patient matching process according to an embodiment of the present disclosure is shown schematically.
[0068] Figure 9 A block diagram of an intelligent triage device according to an embodiment of the present disclosure is shown schematically. Detailed Implementation
[0069] Example embodiments will now be described more fully with reference to the accompanying drawings. However, example embodiments can be implemented in many forms and should not be construed as limited to the examples set forth herein; rather, these embodiments are provided to make this disclosure more comprehensive and complete, and to fully convey the concept of the example embodiments to those skilled in the art. The described features, structures, or characteristics can be combined in any suitable manner in one or more embodiments. In the following description, numerous specific details are provided to give a full understanding of embodiments of this disclosure. However, those skilled in the art will recognize that the technical solutions of this disclosure can be practiced with one or more of the specific details omitted, or other methods, components, apparatus, steps, etc., can be employed. In other instances, well-known technical solutions are not shown or described in detail to avoid obscuring various aspects of this disclosure.
[0070] Furthermore, the accompanying drawings are merely illustrative of this disclosure and are not necessarily drawn to scale. The same reference numerals in the drawings denote the same or similar parts, and therefore repeated descriptions of them will be omitted. Some block diagrams shown in the drawings are functional entities and do not necessarily correspond to physically or logically independent entities. These functional entities may be implemented in software, in one or more hardware modules or integrated circuits, or in different network and / or processor devices and / or microcontroller devices.
[0071] Figure 1 A schematic diagram of a system architecture for an exemplary application environment in which an intelligent triage method and apparatus according to embodiments of the present disclosure can be applied is shown.
[0072] like Figure 1As shown, the system architecture 100 of the intelligent triage system may include one or more of terminal devices 101, 102, and 103, a network 104, and a server 105. Network 104 serves as the medium for providing communication links between terminal devices 101, 102, and 103 and server 105. Network 104 may include various connection types, such as wired, wireless communication links, or fiber optic cables. Terminal devices 101, 102, and 103 may be various electronic devices, including but not limited to desktop computers, laptops, smartphones, and tablets. It should be understood that... Figure 1 The number of terminal devices, networks, and servers shown is merely illustrative. Depending on implementation needs, there can be any number of terminal devices, networks, and servers. For example, server 105 could be a server cluster composed of multiple servers.
[0073] The intelligent triage method provided in this embodiment is generally executed by server 105. Correspondingly, the intelligent triage device is generally installed in server 105. After the server matches multiple appropriate doctors for the target patient, it can send the matching results to the terminal device, which then displays them to the patient for selection. However, those skilled in the art will readily understand that the intelligent triage method provided in this embodiment can also be executed by one or more of terminal devices 101, 102, and 103. Correspondingly, the intelligent triage device can also be installed in terminal devices 101, 102, and 103. For example, after execution by the terminal device, the matching results can be directly displayed on the terminal device's screen, or the matching results can be provided to the patient through voice broadcast. This exemplary embodiment does not impose any special limitations on this.
[0074] Figure 2 A schematic diagram of the structure of a computer system suitable for implementing the embodiments of the present disclosure is shown.
[0075] It should be noted that, Figure 2 The computer system 200 of the electronic device shown is merely an example and should not impose any limitation on the functionality and scope of use of the embodiments disclosed herein.
[0076] like Figure 2 As shown, the computer system 200 includes a central processing unit (CPU) 201, which can perform various appropriate actions and processes based on programs stored in read-only memory (ROM) 202 or programs loaded from storage section 208 into random access memory (RAM) 203. The RAM 203 also stores various programs and data required for system operation. The CPU 201, ROM 202, and RAM 203 are interconnected via a bus 204. An input / output (I / O) interface 205 is also connected to the bus 204.
[0077] The following components are connected to I / O interface 205: an input section 206 including a keyboard, mouse, etc.; an output section 207 including a cathode ray tube (CRT), liquid crystal display (LCD), etc., and speakers, etc.; a storage section 208 including a hard disk, etc.; and a communication section 209 including a network interface card such as a LAN card, modem, etc. The communication section 209 performs communication processing via a network such as the Internet. Drive 210 is also connected to I / O interface 205 as needed. Removable media 211, such as a disk, optical disk, magneto-optical disk, semiconductor memory, etc., are installed on drive 210 as needed so that computer programs read from them can be installed into storage section 208 as needed.
[0078] In some embodiments, the intelligent triage method described herein can be executed by the processor of an electronic device. In some embodiments, the target patient's medical condition information, the corpus information of multiple doctors, and the training dataset for building and training the matching degree calculation model can be input through the input section 206, for example, by inputting the target patient's medical condition information and the corpus information of multiple doctors through the user interface of the electronic device. In some embodiments, the matching degree score between the target patient and multiple doctors can be output through the output section 207.
[0079] In particular, according to embodiments of this disclosure, the processes described below with reference to the flowcharts can be implemented as computer software programs. For example, embodiments of this disclosure include a computer program product comprising a computer program carried on a computer-readable medium, the computer program containing program code for performing the methods shown in the flowcharts. In such embodiments, the computer program can be downloaded and installed from a network via communication section 209, and / or installed from removable medium 211. When the computer program is executed by central processing unit (CPU) 201, it performs the various functions defined in the methods and apparatus of this application.
[0080] On the other hand, this application also provides a computer-readable medium, which may be included in the electronic device described in the above embodiments; or it may exist independently and not assembled into the electronic device. The computer-readable medium carries one or more programs that, when executed by the electronic device, cause the electronic device to perform the methods described in the following embodiments. For example, the electronic device may perform... Figures 3 to 5 ,as well as Figure 7 and Figure 8 The various steps shown are as follows.
[0081] It should be noted that the computer-readable medium disclosed herein may be a computer-readable signal medium or a computer-readable storage medium, or any combination thereof. A computer-readable storage medium may be, for example,—but not limited to—an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples of a computer-readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer disk, a hard disk, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage device, magnetic storage device, or any suitable combination thereof. In this disclosure, a computer-readable storage medium may be any tangible medium containing or storing a program that can be used by or in conjunction with an instruction execution system, apparatus, or device. In this disclosure, a computer-readable signal medium may include a data signal propagated in baseband or as part of a carrier wave, carrying computer-readable program code. Such propagated data signals may take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. Computer-readable signal media can also be any computer-readable medium other than computer-readable storage media, which can send, propagate, or transmit a program for use by or in connection with an instruction execution system, apparatus, or device. The program code contained on the computer-readable medium can be transmitted using any suitable medium, including but not limited to: wireless, wire, optical fiber, RF, etc., or any suitable combination thereof.
[0082] The technical solutions of the embodiments of this disclosure are described in detail below:
[0083] Currently, when using intelligent recommendation systems to recommend doctors to patients, the system typically matches highly relevant doctor tags based on the patient's self-reported symptoms, recommending a suitable doctor based on these tags. However, when the doctor tags stored in the intelligent recommendation system do not match the doctor's actual professional capabilities, even if the system selects a doctor with a high degree of match with the patient, there is a possibility that the recommended doctor may not be proficient in treating the patient's condition, thus reducing the patient's overall experience.
[0084] For example, adding or obfuscating doctor tags can increase the likelihood of a doctor being found in a search. However, adding or obfuscating doctor tags may introduce noise, affecting the accuracy of doctor-patient matching. For instance, a doctor specializing in endodontic treatment might have a tag in the database that "specializes in oral diseases." In this case, the match between this doctor and a patient needing impacted tooth extraction would be higher (because impacted tooth extraction is a dental procedure). It can be seen that for a patient needing impacted tooth extraction, a doctor specializing in endodontic treatment is not necessarily the right doctor, potentially reducing the patient's experience during the consultation.
[0085] Based on one or more of the above-mentioned problems, this exemplary embodiment provides an intelligent triage method. This method can be applied to the server 105, or to one or more of the terminal devices 101, 102, and 103, and is not specifically limited in this exemplary embodiment. (See reference...) Figure 3 As shown, the intelligent triage method may include the following steps S310 to S330:
[0086] Step S310. Obtain the medical condition information of the target patient and obtain the target patient vector based on the medical condition information;
[0087] Step S320. Vectorize each doctor in the doctor knowledge graph to obtain multiple doctor vectors;
[0088] Step S330. Calculate the matching degree between the target patient vector and the multiple doctor vectors using a matching degree calculation model, and recommend a doctor to the target patient based on the magnitude of the matching degree.
[0089] In the intelligent triage method provided in the exemplary embodiments of this disclosure, the patient's condition information is obtained, and a target patient vector is obtained based on the condition information; each doctor in the doctor knowledge graph is vectorized to obtain multiple doctor vectors; a matching degree calculation model is used to calculate the matching degree between the target patient vector and the multiple doctor vectors, and a doctor is recommended to the target patient based on the magnitude of the matching degree. This disclosure, by mapping the doctors to be recommended in the doctor knowledge graph into vectors and performing doctor-patient matching in the corresponding vector space, can recommend more suitable doctors to patients, thereby improving the patient's medical experience.
[0090] The steps described above in this example implementation will now be explained in more detail.
[0091] In step S310, the medical condition information of the target patient is obtained, and the target patient vector is obtained based on the medical condition information.
[0092] In this example implementation, the target patient can be either a patient requiring triage before the emergency room or a patient requiring triage in a regular outpatient setting. For example, for a patient requiring triage before the emergency room, hospital staff can use an intelligent triage system to quickly triage the patient, facilitating prompt medical attention. For a patient requiring triage in a regular outpatient setting, hospital staff can use the intelligent triage system to triage the patient, or the patient can use the intelligent triage system themselves; this example does not specifically limit this. In other examples, the patient can also use the intelligent triage system to determine the target hospital and appropriate doctor before seeking medical care.
[0093] When using an intelligent triage system for triage, the medical information of the target patient can be obtained. This information may include basic information such as name and age, as well as self-reported symptoms such as cough and fever, and past medical history such as medical history and medications. This example does not specify a particular limitation. For example, hospital staff can input the target patient's medical information into the intelligent triage system, or the target patient can input their own medical information into the system. Hospital staff or the target patient can input the medical information manually or by voice; this example does not specify a particular limitation.
[0094] After obtaining the patient's medical information, the patient can be vectorized based on this information to obtain a vector representation. This patient vector is then matched with the doctor's vector to determine the appropriate physician for the patient's treatment. (Reference) Figure 4 As shown, the vector representation of the target patient can be obtained according to steps S410 and S420.
[0095] In step S410, each character in the text information is encoded to obtain multiple word vectors.
[0096] Taking a patient's self-triage using an intelligent triage system as an example, the patient's medical information can include text, voice, images, and video. In one example, the patient can voice-input their basic information, self-described symptoms, and past medical history into the intelligent triage system. The system can then map the received voice information into corresponding text, such as "Zhang San, 20 years old, toothache for three days." In other examples, the patient can also manually input their basic information, self-described symptoms, and past medical history into the system, which can then directly retrieve the patient's text information.
[0097] After obtaining the textual information of the target patient, such as "Zhang San, 20 years old, toothache for three days," this information can be encoded. For example, each character in "Zhang San, 20 years old, toothache for three days" can be encoded using embedding (vector mapping), representing each character with a low-dimensional vector, resulting in multiple character vectors, such as the vector representation of "Zhang." Alternatively, each character within a word can be encoded, resulting in multiple word vectors, such as the vector representation of "Zhang San." For example, each character can be encoded using One-Hot encoding, also known as one-bit valid encoding. This method uses an N-bit state register to encode N states, each state having an independent register bit, and at any given time, only one bit in the register is valid. It should be noted that the vector dimension of One-Hot encoding increases with the number of characters in the patient's textual medical information, potentially increasing computational complexity. In other examples, dense vectors can also be used to represent each character. For example, the Word2vec algorithm can be used to map each character in the acquired textual information about a patient's condition to a vector space, where each character can be represented by a character vector. Similarly, algorithms such as Doc2vec and Glove can be used to convert text into vectors.
[0098] Step S420. Input the multiple word vectors sequentially into the pre-trained neural network to obtain the target patient vector.
[0099] It is understandable that the symptoms in the textual medical information of a patient are related. Therefore, in this example, the word vectors corresponding to all the words in the textual medical information can be regarded as a temporal sequence. A neural network (such as a recurrent neural network) can then be used to process the word vector corresponding to each word. For example, after obtaining the word vector corresponding to each word in "Zhang San, 20 years old, toothache for three days", these eight word vectors can be sequentially input into a trained LSTM (Long Short-Term Memory) network to obtain the vector representation of the patient "Zhang San". The LSTM network is a temporal recurrent neural network, suitable for processing and predicting important events with relatively long intervals and delays in time series.
[0100] Specifically, the "word vector 1" corresponding to "Zhang" can be first input into the LSTM network. The LSTM network can extract the implicit features of the "word vector 1" and output the implicit vector at the current moment, such as the implicit vector at time t. Then, the implicit vector at time t and the "word vector 2" corresponding to "San" at time t+1 can be concatenated, and the concatenated vector is input into the LSTM network, and the implicit features of the concatenated vector are extracted to output the implicit vector at time t+1. Similarly, the word vector at the current moment can be successively concatenated with the implicit vector passed down from the previous moment, and the LSTM network is used to extract the features of the concatenated vector until finally the "word vector 8" corresponding to "Tian" is input into the LSTM network, and the implicit vector output at the last moment is used to represent all the words. This implicit vector is the vector representation of the patient "Zhang San", which can be denoted as pat j . In other examples, the GRU (Gated Recurrent Unit) network can also be used to perform operations on the word vectors corresponding to each word. The structure of the GRU network is simpler than that of the LSTM network, and the implementation effect is the same as that of the LSTM network.
[0101] It should be noted that in the embodiments of the present disclosure, in order to perform doctor-patient matching, that is, to calculate the matching degree between the patient vector and the doctor vector, preferably, the vector dimension of the patient vector can be the same as that of the doctor vector. For example, both the doctor and the patient can be mapped to vectors with a dimension of 256. It can be understood that the number of vector dimensions of the doctor vector and the patient vector is only illustrative. In other examples, both the doctor and the patient can also be mapped to vectors with a dimension of 128. The present disclosure does not make specific limitations on this.
[0102] In step S320, each doctor in the doctor knowledge graph is vectorized to obtain multiple doctor vectors.
[0103] To avoid the situation where the doctor labels stored in the intelligent recommendation system are inconsistent with the actual professional capabilities of the doctors, the relationships between doctors can be used for modeling. Exemplarily, a doctor knowledge graph can be constructed using multiple doctors and the relationships between multiple doctors. By mapping the doctor to be recommended in the doctor knowledge graph into a vector and performing doctor-patient matching in the corresponding vector space, a more symptomatic diagnosis and treatment doctor can be recommended for the patient, thereby improving the patient's medical experience.
[0104] A knowledge graph is a graph-based data structure composed of nodes and edges. In a knowledge graph, nodes can represent entities or concepts, and edges can consist of attributes or relationships. A knowledge graph is a relational network that connects different types of information, providing an effective way to represent relationships. Therefore, knowledge graphs can be used to analyze problems from the perspective of "relationships." Correspondingly, in this example, the doctor knowledge graph could be a knowledge graph composed of multiple doctors (nodes) and the relationships (edges) between them. (Reference) Figure 5 As shown, a doctor knowledge graph can be constructed based on steps S510 to S530.
[0105] Step S510. Obtain the speech data of multiple doctors.
[0106] In one example implementation, a web crawler can be used to crawl the corpus information of multiple doctors from the internet. This corpus may include information such as the doctor's name, age, alma mater, work location, area of expertise, and published articles. This example does not specifically limit this information. For instance, a web crawler can be used to mine doctor information. A web crawler refers to writing a crawling script to obtain doctor information. The basic workflow may include: first, selecting some URLs (Uniform Resource Locators) as seed URLs and placing them in a crawling queue; then writing a crawling script to access the website in a manner similar to human browsing for the seed URLs in the crawling queue; storing and parsing the crawled HTML (Hypertext Markup Language) data containing doctor information; and using the parsed new links as seed URLs for the next layer of crawling. In this example, this script tool can quickly and conveniently obtain the corpus information of multiple doctors. In other embodiments, the corpus information of multiple doctors can also be obtained directly by manual input or copy input.
[0107] Step S520. Perform semantic analysis on the corpus information using natural language processing to extract the relationships between the multiple doctors.
[0108] After acquiring corpus information from multiple doctors, natural language processing (NLP) can be used to perform semantic analysis on this information and extract the relationships between the doctors. NLP refers to the process by which a computer accepts input in the form of natural language from a user and internally processes and calculates it using human-defined algorithms to simulate human understanding of natural language and return the expected results to the user. For example, unsupervised learning can be used for clustering to extract relationships. Semi-supervised learning can also be used, such as selecting a portion of the corpus information for annotation and iterating through the annotated information. Supervised learning can also be used for classification and extensive annotation to extract relationships, or a deep learning-based end-to-end joint annotation model can be trained to extract relationships.
[0109] In one example, five relationships can be extracted between multiple doctors: teacher-student, fellow student, colleague, alumnus, and collaborator. For instance, for doctor A and doctor B, if they share the same teacher or the same colleague, it suggests that they may specialize in treating similar diseases. For example, if doctor A specializes in treating pulpitis, there is a high probability that their students, senior students, or colleagues also specialize in treating pulpitis.
[0110] Step S530. Using the multiple doctors as entities, construct the doctor knowledge graph based on the relationships between the multiple doctors.
[0111] In this example, a doctor knowledge graph can be constructed. The entities in this knowledge graph can be individual doctors, and the relationships between entities can include various types, such as five types: teacher-student, fellow student, colleague, alumnus, and collaborator. (Reference) Figure 6 As shown, to more intuitively represent the relationships between doctors, a directed graph model of doctor knowledge graph can be constructed. In this doctor knowledge graph, the entities corresponding to the five nodes are Doctor A, Doctor B, Doctor C, Doctor D, and Doctor E. For node Doctor A, the associated edges include one outgoing edge and one incoming edge. It can be associated with node Doctor B through the outgoing edge and with node Doctor C through the incoming edge. In this example, node Doctor C can be called the parent node of node Doctor A, meaning Doctor C can be Doctor A's teacher. Node Doctor B can be called the child node of node Doctor A. Similarly, it can be seen that node Doctor D can be a child node of both node Doctor B and node Doctor C, and node Doctor D can also be the parent node of node Doctor E.
[0112] The constructed doctor knowledge graph can be stored for later access and retrieval. Therefore, the doctor knowledge graph can be built in real time during each intelligent triage, or it can be pre-built and stored in a database. For example, the doctor knowledge graph can be stored in Neo4j (a high-performance NoSQL graph database) and retrieved when recommending appropriate doctors to patients.
[0113] In one example implementation, doctors to be recommended in the doctor knowledge graph can be mapped into vectors to facilitate doctor-patient matching in the corresponding vector space. For instance, a Graph Neural Network (GNN) can be used to vectorize each doctor in the doctor knowledge graph, resulting in multiple doctor vectors. The GNN combines the doctor knowledge graph with a neural network, performing end-to-end computation on the doctor knowledge graph. The entire computation process can follow the structure of the doctor knowledge graph, preserving its structure while also learning its structural information. For example, a function mapping can be learned, mapping the node e in the doctor knowledge graph... i It can aggregate node e i Features and neighboring nodes e j (such as the parent node), e K (such as child nodes) characteristics are used to generate node e i The new representation, that is, the hidden state h(e) of each node can be obtained. i As can be seen, the hidden state of each node can contain information from its neighboring nodes.
[0114] For example, a graph neural network can generate node e by iteratively updating the hidden states of all nodes. i The new representation. For details, see [reference]. Figure 7 As shown, multiple node representations can be obtained using a graph neural network according to steps S710 and S720, which means multiple doctor vectors are obtained.
[0115] Step S710. Initialize the node vectors corresponding to each doctor in the doctor knowledge graph.
[0116] For example, a doctor knowledge graph can include N doctor nodes {e i , i=1,…,N}, M edges {r j Let the expression be a graph with the variable j = 1, ..., M. In this example, we will use M = 5 as an example. It is understandable that, depending on the implementation requirements, the value of M can be arbitrary. The parameters in the graph neural network and the node vectors corresponding to each doctor in the doctor knowledge graph can be randomly initialized to obtain the initial vector h of each node. 0 (e i), i=1,…,N.
[0117] Step S720. Iteratively update the node vectors using the pre-trained graph neural network to obtain the multiple doctor vectors.
[0118] In one example, it can be based on
[0119]
[0120] Update each node vector to obtain the multiple doctor vectors.
[0121] Among them, W p W ph W C W Ch Here, σ represents the parameters in the graph neural network, σ is the activation function in the graph neural network (e.g., Leaky ReLU, Leaky Rectified Linear Unit), t is the number of network iterations, and e is the parameter. i Let Np(e) be the node corresponding to the i-th doctor in the doctor knowledge graph. i ) is node e i The set of parent nodes, corresponding to e K For node e i The k-th parent node, Nc(e i ) is node e i The set of child nodes, corresponding to e j For node e i The j-th child node, h t (e i ) represents node e after t network iterations. i The vector representation of can be denoted as doc i The vector dimension can be the same as the patient vector dimension, such as 256 dimensions. For example, the preset number of iterations t can be 20, that is, the graph neural network can obtain the final vector representation of each node after 20 iterations.
[0122] In step S330, the matching degree calculation model is used to calculate the matching degree between the target patient vector and the multiple doctor vectors, and a doctor is recommended to the target patient based on the magnitude of the matching degree.
[0123] In one example, after obtaining the medical information of the target patient, the vector representation of the patient can be obtained through a trained LSTM network. Then, the matching degree between the patient and each doctor can be calculated through a trained matching degree calculation model, and the patients can be sorted according to the size of the matching degree.
[0124] Specifically, in the matching degree calculation model, it can be based on
[0125] score(doc i ,pat j )=v T σ(W[doc i ,pat j ]+b)
[0126] Calculate the target patient vector pat j With doctor vector doc i The matching score between them. Among them, [doc i ,pat j [Doc is the vector of the i-th doctor] i and target patient vector pat j The concatenated vector, where W, v, and b are the matching parameters of the matching degree calculation model, can be a 256*512 parameter matrix (W), and v and b can be either 256-dimensional column vectors or 256-dimensional row vectors. It should be noted that when v and b are both row or column vectors, v or b can be transposed. When v and b are not both row or column vectors, transposition is not necessary. σ is the activation function in the matching degree calculation model, such as Leaky ReLU (Leaky Rectified Linear Unit). For example, the matching degree score range can be [0, 100]. A higher matching degree score indicates that the doctor is more skilled at treating the patient's condition.
[0127] In another example, the matching degree calculation model, graph neural network, and LSTM network can be pre-trained. After training, the vector representation of each doctor and the vector representation of the target patient can be obtained, and the vector representation of each doctor can be stored in a database. For example, it can be stored in a Redis database or a MySQL database, and each doctor and its corresponding vector representation can be retrieved in real time. Redis is a key-value storage system; when stored in a Redis database, it can include key-value pairs consisting of a doctor's identifier and its corresponding vector representation, where the key is the doctor's identifier and the value is the corresponding vector representation. As a high-efficiency caching technology, Redis can support read / write frequencies exceeding 100K+ per second, giving it an advantage in data reading and storage speed. MySQL is a relational database management system. Relational databases store data in different tables instead of storing all data uniformly, increasing storage speed and flexibility, and offering stable data storage advantages, preventing data loss.
[0128] For example, you can refer to Figure 8 As shown, the matching degree calculation model, graph neural network and LSTM network are trained according to steps S810 and S820 to obtain the corresponding matching parameters and neural network parameters, so as to use the trained matching degree calculation model for doctor-patient matching.
[0129] Step S810. Train the matching degree calculation model, the graph neural network, and the neural network to obtain the corresponding matching parameters and neural network parameters.
[0130] When training the matching degree calculation model, a training dataset can be obtained, which can include a positive training dataset and a negative training dataset. The positive training dataset can be {(doc i ,pat i Let $\mathbf{i}$, $i=1$, $...$, $K$, representing that the $i$-th doctor is suitable to treat the $i$-th patient's condition, i.e., the $i$-th doctor is the appropriate physician for the $i$-th patient. The negative training dataset can be ${(doc)$. j ,pat i The expression `}` indicates that the j-th doctor is not suitable to treat the i-th patient's condition; that is, the j-th doctor is not the appropriate physician for treating the i-th patient. In one example, this can be achieved by... i ,pat i The i-th doctor vector doc in ) i Randomly replace with other doctor vectors doc j (j≠i) to obtain the negative training dataset {(doc j ,pat i For example, for each positive training data (doc) i ,pat i Five negative training data points can be generated using a random replacement method (doc). j ,pat i It is understandable that the number of negative training data generated by randomly replacing each positive training data point is merely illustrative. Any number of negative training data points can be obtained and combined with positive training data to train the matching degree calculation model multiple times in order to improve the performance of the matching degree calculation model.
[0131] After obtaining the training dataset, it can be input into the matching degree calculation model for training. During training, the objective function needs to be constructed first to determine the matching parameters of the matching degree calculation model. These matching parameters can be the parameters used in the matching degree calculation model to define the mapping relationship between doctor vectors and patient vectors. The objective function, also known as the loss function, is the performance function in the matching degree calculation model and is used to estimate the degree of inconsistency between the model's predictions and the true values.
[0132] In one example, the patient's pat i With the right doctor for diagnosis and treatment (doc) i The match score was the highest, and it was higher than the patient's patency score. i Other doctors' docs j The matching score must be at least γ higher than the target score, where γ > 0, to train the matching score calculation model. For example, when γ = 1, i.e., score(doc) = γ. i ,pat i score(doc) j ,pat i )+1, where i, j∈[1,K], i≠j.
[0133] The corresponding objective function can be:
[0134]
[0135] Among them, (doc) i ,pat i (doc) represents positive training data. j ,pat i ) represents negative training data, and γ represents the matching score of positive training data. i ,pat i The matching score between the data and the negative training data (doc) j ,pat i A preset difference threshold between scores (doc) and other values. Specifically, when score(doc) is within a certain range... j ,pat i )+γ-score(doc i ,pat i When )≤0, it can represent training data (doc) j ,pat i ) and training data (doc) i ,pat i If the difference in matching scores between (doc) satisfies at least γ, it indicates that the matching calculation model has no loss. j ,pat i)+γ-score(doc i ,pat i When )>0, it can represent training data (doc) j ,pat i ) and training data (doc) i ,pat i The difference in matching scores between the two values does not satisfy the condition of being at least higher than γ, indicating that the matching calculation model has a loss at this point, and the score(doc) j ,pat i )+γ-score(doc i ,pat i The larger the value obtained, the greater the corresponding loss. Therefore, when [score(doc)]... j ,pat i )+γ-score(doc i ,pat i )] + When = 0, the objective function can converge to the minimum value.
[0136] For example, the matching parameters of the matching degree calculation model can be updated using the stochastic gradient descent algorithm. Based on the backpropagation principle, the objective function is continuously calculated, and the parameters of the matching degree calculation model are updated accordingly. When the objective function converges to its minimum value, the training of the model parameters is complete, and the corresponding matching degree calculation model parameters at this point are the matching parameters. In other examples, the objective function can be minimized using methods such as least squares and Adam optimization, and the matching parameters can be updated sequentially from back to front to optimize the matching parameters.
[0137] For example, the training process of a graph neural network can be based on
[0138]
[0139] The network parameters are updated iteratively in reverse. When the preset number of iterations is met, the training of the neural network parameters is complete, yielding the final doctor vectors corresponding to each node. For example, the preset number of iterations t can be 20. During 20 reverse iterations, the graph neural network continuously updates its parameters. After the iterations are complete, the final network parameters and the final vector representation of each node are obtained. In other examples, the training parameters can also be determined based on the objective function L. For instance, when the objective function L converges to its minimum value, the network parameters in the graph neural network can be obtained, and the final vector representation of each node can be determined based on these network parameters.
[0140] In one example, the training process of an LSTM network can employ the backpropagation algorithm. Parameters are randomly initialized and continuously updated as training progresses. For instance, the error back propagation (BP) algorithm can be used. Specifically, the output of the output layer is calculated sequentially from the original input, and the difference between the current output and the target output is calculated, i.e., the objective function L. When the objective function L converges to its minimum, the parameters of the LSTM network can be obtained, and these parameters can be used to determine the final vector representation of the target patient. In other examples, gradient descent algorithms, Adam optimization algorithms, etc., can also be used to minimize the objective function L, updating the parameters of the LSTM network sequentially from the end to the beginning.
[0141] Step S820. Based on the matching parameters and the neural network parameters, calculate the matching score between the target patient vector and each doctor vector.
[0142] After obtaining the neural network parameters, the corresponding target patient vector and each doctor vector can be obtained. Based on the matching degree calculation model, the matching degree score between the target patient vector and each doctor vector can be calculated using the matching parameters, the target patient vector, and each doctor vector.
[0143] In the training process described above, the parameters of the matching degree calculation model, the LSTM network, and the graph neural network can be trained simultaneously. For example, with L as the objective function, the parameters of the matching degree calculation model can be adjusted first. Since the matching degree calculation model requires doctor vectors and target patient vectors, the parameters are further backpropagated to the LSTM network and the graph neural network to adjust their parameters. Through multiple backpropagations layer by layer, the parameters of each model can eventually converge, or training can terminate after a certain number of iterations. This training method allows for the simultaneous training of the matching degree calculation model, the LSTM network, and the graph neural network, ensuring higher accuracy and precision for each model while improving training efficiency.
[0144] In one example, after obtaining the matching scores between the target patient and multiple doctors, the matching scores can be sorted, such as in descending order. The top-ranked doctors can be grouped into a set of recommended doctors, for example, the top five doctors could be used. Alternatively, doctors with matching scores greater than a preset matching threshold can be selected to form the set of recommended doctors. For instance, if the matching score between the target patient and a doctor is greater than 80, that doctor can be added to the set of recommended doctors.
[0145] In this example, a set of recommended doctors can be recommended to the target patient. For instance, the information of each doctor in the set can be output to the terminal device, allowing the patient to select a doctor from the list. After receiving the information, the patient can input specific filtering criteria to further filter the doctors in the set. For example, when the patient selects a hospital within a certain distance, doctors outside that distance can be filtered out. Similarly, when the patient selects a certain amount of treatment cost, the set can be filtered based on the cost to recommend the final doctor.
[0146] This method uses graph neural networks to map doctors in a doctor knowledge graph into vectors of a specified dimension, and long short-term memory networks to map patient condition information into vectors of the same dimension. The matching degree between doctors and patients is then calculated within this vector space, allowing for the recommendation of appropriate doctors for patients. This avoids discrepancies between doctor labels stored in the database and the actual professional capabilities of doctors, thus improving the accuracy of doctor-patient matching.
[0147] In the intelligent triage method provided in the exemplary embodiments of this disclosure, the patient's condition information is obtained, and a target patient vector is obtained based on the condition information; each doctor in the doctor knowledge graph is vectorized to obtain multiple doctor vectors; a matching degree calculation model is used to calculate the matching degree between the target patient vector and the multiple doctor vectors, and a doctor is recommended to the target patient based on the magnitude of the matching degree. This disclosure, by mapping the doctors to be recommended in the doctor knowledge graph into vectors and performing doctor-patient matching in the corresponding vector space, can recommend more suitable doctors to patients, thereby improving the patient's medical experience.
[0148] It should be noted that although the steps of the method in this disclosure are described in a specific order in the accompanying drawings, this does not require or imply that the steps must be performed in that specific order, or that all the steps shown must be performed to achieve the desired result. Additional or alternative steps may be omitted, multiple steps may be combined into one step, and / or a step may be broken down into multiple steps.
[0149] Furthermore, this example embodiment also provides an intelligent triage device. This device can be applied to a server or terminal device. (See reference...) Figure 9 As shown, the intelligent triage device 900 may include a patient vector acquisition module 910, a doctor vector acquisition module 920, and a vector matching module 930, wherein:
[0150] The patient vector acquisition module 910 is used to acquire the condition information of the target patient and obtain the target patient vector based on the condition information.
[0151] The doctor vector acquisition module 920 is used to vectorize each doctor in the doctor knowledge graph to obtain multiple doctor vectors.
[0152] The vector matching module 930 is used to calculate the matching degree between the target patient vector and the multiple doctor vectors using a matching degree calculation model, and recommend doctors to the target patient based on the magnitude of the matching degree.
[0153] In one optional implementation, the medical condition information includes textual information; the patient vector acquisition module 910 includes:
[0154] The information encoding module is used to encode each character in the text information to obtain multiple word vectors;
[0155] The patient vector determination module is used to sequentially input the multiple word vectors into a pre-trained neural network to obtain the target patient vector.
[0156] In one alternative implementation, the intelligent triage device 900 further includes:
[0157] The corpus information acquisition module is used to acquire corpus information from multiple doctors;
[0158] The doctor relationship extraction module is used to perform semantic analysis on the corpus information through natural language processing to extract the relationships between the multiple doctors.
[0159] The doctor knowledge graph construction module is used to construct the doctor knowledge graph based on the relationships between the multiple doctors, with the multiple doctors as entities.
[0160] In one alternative implementation, the doctor vector acquisition module 920 includes:
[0161] The doctor vector acquisition submodule is used to vectorize each doctor in the doctor knowledge graph through a graph neural network to obtain multiple doctor vectors.
[0162] In one alternative implementation, the doctor vector acquisition submodule includes:
[0163] A vector initialization unit is used to initialize the node vectors corresponding to each doctor in the doctor knowledge graph.
[0164] The doctor vector acquisition unit is used to iteratively update the node vectors using the pre-trained graph neural network to obtain the multiple doctor vectors.
[0165] In one alternative implementation, the doctor vector acquisition unit is configured as follows:
[0166] according to
[0167]
[0168] Update each node vector to obtain the multiple doctor vectors;
[0169] Among them, W p W ph W C w ch Here, σ represents the training parameters of the graph neural network, t represents the activation function in the graph neural network, and e represents the number of network iterations. i Let np(e) be the node corresponding to the i-th doctor in the doctor knowledge graph. i ) is node e i The set of parent nodes, e k For node e i The k-th parent node, Nc(e i ) is node e i The set of child nodes, e j For node e i The j-th child node, h t (e i ) represents node e after t network iterations. i The vector.
[0170] In an alternative implementation, the vector matching module 930 is configured to be used for matching vectors according to...
[0171] score(doc i ,pat j )=v T σ(W[doc i ,pat j ]+b)
[0172] Calculate the matching score between the target patient vector and each doctor vector;
[0173] Among them, [doc i ,pat j [Doc is the vector of the i-th doctor] i and target patient vector pat j The concatenated vector contains W, v, and b as matching parameters, and σ as the activation function in the matching degree calculation model.
[0174] In one alternative implementation, the intelligent triage device 900 further includes:
[0175] The first model training module is used to train the matching degree calculation model, the graph neural network, and the neural network to obtain the corresponding matching parameters and neural network parameters.
[0176] The data calculation module is used to calculate the matching score between the target patient vector and each doctor vector based on the matching parameters and the neural network parameters.
[0177] In one alternative implementation, the first model training module includes:
[0178] A dataset acquisition unit is used to acquire a training dataset, which includes a positive training dataset and a negative training dataset.
[0179] The objective function construction unit is used to input the training dataset into the matching degree calculation model and construct the objective function;
[0180] The matching parameter determination unit is used to determine the matching parameters of the matching degree calculation model according to the objective function.
[0181] In one alternative implementation, the matching parameter determination unit is configured to update the matching parameters of the matching degree calculation model using a stochastic gradient descent algorithm, and to complete the training of the matching parameters when the objective function converges.
[0182] In an optional implementation, the objective function is configured as follows:
[0183]
[0184] Among them, (doc) i ,pat i (doc) represents positive training data, indicating that the i-th doctor is suitable to treat the i-th patient's condition. j ,pat i ) represents negative training data, indicating that the j-th doctor is not suitable to treat the i-th patient's condition, and γ represents the matching score of the positive training data. i ,pat i The matching score between the data and the negative training data (doc) j ,pat i The preset difference threshold between ) and .
[0185] In an optional implementation, the first model training module is further configured to iteratively update the neural network parameters of the graph neural network using a backpropagation algorithm, and complete the training of the neural network parameters when the objective function converges.
[0186] In one alternative implementation, the intelligent triage device 900 further includes:
[0187] The module for determining recommended doctors is used to determine a set of recommended doctors based on the degree of matching.
[0188] The target doctor recommendation module is used to recommend doctors to the target patients based on the set of doctors to be recommended.
[0189] In one alternative implementation, the target doctor recommendation module includes:
[0190] The doctor set recommendation module is used to recommend the set of doctors to be recommended to the target patient.
[0191] The target doctor determination module is used to filter each doctor in the set of doctors to be recommended according to the filtering conditions input by the target patient, so as to recommend a target doctor for the target patient.
[0192] The specific details of each module in the aforementioned intelligent triage device have been described in detail in the corresponding intelligent triage method, so they will not be repeated here.
[0193] The modules in the above-described device can be general-purpose processors, including central processing units (CPUs), network processors, etc.; they can also be digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, or discrete hardware components. Each module can also be implemented using software, firmware, etc. The processors in the above-described device can be independent processors or integrated together.
[0194] It should be noted that although several modules or units for the device used to perform actions have been mentioned in the detailed description above, this division is not mandatory. In fact, according to embodiments of this disclosure, the features and functions of two or more modules or units described above can be embodied in one module or unit. Conversely, the features and functions of one module or unit described above can be further divided and embodied by multiple modules or units.
[0195] It should be understood that this disclosure is not limited to the precise structures described above and shown in the accompanying drawings, and various modifications and changes can be made without departing from its scope. The scope of this disclosure is limited only by the appended claims.
Claims
1. A smart triage method, characterized in that, The method comprises the following steps: obtaining the illness information of a target patient, and obtaining a target patient vector according to the illness information; vectorizing each doctor in a doctor knowledge graph through a graph neural network to obtain a plurality of doctor vectors, comprising: initializing the node vectors corresponding to each doctor in the doctor knowledge graph; iteratively updating each node vector using a pre-trained graph neural network to obtain the plurality of doctor vectors; the doctor knowledge graph is determined by: obtaining corpus information of a plurality of doctors; performing semantic analysis on the corpus information through natural language processing to extract the relationships between the plurality of doctors; taking the plurality of doctors as entities, and constructing the doctor knowledge graph according to the relationships between the plurality of doctors; calculating the matching degree between the target patient vector and the plurality of doctor vectors using a matching degree calculation model, and recommending doctors to the target patient according to the size of the matching degree; wherein iteratively updating the node vectors using the pre-trained graph neural network to obtain the plurality of doctor vectors comprises: updating the node vectors to obtain the plurality of doctor vectors; the illness information comprises textual information; in, The parameters of the graph neural network are... Let be the activation function in the graph neural network. t For the number of network iterations, The first in the doctor knowledge graph i Each doctor corresponds to a node. For nodes The set of parent nodes, For nodes The k Each parent node For nodes The set of child nodes For nodes The j Number of child nodes Indicates in t After the second network iteration, the nodes The vector.
2. The intelligent triage method of claim 1, wherein, obtaining the target patient vector according to the illness information comprises: encoding each word in the textual information to obtain a plurality of word vectors; inputting the plurality of word vectors into a pre-trained neural network in turn to obtain the target patient vector. calculating the matching degree between the target patient vector and the plurality of doctor vectors using a matching degree calculation model comprises:
3. The intelligent triage method of claim 1, wherein, calculating the matching degree score between the target patient vector and each doctor vector according to the method further comprises: training the matching degree calculation model, the graph neural network and the neural network to obtain corresponding matching parameters and neural network parameters; wherein, is a concatenation of the first i doctor vector and the target patient vector of visit, , , and are matching parameters, is an activation function in the matching degree calculation model.
4. The intelligent triage method according to any one of claims 1-3, wherein, calculating the matching degree score between the target patient vector and each doctor vector based on the matching parameters and the neural network parameters. training the matching degree calculation model to obtain the matching parameters of the matching degree calculation model comprises: obtaining a training data set, the training data set comprising a positive training data set and a negative training data set; 5. The intelligent triage method of claim 4, wherein, inputting the training data set into the matching degree calculation model and constructing an objective function; determining the matching parameters of the matching degree calculation model according to the objective function. determining the matching parameters of the matching degree calculation model according to the objective function comprises: updating the matching parameters of the matching degree calculation model using a stochastic gradient descent algorithm, and completing the training of the matching parameters when the objective function converges.
6. The intelligent triage method of claim 5, wherein, the objective function is: training the graph neural network to obtain the neural network parameters of the graph neural network comprises:
7. The intelligent triage method of claim 6, wherein, iteratively updating the neural network parameters of the graph neural network using a backpropagation algorithm, and completing the training of the neural network parameters when the objective function converges. wherein, is positive training data indicating that a condition of a patient is suitable for being treated by a doctor, i i is negative training data indicating that a condition of a patient is not suitable for being treated by a doctor, j i is a predetermined difference threshold between a matching score of the positive training data and a matching score of the negative training data. 8. The intelligent triage method of claim 4, wherein, recommending doctors to the target patient according to the size of the matching degree comprises: determining a set of doctors to be recommended according to the size of the matching degree; 9. The intelligent triage method of claim 1, wherein, recommend a doctor for the target patient based on the set of doctors to be recommended.
10. The intelligent triage method of claim 9, wherein, The recommending a doctor for the target patient based on the set of doctors to be recommended comprises: recommending the set of doctors to be recommended to the target patient; filtering each doctor in the set of doctors to be recommended according to a filtering condition input by the target patient to recommend a target doctor for the target patient.
11. A smart triage device, characterized in that, comprise: a patient vector obtaining module configured to obtain illness information of a target patient and obtain a target patient vector according to the illness information; a doctor vector obtaining module configured to vectorize each doctor in a doctor knowledge graph by a graph neural network to obtain a plurality of doctor vectors, comprising: initializing node vectors corresponding to each doctor in the doctor knowledge graph; iteratively updating each node vector by using a pre-trained graph neural network to obtain the plurality of doctor vectors; the doctor knowledge graph is determined by: obtaining corpus information of a plurality of doctors; performing semantic analysis on the corpus information by natural language processing to extract relationships between the plurality of doctors; taking the plurality of doctors as entities, and constructing the doctor knowledge graph according to the relationships between the plurality of doctors; a vector matching module configured to calculate matching degrees of the target patient vector and the plurality of doctor vectors by using a matching degree calculation model, and recommend doctors for the target patient according to the sizes of the matching degrees; wherein the iteratively updating each node vector by using the pre-trained graph neural network to obtain the plurality of doctor vectors comprises: updating the node vectors to obtain the plurality of doctor vectors; the computer program is executed by the processor to implement the method of any one of claims 1-10. wherein, is a parameter of the graph neural network, is an activation function in the graph neural network, t is a number of network iterations, is a node corresponding to a i th doctor in the doctor knowledge graph, is a parent node set of node is a th parent node of node is a child node set of node k is a th child node of node is a vector of node is a th child node of node j is a vector of node represents a vector of node t after th network iteration.
12. A computer readable storage medium having stored thereon a computer program, characterized in that, comprise:
13. An electronic device, comprising: a processor; and a memory configured to store executable instructions of the processor; wherein the processor is configured to implement the method of any one of claims 1-10 by executing the executable instructions.
Citation Information
Patent Citations
Medical triage method and device and storage medium
CN110993078A