An electronic medical record data analysis system for febrile children
By constructing a symptom dictionary using intelligent large-scale models and processing electronic medical record data using regular expressions, the problem of low efficiency and inconsistent quality of symptom dictionaries in the analysis of febrile children's data is solved. This enables efficient and accurate sorting of febrile diseases and adaptive expansion, and supports continuous updates.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-12-30
- Publication Date
- 2026-04-07
AI Technical Summary
In existing technologies, the analysis of electronic medical record data of children with fever suffers from inefficient symptom dictionary construction, inconsistent quality, lack of adaptive expansion capabilities, and insufficient negative semantic processing capabilities.
A symptom dictionary is constructed using an intelligent large model. A dictionary of symptom synonyms, antonyms, and pseudo-negation words is generated through iterative optimization. Unstructured text is processed by combining a regular expression pattern set. The mutual information value between symptoms and febrile diseases is calculated. A sparse matrix is constructed and a greedy algorithm is used to filter medical record samples to achieve automated and adaptive sorting of febrile diseases.
It significantly improves the efficiency of symptom dictionary construction, ensures high quality and adaptive expansion capabilities, accurately handles negative semantics, supports continuous updates, and improves symptom recognition accuracy and construction coverage.
Smart Images

Figure CN121439180B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of electronic medical record data analysis, and more specifically to an electronic medical record data analysis system for children with fever. Background Technology
[0002] Fever is one of the most common reasons for pediatric outpatient and emergency visits, and it is also a significant issue that draws high attention from parents and concentrates medical resources. At the data level, the structured processing of electronic medical record text data is fundamental to providing high-quality structured input for models. With the rapid development of medical informatization, electronic medical record systems are widely used in hospitals, generating massive amounts of unstructured medical text data. Regarding symptom dictionary construction, current common methods have several shortcomings; other extraction methods that do not rely on symptom dictionaries also have limitations. These mainly include: manual construction methods suffer from efficiency bottlenecks and inconsistent quality; traditional deep learning-based methods lack medical knowledge guidance and semantic understanding capabilities; and existing automated methods lack adaptive expansion and quality control mechanisms. Summary of the Invention
[0003] To address the aforementioned shortcomings of existing technologies, this invention provides an electronic medical record data analysis system for children with fever, which solves the problems of low efficiency in symptom dictionary construction, inconsistent quality, lack of adaptive expansion capabilities, and insufficient negative semantic processing capabilities in existing technologies.
[0004] To achieve the above-mentioned objectives, the technical solution adopted by this invention is as follows:
[0005] An electronic medical record data analysis system for children with fever is provided, characterized in that it includes:
[0006] The data acquisition module is used to input query cases and retrieve information from the query cases;
[0007] The data processing and analysis module is used to perform electronic medical record data analysis methods for children with fever, and to match and sort the fever diseases based on the information in the queried cases;
[0008] The method for analyzing electronic medical record data of children with fever includes the following steps:
[0009] S1: The original chief complaint text, present medical history data, and physical examination text of patients with fever are spliced together to form electronic medical record data, and an electronic medical record database is constructed. Candidate symptoms are extracted from the electronic medical record data using an intelligent big data model. The candidate symptoms are used as symptom seeds to generate a symptom dictionary. The number of symptom seeds in the symptom dictionary is iteratively optimized to generate a complete symptom dictionary. The complete symptom dictionary is then split into three types of result symptom dictionaries, including a symptom synonym dictionary, an antonym dictionary, and a pseudo-negation word dictionary.
[0010] S2: Read records containing unstructured text from electronic medical record data, load three result symptom dictionaries, set a regular expression pattern set, filter the unstructured text according to the standardized symptom names, related descriptions in the three result symptom dictionaries and the regular expressions in the constructed regular expression pattern set, and generate the patient's structured symptom vector.
[0011] S3: Extract structured symptom features from the structured symptom vector, calculate the joint distribution probability of fever and symptoms based on the number of medical records with corresponding symptoms and fever in the electronic medical record database, and then obtain the mutual information value between the corresponding symptom and fever classification. Use the mutual information value to calculate the normalized weight of the structured symptom features.
[0012] S4: Calculate the point mutual information between symptoms and fever when the symptoms are positive based on the joint distribution probability of fever and symptoms, evaluate the correlation between symptoms and fever, construct a sparse matrix, and generate an inverted index of the association between symptoms and fever based on the point mutual information.
[0013] S5: Extract observed symptoms from the queried medical records, construct a set of positive symptoms, retrieve the scores of fever diseases associated with the positive symptoms in the queried medical records from the inverted index, construct a set of candidate fever diseases, construct a set of medical record samples based on the candidate fever diseases in the set of candidate fever diseases, and calculate the comprehensive feature distance between the medical record samples in the set of medical record samples and the queried medical records based on the structured symptom features.
[0014] S6: Sort the medical record sample set according to the magnitude of the comprehensive feature distance, filter and query medical record samples that are close to each other, and filter out redundant medical record samples. Use a greedy algorithm to select K medical record samples to obtain the medical record sample set. S ;
[0015] S7: Based on the queried medical records, calculate the value from the medical record sample set. S The total probability of matching febrile diseases is used to calculate the comprehensive score of the match between the query medical records and the febrile diseases, and the matching febrile diseases are ranked according to the comprehensive score.
[0016] Further, step S1 includes:
[0017] S11: Combine the original chief complaint text, present medical history data, and physical examination text of the fever patient to form electronic medical record data, build an electronic medical record database, filter the text content related to the patient's medical information in the electronic medical record data, and transform long sentences in the text content into multiple short sentences with higher symptom density, remove information unrelated to symptoms, and retain symptom description content.
[0018] S12: Extract candidate symptoms from the retained symptom descriptions based on special words in the medical text pattern, and record the text source of the candidate symptoms to obtain a preliminary list of candidate symptoms.
[0019] S13: Provide the preliminary candidate symptom list to the intelligent big model, use the intelligent big model to identify the real medical symptom phrases in the preliminary candidate symptom list, eliminate non-medical symptom phrases, and provide the standardized symptom names corresponding to the real medical symptom phrases. Classify the standardized symptom names by symptom type, and then merge the synonyms in the standardized symptom names to obtain symptom seeds.
[0020] S14: Generate a symptom dictionary using all symptom seeds, and continue scanning electronic medical record data based on the symptom seeds in the symptom dictionary to find unmatched fields. Use an intelligent big data model to analyze the similarity between unmatched fields and symptom seeds. Add similar unmatched fields as missing candidate symptoms to the candidate symptom list, return to step S13, increase the number of symptom seeds in the symptom dictionary, and update the symptom dictionary.
[0021] S15: Based on electronic medical record data, use intelligent big data models to generate synonyms and similar symptom names, antonyms of symptom descriptions, and synonyms containing negative words but expressing affirmation, and expand the symptom dictionary to obtain the expanded symptom dictionary;
[0022] S16: After the symptom dictionary is expanded, continue scanning the electronic medical record data and iterate through steps S14-S15 until the coverage rate of newly added symptom seeds in the symptom dictionary meets the conditions or the number of iterations reaches the requirement. Then stop the iteration and output the complete symptom dictionary.
[0023] The symptom seed coverage rate meets the following conditions: ;in, k The number of iterations. For the first k The set of symptom seeds in the symptom dictionary after each iteration. Represents the seed set of symptoms The number of seeds with symptoms For the first k The set of symptom seeds in the symptom dictionary after +1 iterations Represents the seed set of symptoms The number of seeds with symptoms Increased coverage of symptom-related seeds. This is the convergence threshold;
[0024] S17: Output the complete symptom dictionary in the specified format as three result symptom dictionaries, including:
[0025] Symptom Thesaurus: Used to include standardized symptom names for each symptom, as well as various synonyms or similar symptom names or non-standardized expressions;
[0026] Antonym dictionary: used to include standardized symptom names and their antonyms;
[0027] Pseudo-negative word dictionary: used to include standardized symptom names and synonyms containing negative words but expressing affirmation.
[0028] Further, step S2 includes:
[0029] S21: Read records containing unstructured text from electronic medical record data and obtain the fields of the unstructured text;
[0030] S22: Load the symptom dictionary and construct a regular expression pattern set. The regular expression pattern set includes predefined regular expressions, which include filtering fields for screening febrile disease medical records, negation fields for judging negation relationships, transition conjunction fields for identifying transition relationships, and exclusion fields for excluding non-current medical history.
[0031] S23: Use predefined filtering fields to quickly filter target medical records from the chief complaint text of electronic medical record data, and combine filtering fields and negative fields to accurately separate the chief complaint text, present medical history data, and physical examination text related to the target febrile disease;
[0032] S24: Merge the text fields in the chief complaint text, present medical history data, and physical examination text related to the target febrile disease into a complete integrated description string, and use punctuation marks as delimiters to divide the integrated description string into several independent semantic units;
[0033] S25: Traverse the three types of result symptom dictionaries loaded, search for the existence of a string in each semantic unit that matches the standardized symptom name and related description in the three result symptom dictionaries, and perform discrete binarization assignment; specifically:
[0034] If a standardized symptom name in the symptom thesaurus and its multiple synonyms or similar symptom names or non-standardized expressions, or a synonym expression containing a negative word but indicating affirmation in the pseudo-negative word dictionary are matched, then the corresponding standardized symptom name is marked on the semantic unit, and the binary value of the symptom qualitative feature of the semantic unit is assigned to 1, indicating that the symptom of the fever disease definitely exists.
[0035] If a standardized symptom name and its antonym description are matched in the antonym dictionary, the corresponding standardized symptom name is marked on the semantic unit, and the binary value of the symptom qualitative feature of the semantic unit is assigned to 0, indicating that the symptom of the fever disease definitely does not exist.
[0036] The remaining semantic units assign the qualitative feature value of the symptom to NaN, where NaN represents a null value, and the semantic unit does not mention the standardized symptom name;
[0037] S26: Until the matching of standardized symptom names corresponding to all semantic units is completed, and the assignment of binary values of symptom qualitative features is completed;
[0038] S27: Define a semantic unit A with a binary value of 1 for the qualitative symptom feature. Check the text before the position of semantic unit A to see if there is a negative field B. If so, proceed to step S28. Otherwise, keep the binary value of 1 for the qualitative symptom feature of semantic unit A unchanged.
[0039] S28: Determine whether there is a transition conjunction field in the text segment between the negation field B and the semantic unit A. If so, the binary value of the symptom qualitative feature of the semantic unit A is assigned to 1 and remains unchanged. Otherwise, the binary value of the symptom qualitative feature of the semantic unit A is modified from 1 to 0.
[0040] S29: After updating the symptom qualitative feature binary value of the semantic unit assignment, use the exclusion field to remove semantic units that describe non-current medical history, so that the remaining semantic units all reflect the patient's current fever disease status.
[0041] S210: Using the consultation number and standardized symptom name as the joint primary key, duplicate symptom expressions extracted from the retained semantic units are removed, and the binary values of the qualitative features of each symptom expression in the semantic units are assigned as the structured symptom features of each symptom.
[0042] S211: Extract the structured symptom features of all symptoms, record them in the form of a long table, and then convert them into a wide table to generate a structured symptom vector for each symptom;
[0043] S212: Extract continuous floating-point variables from the patient's electronic medical record data and integrate them into the structured symptom features. Update the structured symptom vector for each symptom and generate a complete structured symptom vector for each symptom.
[0044] Further, step S3 includes:
[0045] S31: Extract the structured symptom features from the structured symptom vector for each symptom;
[0046] S32: Define symptom characterization as labels in structured symptom features. s Statistical symptoms s The number of case records in the structured symptom feature set where the qualitative symptom feature binary value is assigned as 1 or 0. The number of medical records for which binary values for symptom qualitative characteristics were not assigned. And satisfy , N This refers to the total number of medical records in the electronic medical record database.
[0047] Indicates symptoms in clinical practice s The number of medical records that are clearly documented. Indicates symptoms in clinical practice s The number of unrecorded medical records.
[0048] S33: Calculate symptoms s observation rate and positive rate ;
[0049] , ;
[0050] in, For symptoms s The number of medical records whose symptom qualitative features are assigned a binary value of 1;
[0051] Observation rate Reflects symptoms s In clinical practice, a higher observation rate indicates more complete symptom information and greater reliability in subsequent calculations. Used for adjusting subsequent symptom mutual information; Indicates symptoms s The number of cases with a symptom-specific binary value of 1, and the positive rate. The symptoms are reflected in the recorded medical records. s The probability of occurrence is the basis for subsequent conditional probability calculations.
[0052] S34: Define the event label for the occurrence of febrile illness as... ICD Calculate fever diseases in electronic medical record database d Prior information entropy and fever d probability of occurrence ;
[0053] ;
[0054] in, Fever-related illnesses are present in the electronic medical record database. d The number of medical records;
[0055] S35: Extract symptoms from electronic medical record database s The set of medical records whose symptom qualitative features are assigned binary values of 1 or 0. Calculate febrile diseases d Symptoms sjoint probability distribution ;
[0056] ;
[0057] in, v For symptoms s Assignment of binary values to the qualitative features of symptoms , For medical record collection The number of medical records Symptoms with a binary value of 1 or 0 are assigned a qualitative characteristic binary value. s And has a fever d A collection of medical records, For medical record collection The number of medical records in the database;
[0058] S36: Based on the joint distribution probability Calculate symptoms s Assigning values to binary qualitative features of any symptom v Under these conditions, it is a febrile disease d probability ;
[0059] ;
[0060] in, For symptoms s Symptom qualitative features binary value assignment v The probability of being 1 or 0;
[0061] S37: Based on probability Sum of probabilities Calculate symptoms s Febrile diseases under certain conditions d Classification information entropy ;
[0062] ;
[0063] in, For symptoms s The qualitative characteristics of symptoms are determined by binary values and assigned values. v Febrile diseases under certain conditions d Information entropy of classification;
[0064] S38: Based on classification information entropy and prior information entropy Calculate symptoms s Mutual information between fever disease classification ;
[0065] ;
[0066] S39: Symptoms s observation rate The arithmetic square root is used as an adjustment factor for mutual information. Make adjustments and calculate the adjusted symptoms. s Mutual information value between fever disease classification ;
[0067] ;
[0068] S310: Extract continuous floating-point variables from the structured symptom features, perform mutual information processing, map the continuous floating-point variables to their corresponding interval indices, obtain the mutual information value between the continuous floating-point variables and the fever disease classification, and then... s Mutual information value between fever disease classification The mutual information value between continuous floating-point variables and febrile disease classifications is uniformly defined as the mutual information value of structured symptom features. , i Indicates symptoms s Structured symptom features formed by continuous floating-point variables;
[0069] S311: Utilizing mutual information values Calculate the normalized weights of structured symptom features ;
[0070] ;
[0071] in, j For the structured symptom feature variables in the mutual information value summation process, For structured symptom characteristic variables j The corresponding mutual information value.
[0072] Further, step S4 includes:
[0073] S41: Define symptoms s A positive result is indicated by a binary value of 1 for the symptom qualitative characteristic, based on the joint distribution probability. Symptoms s Joint distribution probability when positive and the joint distribution probability As symptoms s When observed and the disease is classified as a febrile illness d Under conditions, symptoms s The conditional probability of being positive;
[0074] S42: Based on the joint distribution probability Calculate symptoms s A positive result is associated with febrile illnesses. d Point mutual information ;
[0075] ;
[0076] in, For symptoms s The probability of being positive. For symptoms s Positive and present with fever d A collection of medical records, For medical record collection The number of medical records in the database;
[0077] S43: If Then determine the symptoms s With fever d There is a correlation between symptoms; otherwise, determine the symptoms. s With fever d There is no correlation between them; a sparse matrix is constructed to store all correlated symptoms. s With fever d Related pairs;
[0078] S44: Construct an ordered list of all febrile diseases associated with each symptom based on a sparse matrix, and then construct an inverted index of the symptoms based on the ordered list. inverted_index :
[0079] inverted_index ={Symptoms s : [Fever illness 1, fever illness 2, ..., fever illness G], fever illness G and symptoms s The point mutual information value is less than that of febrile disease G-1 and symptoms s The point mutual information value.
[0080] Further, step S5 includes:
[0081] S51: From querying medical records q Extract observed symptoms s , recorded as Build a system for querying medical records q collection of positive symptoms , Indicates querying medical records q Positive symptoms are defined by a binary value of 1 for the qualitative characteristic of the symptoms.
[0082] S52: From the inverted index inverted_index Search for point information linking symptoms with febrile illnesses. , obtain medical records q The maximum point mutual information value for each positive symptom ;
[0083] ;
[0084] S53: Select to query medical records q Maximum point mutual information value of positive symptoms The largest M Using each positive symptom as an anchor symptom, we obtain the anchor symptom set. ;
[0085] S54: For retrieving medical records q For each positive symptom, query the inverted index. inverted_index For all febrile illnesses associated with positive symptoms, calculate the febrile illness score associated with positive symptoms. ;
[0086] ;
[0087] in, The weighted weights for anchor point symptoms, This is a collection of non-anchor point symptoms;
[0088] S55: Select the highest score among all febrile illnesses associated with positive symptoms. L A set of candidate febrile diseases was obtained by selecting 10 febrile diseases as candidate febrile diseases. ;
[0089] S56: Screen for candidate febrile illnesses from the electronic medical record database. Medical records of candidate febrile diseases were selected to obtain medical record samples. r And construct a medical record sample set. ;
[0090] ;
[0091] in, Indicates medical record sample r Types of febrile diseases;
[0092] S57: Medical record sample set Chinese medical record samples r Continuous floating-point variables and querying medical records q The continuous floating-point variables in the data are standardized to calculate the query results for medical records. q With medical record sample r Standardized distance for continuous floating-point variables ;
[0093] ;
[0094] in, respectively querying medical records q Medical record samplesr The normal distribution function value of a continuous floating-point variable. The range is within the normal distribution range;
[0095] S58: Normalized weights from structured symptom features Obtain the normalized weights of continuous floating-point variables , f Use the serial number of a continuous floating-point variable to calculate the query medical records. q Medical record samples r Floating-point characteristic distance of continuous floating-point variables ;
[0096] ;
[0097] S59: Based on the medical record query q Medical record samples r Symptoms s Symptom qualitative features binary value assignment Construct a three-valued logic difference function for assignment. ;
[0098] ;
[0099] in, It is the XOR operator;
[0100] S510: Normalized weights from structured symptom features Obtaining symptoms s Normalized weights Combined with three-valued logic difference functions Calculate and query medical records q Medical record samples r Symptom characteristics distance ;
[0101] ;
[0102] in, For conditional weights, The number of types of febrile diseases, In order to access medical records q A collection of febrile diseases associated with positive symptoms in the middle of the day. A collection of types of febrile diseases The number of types of fever-related illnesses;
[0103] S511: Based on symptom characteristics distance and floating-point feature distance Calculate and query medical records q Medical record samples r Comprehensive feature distance ;
[0104] ;
[0105] in, Based on querying medical records q Dynamic weights for the dynamic changes in the characteristics of structured symptoms.
[0106] Further, step S6 includes:
[0107] S61: Based on the comprehensive feature distance The size of the medical record sample set Sort the medical record samples in the medical record sample set. Filter out the comprehensive feature distance The smallest set of 2K medical records that are adjacent to the queried medical record is used to construct the medical record sample set. R ;
[0108] S62: Based on medical record sample set R Fever disease d probability distribution Computing medical record sample sets R Conditional entropy of febrile diseases ;
[0109] ;
[0110] in, For medical record sample set R Fever disease exists in China d The number of medical record samples, To sum the variables for all febrile illnesses, In the medical record sample set The probability distribution of disease types under the given conditions;
[0111] S63: Define from medical record sample set R The medical record samples that China plans to remove are Using the conditional entropy of febrile diseases Calculate from medical record sample set R Medical record samples to be removed from China Marginal information gain ;
[0112] ;
[0113] in, This is the set of medical record samples to be removed. To remove the medical record sample set The medical record sample set, Medical record sample set Conditional entropy;
[0114] S64: If Then it is determined that the medical record sample should be removed. After the information entropy increases, the proposed medical record sample will be... Retain; otherwise, the medical record sample will be removed. Remove the redundant medical record samples; obtain a medical record sample set that has been filtered out. ;
[0115] S65: Calculate the medical record sample set The mutual information value of each medical record sample in the medical record sample set is used to extract the mutual information value from the medical record sample set using a greedy algorithm. Filter the most information K From a number of medical record samples, a medical record sample set is obtained. S medical record sample set S The types of fever-related diseases are added to the disease category set. .
[0116] Further, step S65 includes:
[0117] S651: Define the medical record sample set S Number of medical record samples K Obtain a medical record sample set Number of medical record samples M ,like Then directly use the medical record sample set As a medical record sample set S If not, proceed to step S7; otherwise, proceed to step S652.
[0118] S652: Calculate the medical record sample set Each medical record sample Information content score ;
[0119] ;
[0120] in, For medical record sample set Types of Feverish Illnesses and Medical Record Samples The number of samples with the same type of fever disease. For medical record sample set Types of fever-related diseases and medical record samples The probability of samples with the same type of fever disease;
[0121] S653: Screening Medical Record Sample Sets Information content score Largest medical record sample Add to medical record sample set SIn the middle, medical record samples The types of fever-related diseases are added to the disease category set. middle;
[0122] S654: Medical Record Sample Set The remaining medical record samples are denoted as the medical record sample set. And calculate the medical record sample set Information content score of medical record samples , b For medical record sample set The number of the medical record sample in the document;
[0123] S655: If the disease type set The types of fever-related illnesses in the medical record samples b The types of fever-related illnesses are based on information content scores. Update medical record samples b Information content score Otherwise, keep the medical record sample. b Information content score remains unchanged ;
[0124] S656: Obtain the medical record sample set Information content score data for all medical record samples , B For medical record sample set The number of medical record samples in the data. For medical record sample set The Middle B Information content score of each medical record sample;
[0125] S657: Filtering data based on information content score The maximum value in , to the maximum value The corresponding medical record samples are placed into the medical record sample set. S In the middle, and update the medical record sample set. S and medical record sample set ; set the maximum value The types of fever-related illnesses in the corresponding medical record samples are placed into the disease type set. In, and update the disease type set. ;
[0126] S658: Repeat steps S654-S657, continuing from the updated medical record sample set. Selected medical record samples are placed into the medical record sample set. S Until the medical record sample set S The number of medical record samples reached K Execute step S7.
[0127] Further, step S7 includes:
[0128] S71: For retrieving medical records q Calculate from the medical record sample set S Matched with fever diseases j probability ;
[0129] ;
[0130] in, As an indicator function, when the medical record sample set S Febrile diseases and febrile illnesses in Chinese medical record samples j Same indicator function The value is 1; otherwise, the indicator function... The value is 0. For medical record sample set S Confidence level of Chinese medical record samples , This represents the number of missing structured symptom features in the medical record sample. This represents the ideal number of structured symptom features in a medical record sample. For medical record sample set S Chinese medical record samples and medical record retrieval q Normalized weights, p For the summation process medical record sample set S Chinese medical record sample variables For the medical record sample variables are p Time and access to medical records q Normalized weights, Indicates the value to be retrieved;
[0131] S72: Based on probability Calculate and query medical records q Matched with fever j Total probability ;
[0132] ;
[0133] in, For variables With query value The probability of a match;
[0134] S73: Utilizing total probability Calculate and query medical records q Matched with fever disease j Overall score ;
[0135] ;
[0136] in, For medical record sample set S Fever disease exists in China j Continuous floating-point variables in medical record samples f The between-sample variance For medical record sample set S Fever disease exists in China j The number of continuous floating-point variables in the medical record sample. For medical record sample set S Fever disease exists in China j Continuous floating-point variables in medical record samples of f Mean of variance between samples For medical record sample set S Fever disease exists in China j Consistency of medical record samples For those with fever j Medical record samples in the medical record sample set S The proportion in;
[0137] S74: Obtain access to medical records q The system matches the comprehensive scores of all febrile illnesses and sorts them from highest to lowest based on the comprehensive score of each matched febrile illness. The output is based on the queried medical records. q The matched fever diseases are sorted.
[0138] The beneficial effects of this invention are as follows:
[0139] Significantly improves construction efficiency: Through a fully automated processing flow, the symptom dictionary construction time is reduced from the traditional 1-2 months to 6-8 hours, improving efficiency by approximately 100 times;
[0140] Ensuring construction quality: Guided by the medical knowledge of a large language model, the symptom recognition accuracy reaches 96% on the local validation set, and high construction quality is maintained even when dealing with complex medical records;
[0141] Achieving adaptive expansion: Through an iterative expansion algorithm, it can automatically detect missed symptoms and continuously expand vocabulary coverage, ultimately achieving a coverage rate of over 96%.
[0142] Accurate handling of negation semantics: A complete classification system for negation semantics has been established, which can accurately distinguish between direct negation, affirmative expressions containing negation words, and antonyms, and can correctly handle complex negation phenomena in text;
[0143] Supports continuous updates: The system has incremental learning capabilities and can update the dictionary content in real time based on new medical data, solving the problem of lagging updates in traditional methods. Attached Figure Description
[0144] Figure 1 A flowchart for analyzing electronic medical record data of children with fever. Detailed Implementation
[0145] The specific embodiments of the present invention are described below to enable those skilled in the art to understand the present invention. However, it should be understood that the present invention is not limited to the scope of the specific embodiments. For those skilled in the art, various changes are obvious as long as they are within the spirit and scope of the present invention as defined and determined by the appended claims. All inventions utilizing the concept of the present invention are protected.
[0146] An electronic medical record data analysis system for children with fever includes:
[0147] The data acquisition module is used to input query cases and retrieve information from the query cases;
[0148] The data processing and analysis module is used to perform electronic medical record data analysis methods for children with fever, such as... Figure 1 As shown, the fever disease is sorted according to the information in the query cases;
[0149] The method for analyzing electronic medical record data of children with fever includes the following steps:
[0150] S1: The original chief complaint text, present medical history data, and physical examination text of patients with fever are spliced together to form electronic medical record data, and an electronic medical record database is constructed. Candidate symptoms are extracted from the electronic medical record data using an intelligent big data model. The candidate symptoms are used as symptom seeds to generate a symptom dictionary. The number of symptom seeds in the symptom dictionary is iteratively optimized to generate a complete symptom dictionary. The complete symptom dictionary is then split into three types of result symptom dictionaries, including a symptom synonym dictionary, an antonym dictionary, and a pseudo-negation word dictionary.
[0151] Step S1 specifically includes the following steps:
[0152] S11: Combine the original chief complaint text, present medical history data, and physical examination text of the fever patient to form electronic medical record data, build an electronic medical record database, filter the text content related to the patient's medical information in the electronic medical record data, and transform long sentences in the text content into multiple short sentences with higher symptom density, remove information unrelated to symptoms, and retain symptom description content.
[0153] S12: Extract candidate symptoms from the retained symptom descriptions based on special words in the medical text pattern, and record the text source of the candidate symptoms to obtain a preliminary list of candidate symptoms.
[0154] Using common patterns in medical texts, such as words like "none," "accompanied," "obvious," "occasional," and "decline," we define a complete extraction pattern, extract candidate symptoms using regular expressions, record their sources, and obtain a preliminary list of candidate symptoms.
[0155] S13: Provide the preliminary candidate symptom list to the intelligent big model, use the intelligent big model to identify the real medical symptom phrases in the preliminary candidate symptom list, remove non-medical symptom phrases, such as "weight" and "body temperature", and provide the standardized symptom names corresponding to the real medical symptom phrases. Classify the standardized symptom names by symptom type, and then merge the synonyms in the standardized symptom names to obtain symptom seeds.
[0156] The intelligent big model used in this embodiment is the existing Large Language Model (LLM). The Large Language Model (LLM) is a deep neural network trained on massive corpora, which can understand and generate natural language and has shown powerful capabilities in multiple fields.
[0157] S14: Generate a symptom dictionary using all symptom seeds, and continue scanning electronic medical record data based on the symptom seeds in the symptom dictionary to find unmatched fields. Use an intelligent big data model to analyze the similarity between unmatched fields and symptom seeds. Add similar unmatched fields as missing candidate symptoms to the candidate symptom list, return to step S13, increase the number of symptom seeds in the symptom dictionary, and update the symptom dictionary.
[0158] S15: Based on electronic medical record data, use intelligent big data models to generate synonymous and similar symptom names (such as "cough" and "dry cough", "spitting", "choking cough", etc.), antonymous symptom expressions (such as "diarrhea" and "normal bowel movements", etc.), and synonym expressions containing negative words but indicating affirmation (such as "dysuria" and "urination discomfort", etc.) to expand the symptom dictionary and obtain the expanded symptom dictionary;
[0159] S16: After the symptom dictionary is expanded, continue scanning the electronic medical record data and iterate through steps S14-S15 until the coverage rate of newly added symptom seeds in the symptom dictionary meets the conditions or the number of iterations reaches the requirement. Then stop the iteration and output the complete symptom dictionary.
[0160] The symptom seed coverage rate meets the following conditions: ;in, k The number of iterations. For the first k The set of symptom seeds in the symptom dictionary after each iteration. Represents the seed set of symptoms The number of seeds with symptoms For the first kThe symptom seed set in the symptom dictionary after the +1 iteration loop Indicates the symptom seed set The number of symptom seeds in Add the coverage rate for symptom seeds Is the convergence threshold;
[0161] S17: Output the complete symptom dictionary in a specified format as three result symptom dictionaries, including:
[0162] Symptom synonym dictionary: Used to collect the standardized symptom names of each symptom and its multiple synonymous or similar symptom names or non-standardized expressions, ensuring comprehensive coverage of colloquial, non-standardized, and synonymous clinical expressions;
[0163] Antonym dictionary: Used to collect the standardized symptom names and their antonym symptom expressions;
[0164] Pseudo-negative word dictionary: Used to collect the standardized symptom names and synonymous expressions containing negative words but expressing affirmation. The pseudo-negative word dictionary is used to handle special language phenomena and collects phrases that, although containing negative words, have an overall affirmative meaning. For example, although the word "without strength" has the character "no", it actually represents the affirmative state of the symptom "fatigue"; another example is that "urination discomfort" corresponds to the affirmation of the standardized symptom "dysuria", rather than the negation of "urination".
[0165] The construction of the symptom dictionary is based on a small number of manually constructed medical language feature rules. Taking this as an inspiration, an intelligent large language model is used for unsupervised symptom recognition and medical standardization; through iterative expansion of the symptom dictionary, adaptive convergence feedback learning is achieved; through a multi-dimensional automated quality assessment system, the quality of the symptom dictionary is ensured, and a standardized multi-format dictionary is output for subsequent extraction of the structured symptom matrix from unstructured text. The entire process meets modular and transparent output, and supports expert manual supervision and verification.
[0166] S2: Read the records containing unstructured text from the electronic medical record data, load the three result symptom dictionaries, set the regular expression pattern set, and screen the unstructured text according to the standardized symptom names, related expressions in the three result symptom dictionaries, and the regular expressions in the constructed regular expression pattern set to generate the structured symptom vector of the patient.
[0167] Step S2 specifically includes:
[0168] S21: Read the records containing unstructured text from the electronic medical record data to obtain the fields of the unstructured text;
[0169] S22: Load the symptom dictionary and construct a regular expression pattern set. The regular expression pattern set includes predefined regular expressions, which include filtering fields for screening febrile disease medical records, negation fields for judging negation relationships, transition conjunction fields for identifying transition relationships, and exclusion fields for excluding non-current medical history.
[0170] S23: Use predefined filtering fields to quickly filter target medical records from the chief complaint text of electronic medical record data, and combine filtering fields and negative fields to accurately separate the chief complaint text, present medical history data, and physical examination text related to the target febrile disease;
[0171] S24: Merge the text fields in the chief complaint text, present medical history data, and physical examination text related to the target febrile disease into a complete integrated description string, and use punctuation marks as delimiters to divide the integrated description string into several independent semantic units;
[0172] S25: Traverse the three types of result symptom dictionaries loaded, search for the existence of a string in each semantic unit that matches the standardized symptom name and related description in the three result symptom dictionaries, and perform discrete binarization assignment; specifically:
[0173] If a standardized symptom name in the symptom thesaurus and its multiple synonyms or similar symptom names or non-standardized expressions, or a synonym expression containing a negative word but indicating affirmation in the pseudo-negative word dictionary are matched, then the corresponding standardized symptom name is marked on the semantic unit, and the binary value of the symptom qualitative feature of the semantic unit is assigned to 1, indicating that the symptom of the fever disease definitely exists.
[0174] If a standardized symptom name and its antonym description are matched in the antonym dictionary, the corresponding standardized symptom name is marked on the semantic unit, and the binary value of the symptom qualitative feature of the semantic unit is assigned to 0, indicating that the symptom of the fever disease definitely does not exist.
[0175] The remaining semantic units assign the qualitative feature value of the symptom to NaN, where NaN represents a null value, and the semantic unit does not mention the standardized symptom name;
[0176] S26: Until the matching of standardized symptom names corresponding to all semantic units is completed, and the assignment of binary values of symptom qualitative features is completed;
[0177] S27: Define a semantic unit A with a binary value of 1 for the qualitative symptom feature. Check the text before the position of semantic unit A to see if there is a negative field B. If so, proceed to step S28. Otherwise, keep the binary value of 1 for the qualitative symptom feature of semantic unit A unchanged.
[0178] S28: Determine whether there is a transition conjunction field in the text segment between the negation field B and the semantic unit A. If so, the binary value of the symptom qualitative feature of the semantic unit A is assigned to 1 and remains unchanged. Otherwise, the binary value of the symptom qualitative feature of the semantic unit A is modified from 1 to 0.
[0179] S29: After updating the symptom qualitative feature binary value of the semantic unit assignment, use the exclusion field to remove semantic units that describe non-current medical history, so that the remaining semantic units all reflect the patient's current fever disease status.
[0180] S210: Using the consultation number and standardized symptom name as the joint primary key, duplicate symptom expressions extracted from the retained semantic units are removed, and the binary values of the qualitative features of each symptom expression in the semantic units are assigned as the structured symptom features of each symptom.
[0181] S211: Extract the structured symptom features of all symptoms, record them in the form of a long table, and then convert them into a wide table to generate a structured symptom vector for each symptom;
[0182] S212: Extract continuous floating-point variables from the patient's electronic medical record data and integrate them into structured symptom features. Update the structured symptom vector for each symptom and generate a complete structured symptom vector for each symptom. Continuous floating-point variables include, for example, routine blood test laboratory data (such as white blood cell count, neutrophil percentage, platelet count, etc.), fever-related features (such as fever peak, fever duration), and personal information data (such as age, gender).
[0183] S3: Extract structured symptom features from the structured symptom vector, calculate the joint distribution probability of fever and symptoms based on the number of medical records with corresponding symptoms and fever in the electronic medical record database, and then obtain the mutual information value between the corresponding symptom and fever classification. Use the mutual information value to calculate the normalized weight of the structured symptom features.
[0184] Step S3 specifically includes:
[0185] S31: Extract the structured symptom features from the structured symptom vector for each symptom;
[0186] S32: Define symptom characterization as labels in structured symptom features. s Statistical symptoms s The number of case records in the structured symptom feature set where the qualitative symptom feature binary value is assigned as 1 or 0. The number of medical records for which binary values for symptom qualitative characteristics were not assigned. And satisfy , N This refers to the total number of medical records in the electronic medical record database.
[0187] Indicates symptoms in clinical practice s The number of medical records that are clearly documented. Indicates symptoms in clinical practice s The number of unrecorded medical records.
[0188] S33: Calculate symptoms s observation rate and positive rate ;
[0189] , ;
[0190] in, For symptoms s The number of medical records whose symptom qualitative features are assigned a binary value of 1;
[0191] Observation rate Reflects symptoms s In clinical practice, a higher observation rate indicates more complete symptom information and greater reliability in subsequent calculations. Used for adjusting subsequent symptom mutual information; Indicates symptoms s The number of cases with a symptom-specific binary value of 1, and the positive rate. The symptoms are reflected in the recorded medical records. s The probability of occurrence is the basis for subsequent conditional probability calculations.
[0192] S34: Define the event label for the occurrence of febrile illness as... ICD Calculate fever diseases in electronic medical record database d Prior information entropy and fever d probability of occurrence ;
[0193] ;
[0194] in, Fever-related illnesses are present in the electronic medical record database. d The number of medical records;
[0195] S35: Extract symptoms from electronic medical record database s The set of medical records whose symptom qualitative features are assigned binary values of 1 or 0. Calculate febrile diseases d Symptoms s joint probability distribution ;
[0196] ;
[0197] in, v For symptoms s Assignment of binary values to the qualitative features of symptoms , For medical record collection The number of medical records Symptoms with a binary value of 1 or 0 are assigned a qualitative characteristic binary value. s And has a fever d A collection of medical records, For medical record collection The number of medical records in the database;
[0198] S36: Based on the joint distribution probability Calculate symptoms s Assigning values to binary qualitative features of any symptom v Under these conditions, it is a febrile disease d probability ;
[0199] ;
[0200] in, For symptoms s Symptom qualitative features binary value assignment v The probability of being 1 or 0;
[0201] S37: Based on probability Sum of probabilities Calculate symptoms s Febrile diseases under certain conditions d Classification information entropy ;
[0202] ;
[0203] in, For symptoms s The qualitative characteristics of symptoms are determined by binary values and assigned values. v Febrile diseases under certain conditions d Information entropy of classification;
[0204] S38: Based on classification information entropy and prior information entropy Calculate symptoms s Mutual information between fever disease classification ;
[0205] ;
[0206] S39: Symptoms s observation rate The arithmetic square root is used as an adjustment factor for mutual information. Make adjustments and calculate the adjusted symptoms. s Mutual information value between fever disease classification ;
[0207] ;
[0208] S310: Extract continuous floating-point variables from the structured symptom features, perform mutual information processing, map the continuous floating-point variables to their corresponding interval indices, obtain the mutual information value between the continuous floating-point variables and the fever disease classification, and then... s Mutual information value between fever disease classification The mutual information value between continuous floating-point variables and febrile disease classifications is uniformly defined as the mutual information value of structured symptom features. , i Indicates symptoms s Structured symptom features formed by continuous floating-point variables;
[0209] S311: Utilizing mutual information values Calculate the normalized weights of structured symptom features ;
[0210] ;
[0211] in, j For the structured symptom feature variables in the mutual information value summation process, For structured symptom characteristic variables j The corresponding mutual information value.
[0212] S4: Calculate the point mutual information between symptoms and fever when the symptoms are positive based on the joint distribution probability of fever and symptoms, evaluate the correlation between symptoms and fever, construct a sparse matrix, and generate an inverted index of the association between symptoms and fever based on the point mutual information.
[0213] Step S4 specifically includes:
[0214] S41: Define symptoms s A positive result is indicated by a binary value of 1 for the symptom qualitative characteristic, based on the joint distribution probability. Symptoms s Joint distribution probability when positive and the joint distribution probability As symptoms s When observed and the disease is classified as a febrile illness d Under conditions, symptoms s The conditional probability of being positive;
[0215] S42: Based on the joint distribution probability Calculate symptoms s A positive result is associated with febrile illnesses. d Point mutual information ;
[0216] ;
[0217] in, For symptoms s The probability of being positive. For symptoms s Positive and present with fever d A collection of medical records, For medical record collection The number of medical records in the database;
[0218] S43: If Then determine the symptoms s With fever d There is a correlation between symptoms; otherwise, determine the symptoms. s With fever d There is no correlation between them; a sparse matrix is constructed to store all correlated symptoms. s With fever d Related pairs;
[0219] S44: Construct an ordered list of all febrile diseases associated with each symptom based on a sparse matrix, and then construct an inverted index of the symptoms based on the ordered list. inverted_index :
[0220] inverted_index ={Symptoms s : [Fever illness 1, fever illness 2, ..., fever illness G], fever illness G and symptoms s The point mutual information value is less than that of febrile disease G-1 and symptoms s The point mutual information value.
[0221] S5: Extract observed symptoms from the queried medical records, construct a set of positive symptoms, retrieve the scores of fever diseases associated with the positive symptoms in the queried medical records from the inverted index, construct a set of candidate fever diseases, construct a set of medical record samples based on the candidate fever diseases in the set of candidate fever diseases, and calculate the comprehensive feature distance between the medical record samples in the set of medical record samples and the queried medical records based on the structured symptom features.
[0222] Step S5 specifically includes:
[0223] S51: From querying medical records q Extract observed symptoms s , recorded as Build a system for querying medical records qcollection of positive symptoms , Indicates querying medical records q Positive symptoms are defined by a binary value of 1 for the qualitative characteristic of the symptoms.
[0224] S52: From the inverted index inverted_index Search for point information linking symptoms with febrile illnesses. , obtain medical records q The maximum point mutual information value for each positive symptom ;
[0225] ;
[0226] S53: Select to query medical records q Maximum point mutual information value of positive symptoms The largest M Using each positive symptom as an anchor symptom, we obtain the anchor symptom set. ;
[0227] S54: For retrieving medical records q For each positive symptom, query the inverted index. inverted_index For all febrile illnesses associated with positive symptoms, calculate the febrile illness score associated with positive symptoms. ;
[0228] ;
[0229] in, The weighted weights for anchor point symptoms, This is a collection of non-anchor point symptoms;
[0230] S55: Select the highest score among all febrile illnesses associated with positive symptoms. L A set of candidate febrile diseases was obtained by selecting 10 febrile diseases as candidate febrile diseases. ;
[0231] S56: Screen for candidate febrile illnesses from the electronic medical record database. Medical records of candidate febrile diseases were selected to obtain medical record samples. r And construct a medical record sample set. ;
[0232] ;
[0233] in, Indicates medical record sample r Types of febrile diseases;
[0234] S57: Medical record sample set Chinese medical record samples rContinuous floating-point variables and querying medical records q The continuous floating-point variables in the data are standardized to calculate the query results for medical records. q With medical record sample r Standardized distance for continuous floating-point variables ;
[0235] ;
[0236] in, respectively querying medical records q Medical record samples r The normal distribution function value of a continuous floating-point variable. The range is within the normal distribution range;
[0237] S58: Normalized weights from structured symptom features Obtain the normalized weights of continuous floating-point variables , f Use the serial number of a continuous floating-point variable to calculate the query medical records. q Medical record samples r Floating-point characteristic distance of continuous floating-point variables ;
[0238] ;
[0239] S59: Based on the medical record query q Medical record samples r Symptoms s Symptom qualitative features binary value assignment Construct a three-valued logic difference function for assignment. ;
[0240] ;
[0241] in, It is the XOR operator;
[0242] S510: Normalized weights from structured symptom features Obtaining symptoms s Normalized weights Combined with three-valued logic difference functions Calculate and query medical records q Medical record samples r Symptom characteristics distance ;
[0243] ;
[0244] in, For conditional weights, The number of types of febrile diseases, In order to access medical records q A collection of febrile diseases associated with positive symptoms in the middle of the day. A collection of types of febrile diseases The number of types of fever-related illnesses;
[0245] S511: Based on symptom characteristics distance and floating-point feature distance Calculate and query medical records q Medical record samples r Comprehensive feature distance ;
[0246] ;
[0247] in, Based on querying medical records q Dynamic weights for the dynamic changes in the characteristics of structured symptoms.
[0248] S6: Sort the medical record sample set according to the magnitude of the comprehensive feature distance, filter and query medical record samples that are close to each other, and filter out redundant medical record samples. Use a greedy algorithm to select K medical record samples to obtain the medical record sample set. S .
[0249] Step S6 specifically includes:
[0250] S61: Based on the comprehensive feature distance The size of the medical record sample set Sort the medical record samples in the medical record sample set. Filter out the comprehensive feature distance The smallest set of 2K medical records that are adjacent to the queried medical record is used to construct the medical record sample set. R ;
[0251] S62: Based on medical record sample set R Fever disease d probability distribution Computing medical record sample sets R Conditional entropy of febrile diseases ;
[0252] ;
[0253] in, For medical record sample set R Fever disease exists in China d The number of medical record samples, To sum the variables for all febrile illnesses, In the medical record sample set The probability distribution of disease types under the given conditions;
[0254] S63: Define from medical record sample set R The medical record samples that China plans to remove are Using the conditional entropy of febrile diseases Calculate from medical record sample set R Removed medical record samples Marginal information gain ;
[0255] ;
[0256] in, This is the set of medical record samples to be removed. To remove the medical record sample set The medical record sample set, Medical record sample set Conditional entropy;
[0257] S64: If Then it is determined that the medical record sample should be removed. The information entropy increases afterward, affecting the proposed medical record sample. Retain; otherwise, submit the draft medical record sample. Remove; obtain a medical record sample set that has been filtered to remove redundant medical record samples. ;
[0258] S65: Calculate the medical record sample set The mutual information value of each medical record sample in the medical record sample set is used to extract the mutual information value from the medical record sample set using a greedy algorithm. Filter the most information K From a number of medical record samples, a medical record sample set is obtained. S medical record sample set S The types of fever-related diseases are added to the disease category set. .
[0259] Step S65 specifically includes:
[0260] S651: Define the medical record sample set S Number of medical record samples K Obtain a medical record sample set Number of medical record samples M ,like Then directly use the medical record sample set As a medical record sample set S If not, proceed to step S7; otherwise, proceed to step S652.
[0261] S652: Calculate the medical record sample set Each medical record sample Information content score ;
[0262] ;
[0263] in, For medical record sample set Types of Feverish Illnesses and Medical Record Samples The number of samples with the same type of fever disease. For medical record sample set Types of fever-related diseases and medical record samples The probability of samples with the same type of fever disease;
[0264] S653: Screening Medical Record Sample Sets Information content score Largest medical record sample Add to medical record sample set S In the middle, medical record samples The types of fever-related diseases are added to the disease category set. middle;
[0265] S654: Medical Record Sample Set The remaining medical record samples are denoted as the medical record sample set. And calculate the medical record sample set Information content score of medical record samples , b For medical record sample set The number of the medical record sample in the document;
[0266] S655: If the disease type set The types of fever-related illnesses in the medical record samples b The types of fever-related illnesses are based on information content scores. Update medical record samples b Information content score Otherwise, keep the medical record sample. b Information content score remains unchanged ;
[0267] S656: Obtain the medical record sample set Information content score data for all medical record samples , B For medical record sample set The number of medical record samples in the data. For medical record sample set The Middle B Information content score of each medical record sample;
[0268] S657: Filtering data based on information content score The maximum value in , to the maximum value The corresponding medical record samples are placed into the medical record sample set. S In the middle, and update the medical record sample set. S and medical record sample set ; set the maximum value The types of fever-related illnesses in the corresponding medical record samples are placed into the disease type set. In, and update the disease type set. ;
[0269] S658: Repeat steps S654-S657, continuing from the updated medical record sample set. Selected medical record samples are placed into the medical record sample set. S Until the medical record sample set S The number of medical record samples reached K Execute step S7.
[0270] S7: Based on the queried medical records, calculate the value from the medical record sample set. S The total probability of matching febrile diseases is used to calculate the comprehensive score of the match between the query medical records and the febrile diseases, and the matching febrile diseases are ranked according to the comprehensive score.
[0271] Step S7 specifically includes:
[0272] S71: For retrieving medical records q Calculate from the medical record sample set S Matched with fever diseases j probability ;
[0273] ;
[0274] in, As an indicator function, when the medical record sample set S Febrile diseases and febrile illnesses in Chinese medical record samples j Same indicator function The value is 1; otherwise, the indicator function... The value is 0. For medical record sample set S Confidence level of Chinese medical record samples , This represents the number of missing structured symptom features in the medical record sample. This represents the ideal number of structured symptom features in a medical record sample. For medical record sample set S Chinese medical record samples and medical record retrieval q Normalized weights, p For the summation process medical record sample set S Chinese medical record sample variables For the medical record sample variables arep Time and access to medical records q Normalized weights, Indicates the value to be retrieved;
[0275] S72: Based on probability Calculate and query medical records q Matched with fever j Total probability ;
[0276] ;
[0277] in, For variables With query value The probability of a match;
[0278] S73: Utilizing total probability Calculate and query medical records q Matched with fever disease j Overall score ;
[0279] ;
[0280] in, For medical record sample set S Fever disease exists in China j Continuous floating-point variables in medical record samples f The between-sample variance For medical record sample set S Fever disease exists in China j The number of continuous floating-point variables in the medical record sample. For medical record sample set S Fever disease exists in China j Continuous floating-point variables in medical record samples of f Mean of variance between samples For medical record sample set S Fever disease exists in China j Consistency of medical record samples For those with fever j Medical record samples in the medical record sample set S The proportion in;
[0281] S74: Obtain access to medical records q The system matches the comprehensive scores of all febrile illnesses and sorts them from highest to lowest based on the comprehensive score of each matched febrile illness. The output is based on the queried medical records. q The matched fever diseases are sorted.
Claims
1. An electronic medical record data analysis system for children with fever, characterized in that, include: The data acquisition module is used to input query cases and retrieve information from the query cases; The data processing and analysis module is used to perform electronic medical record data analysis methods for children with fever, and to match and sort the fever diseases based on the information in the queried cases; The method for analyzing the electronic medical record data of children with fever includes the following steps: S1: The original chief complaint text, present medical history data, and physical examination text of patients with fever are spliced together to form electronic medical record data, and an electronic medical record database is constructed. Candidate symptoms are extracted from the electronic medical record data using an intelligent big data model. The candidate symptoms are used as symptom seeds to generate a symptom dictionary. The number of symptom seeds in the symptom dictionary is iteratively optimized to generate a complete symptom dictionary. The complete symptom dictionary is then split into three types of result symptom dictionaries, including a symptom synonym dictionary, an antonym dictionary, and a pseudo-negation word dictionary. S2: Read records containing unstructured text from electronic medical record data, load three result symptom dictionaries, set a regular expression pattern set, filter the unstructured text according to the standardized symptom names, related descriptions in the three result symptom dictionaries and the regular expressions in the constructed regular expression pattern set, and generate the patient's structured symptom vector. S3: Extract structured symptom features from the structured symptom vector, calculate the joint distribution probability of fever and symptoms based on the number of medical records with corresponding symptoms and fever in the electronic medical record database, and then obtain the mutual information value between the corresponding symptom and fever classification. Use the mutual information value to calculate the normalized weight of the structured symptom features. S4: Calculate the point mutual information between symptoms and fever when the symptoms are positive based on the joint distribution probability of fever and symptoms, evaluate the correlation between symptoms and fever, construct a sparse matrix, and generate an inverted index of the association between symptoms and fever based on the point mutual information. S5: Extract observed symptoms from the queried medical records, construct a set of positive symptoms, retrieve the scores of fever diseases associated with the positive symptoms in the queried medical records from the inverted index, construct a set of candidate fever diseases, construct a set of medical record samples based on the candidate fever diseases in the set of candidate fever diseases, and calculate the comprehensive feature distance between the medical record samples in the set of medical record samples and the queried medical records based on the structured symptom features. S6: Sort the medical record sample set according to the magnitude of the comprehensive feature distance, filter and query medical record samples that are close to each other, and filter out redundant medical record samples. Use a greedy algorithm to select K medical record samples to obtain the medical record sample set. S ; S7: Based on the queried medical records, calculate the value from the medical record sample set. S The total probability of matching febrile diseases is used to calculate the comprehensive score of the match between the query medical records and the febrile diseases, and the matching febrile diseases are ranked according to the comprehensive score.
2. The electronic medical record data analysis system for febrile children according to claim 1, characterized in that, Step S1 includes: S11: Combine the original chief complaint text, present medical history data, and physical examination text of the fever patient to form electronic medical record data, build an electronic medical record database, filter the text content related to the patient's medical information in the electronic medical record data, and transform long sentences in the text content into multiple short sentences with higher symptom density, remove information unrelated to symptoms, and retain symptom description content. S12: Extract candidate symptoms from the retained symptom descriptions based on special words in the medical text pattern, and record the text source of the candidate symptoms to obtain a preliminary list of candidate symptoms. S13: Provide the preliminary candidate symptom list to the intelligent big model, use the intelligent big model to identify the real medical symptom phrases in the preliminary candidate symptom list, eliminate non-medical symptom phrases, and provide the standardized symptom names corresponding to the real medical symptom phrases. Classify the standardized symptom names by symptom type, and then merge the synonyms in the standardized symptom names to obtain symptom seeds. S14: Generate a symptom dictionary using all symptom seeds, and continue scanning electronic medical record data based on the symptom seeds in the symptom dictionary to find unmatched fields. Use an intelligent big data model to analyze the similarity between unmatched fields and symptom seeds. Add similar unmatched fields as missing candidate symptoms to the candidate symptom list, return to step S13, increase the number of symptom seeds in the symptom dictionary, and update the symptom dictionary. S15: Based on electronic medical record data, use intelligent big data models to generate synonyms and similar symptom names, antonyms of symptom descriptions, and synonyms containing negative words but expressing affirmation, and expand the symptom dictionary to obtain the expanded symptom dictionary; S16: After the symptom dictionary is expanded, continue scanning the electronic medical record data and iterate through steps S14-S15 until the coverage rate of newly added symptom seeds in the symptom dictionary meets the conditions or the number of iterations reaches the requirement. Then stop the iteration and output the complete symptom dictionary. The symptom seed coverage rate meets the following conditions: ;in, k The number of iterations. For the first k The set of symptom seeds in the symptom dictionary after each iteration. Represents the seed set of symptoms The number of seeds with symptoms For the first k The set of symptom seeds in the symptom dictionary after +1 iterations Represents the seed set of symptoms The number of seeds with symptoms Increased coverage for symptom-related seeds. This is the convergence threshold; S17: Output the complete symptom dictionary in the specified format as three result symptom dictionaries, including: Symptom Thesaurus: Used to include standardized symptom names for each symptom, as well as various synonyms or similar symptom names or non-standardized expressions; Antonym dictionary: used to include standardized symptom names and their antonyms; Pseudo-negative word dictionary: used to include standardized symptom names and synonyms containing negative words but expressing affirmation.
3. The electronic medical record data analysis system for febrile children according to claim 2, characterized in that, Step S2 includes: S21: Read records containing unstructured text from electronic medical record data and obtain the fields of the unstructured text; S22: Load the symptom dictionary and construct a regular expression pattern set. The regular expression pattern set includes predefined regular expressions, which include filtering fields for screening febrile disease medical records, negation fields for judging negation relationships, transition conjunction fields for identifying transition relationships, and exclusion fields for excluding non-current medical history. S23: Use predefined filtering fields to quickly filter target medical records from the chief complaint text of electronic medical record data, and combine filtering fields and negative fields to accurately separate the chief complaint text, present medical history data, and physical examination text related to the target febrile disease; S24: Merge the text fields in the chief complaint text, present medical history data, and physical examination text related to the target febrile disease into a complete integrated description string, and use punctuation marks as delimiters to divide the integrated description string into several independent semantic units; S25: Traverse the three types of result symptom dictionaries loaded, search for the existence of a string in each semantic unit that matches the standardized symptom name and related description in the three result symptom dictionaries, and perform discrete binarization assignment; specifically: If a standardized symptom name in the symptom thesaurus and its multiple synonyms or similar symptom names or non-standardized expressions, or a synonym expression containing a negative word but indicating affirmation in the pseudo-negative word dictionary are matched, then the corresponding standardized symptom name is marked on the semantic unit, and the binary value of the symptom qualitative feature of the semantic unit is assigned to 1, indicating that the symptom of the fever disease definitely exists. If a standardized symptom name and its antonym description are matched in the antonym dictionary, the corresponding standardized symptom name is marked on the semantic unit, and the binary value of the symptom qualitative feature of the semantic unit is assigned to 0, indicating that the symptom of the fever disease definitely does not exist. The remaining semantic units assign the qualitative feature value of the symptom to NaN, where NaN represents a null value, and the semantic unit does not mention the standardized symptom name; S26: Until the matching of standardized symptom names corresponding to all semantic units is completed, and the assignment of binary values of symptom qualitative features is completed; S27: Define a semantic unit A with a binary value of 1 for the qualitative symptom feature. Check the text before the position of semantic unit A to see if there is a negative field B. If so, proceed to step S28. Otherwise, keep the binary value of 1 for the qualitative symptom feature of semantic unit A unchanged. S28: Determine whether there is a transition conjunction field in the text segment between the negation field B and the semantic unit A. If so, the binary value of the symptom qualitative feature of the semantic unit A is assigned to 1 and remains unchanged. Otherwise, the binary value of the symptom qualitative feature of the semantic unit A is modified from 1 to 0. S29: After updating the symptom qualitative feature binary value of the semantic unit assignment, use the exclusion field to remove semantic units that describe non-current medical history, so that the remaining semantic units all reflect the patient's current fever disease status. S210: Using the visit number and standardized symptom name as the joint primary key, duplicate symptom expressions extracted from the retained semantic units are removed, and the symptom qualitative feature binary value corresponding to each symptom expression in the semantic unit is assigned as the structured symptom feature of each symptom. S211: Extract the structured symptom features of all symptoms, record them in the form of a long table, and then convert them into a wide table to generate a structured symptom vector for each symptom; S212: Extract continuous floating-point variables from the patient's electronic medical record data and integrate them into the structured symptom features. Update the structured symptom vector for each symptom and generate a complete structured symptom vector for each symptom.
4. The electronic medical record data analysis system for febrile children according to claim 3, characterized in that, Step S3 includes: S31: Extract the structured symptom features from the structured symptom vector for each symptom; S32: Define symptom characterization as labels in structured symptom features. s Statistical symptoms s The number of case records in the structured symptom feature set where the qualitative symptom feature binary value is assigned as 1 or 0. The number of medical records for which binary values for symptom qualitative characteristics were not assigned. And satisfy , N This refers to the total number of medical records in the electronic medical record database. S33: Calculate symptoms s observation rate and positive rate ; , ; in, For symptoms s The number of medical records whose symptom qualitative features are assigned a binary value of 1; S34: Define the event label for the occurrence of febrile illness as... ICD Calculate fever diseases in electronic medical record database d Prior information entropy and fever d probability of occurrence ; ; in, Fever-related illnesses are present in the electronic medical record database. d The number of medical records; S35: Extract symptoms from electronic medical record database s The set of medical records whose symptom qualitative features are assigned binary values of 1 or 0. Calculate febrile diseases d Symptoms s joint probability distribution ; ; in, v For symptoms s Assignment of binary values to the qualitative features of symptoms , For medical record collection The number of medical records Symptoms with a binary value of 1 or 0 are assigned a qualitative characteristic binary value. s And has a fever d A collection of medical records, For medical record collection The number of medical records in the database; S36: Based on the joint distribution probability Calculate symptoms s Assigning values to binary qualitative features of any symptom v Under these conditions, it is a febrile disease d probability ; ; in, For symptoms s Symptom qualitative features binary value assignment v The probability of being 1 or 0; S37: Based on probability Sum of probabilities Calculate symptoms s Febrile diseases under certain conditions d Classification information entropy ; ; in, For symptoms s The qualitative characteristics of symptoms are determined by binary values and assigned values. v Febrile diseases under certain conditions d Information entropy of classification; S38: Based on classification information entropy and prior information entropy Calculate symptoms s Mutual information between fever disease classification ; ; S39: Symptoms s observation rate The arithmetic square root is used as an adjustment factor for mutual information. Make adjustments and calculate the adjusted symptoms. s Mutual information value between fever disease classification ; ; S310: Extract continuous floating-point variables from the structured symptom features, perform mutual information processing, map the continuous floating-point variables to their corresponding interval indices, obtain the mutual information value between the continuous floating-point variables and the fever disease classification, and then... s Mutual information value between fever disease classification The mutual information value between continuous floating-point variables and febrile disease classifications is uniformly defined as the mutual information value of structured symptom features. , i Indicates symptoms s Structured symptom features formed by continuous floating-point variables; S311: Utilizing mutual information values Calculate the normalized weights of structured symptom features ; ; in, j For the structured symptom feature variables in the mutual information value summation process, For structured symptom characteristic variables j The corresponding mutual information value.
5. The electronic medical record data analysis system for febrile children according to claim 4, characterized in that, Step S4 includes: S41: Define symptoms s A positive result is indicated by a binary value of 1 for the symptom qualitative characteristic, based on the joint distribution probability. Symptoms s Joint distribution probability when positive and the joint distribution probability As symptoms s When observed and the disease is classified as a febrile illness d Under conditions, symptoms s The conditional probability of being positive; S42: Based on the joint distribution probability Calculate symptoms s A positive result is associated with febrile illnesses. d Point mutual information ; ; in, For symptoms s The probability of being positive. For symptoms s Positive and present with fever d A collection of medical records, For medical record collection The number of medical records in the database; S43: If Then determine the symptoms s With fever d There is a correlation between symptoms; otherwise, determine the symptoms. s With fever d There is no correlation between them; a sparse matrix is constructed to store all correlated symptoms. s With fever d Related pairs; S44: Construct an ordered list of all febrile diseases associated with each symptom based on a sparse matrix, and then construct an inverted index of the symptoms based on the ordered list. inverted_index : inverted_index ={Symptoms s : [Fever illness 1, fever illness 2, ..., fever illness G], fever illness G and symptoms s The point mutual information value is less than that of febrile disease G-1 and symptoms s The point mutual information value.
6. The electronic medical record data analysis system for febrile children according to claim 5, characterized in that, Step S5 includes: S51: From querying medical records q Extract observed symptoms s , recorded as Build a system for querying medical records q collection of positive symptoms , Indicates querying medical records q Positive symptoms are defined by a binary value of 1 for the qualitative characteristic of the symptoms. S52: From the inverted index inverted_index Search for point information linking symptoms with febrile illnesses. , obtain medical records q The maximum point mutual information value for each positive symptom ; ; S53: Select to query medical records q Maximum point mutual information value of positive symptoms The largest M Using each positive symptom as an anchor symptom, we obtain the anchor symptom set. ; S54: For retrieving medical records q For each positive symptom, query the inverted index. inverted_index For all febrile illnesses associated with positive symptoms, calculate the febrile illness score associated with positive symptoms. ; ; in, The weighted weights for anchor point symptoms. This is a collection of non-anchor point symptoms; S55: Select the highest score among all febrile illnesses associated with positive symptoms. L A set of candidate febrile diseases was obtained by selecting 10 febrile diseases as candidate febrile diseases. ; S56: Screen for candidate febrile illnesses from the electronic medical record database. Medical records of candidate febrile diseases were selected to obtain medical record samples. r And construct a medical record sample set. ; ; in, Indicates medical record sample r Types of febrile diseases; S57: Medical record sample set Chinese medical record samples r Continuous floating-point variables and querying medical records q The continuous floating-point variables in the data are standardized to calculate the query results for medical records. q With medical record sample r Standardized distance for continuous floating-point variables ; ; in, respectively querying medical records q Medical record samples r The normal distribution function value of a continuous floating-point variable. The range is within the normal distribution range; S58: Normalized weights from structured symptom features Obtain the normalized weights of continuous floating-point variables , f Use the serial number of a continuous floating-point variable to calculate the query medical records. q Medical record samples r Floating-point characteristic distance of continuous floating-point variables ; ; S59: Based on the medical record query q Medical record samples r Symptoms s Symptom qualitative features binary value assignment Construct a three-valued logic difference function for assignment. ; ; in, It is the XOR operator; S510: Normalized weights from structured symptom features Obtaining symptoms s Normalized weights Combined with three-valued logic difference functions Calculate and query medical records q Medical record samples r Symptom characteristics distance ; ; in, For conditional weights, The number of types of febrile diseases, In order to access medical records q A collection of febrile diseases associated with positive symptoms in the middle of the day. A collection of types of febrile diseases The number of types of febrile diseases in the country; S511: Based on symptom characteristics distance and floating-point feature distance Calculate and query medical records q Medical record samples r Comprehensive feature distance ; ; in, Based on querying medical records q Dynamic weights for the dynamic changes in the characteristics of structured symptoms.
7. The electronic medical record data analysis system for febrile children according to claim 6, characterized in that, Step S6 includes: S61: Based on the comprehensive feature distance The size of the medical record sample set Sort the medical record samples in the medical record sample set. Filter out the comprehensive feature distance The smallest set of 2K medical records that are adjacent to the queried medical record is used to construct the medical record sample set. R ; S62: Based on medical record sample set R Fever disease d probability distribution Computing medical record sample sets R Conditional entropy of febrile diseases ; ; in, For medical record sample set R Fever disease exists in China d The number of medical record samples, To sum the variables for all febrile illnesses, In the medical record sample set The probability distribution of disease types under the given conditions; S63: Define from medical record sample set R The medical record samples that China plans to remove are Using the conditional entropy of febrile diseases Calculate from medical record sample set R Medical record samples to be removed from China Marginal information gain ; ; in, This is the set of medical record samples to be removed. To remove the medical record sample set The medical record sample set, Medical record sample set Conditional entropy; S64: If Then it is determined that the medical record sample should be removed. After the information entropy increases, the proposed medical record sample will be... Retain; otherwise, the medical record sample will be removed. Remove the redundant medical record samples; obtain a medical record sample set that has been filtered out. ; S65: Calculate the medical record sample set The mutual information value of each medical record sample in the medical record sample set is used to extract the mutual information value from the medical record sample set using a greedy algorithm. Filter the one with the most information K From a number of medical record samples, a medical record sample set is obtained. S medical record sample set S The types of fever-related diseases are added to the disease category set. .
8. The electronic medical record data analysis system for febrile children according to claim 7, characterized in that, Step S65 includes: S651: Define the medical record sample set S Number of medical record samples K Obtain a medical record sample set Number of medical record samples M ,like Then directly use the medical record sample set As a medical record sample set S If not, proceed to step S7; otherwise, proceed to step S652. S652: Calculate the medical record sample set Each medical record sample Information content score ; ; in, For medical record sample set Types of Feverish Illnesses and Medical Record Samples The number of samples with the same type of fever disease. For medical record sample set Types of fever-related diseases and medical record samples The probability of samples with the same type of fever disease; S653: Screening Medical Record Sample Sets Information content score Largest medical record sample Add to medical record sample set S In the middle, medical record samples The types of fever-related diseases are added to the disease category set. middle; S654: Medical Record Sample Set The remaining medical record samples are denoted as the medical record sample set. And calculate the medical record sample set Information content score of medical record samples , b For medical record sample set The number of the medical record sample in the document; S655: If the disease type set The types of fever-related illnesses in the medical record samples b The types of fever-related illnesses are based on information content scores. Update medical record samples b Information content score Otherwise, keep the medical record sample. b Information content score remains unchanged ; S656: Obtain the medical record sample set Information content score data for all medical record samples , B For medical record sample set The number of medical record samples in the data. For medical record sample set The Middle B Information content score of each medical record sample; S657: Filtering data based on information content score The maximum value in , to the maximum value The corresponding medical record samples are placed into the medical record sample set. S In the middle, and update the medical record sample set. S and medical record sample set ; set the maximum value The types of fever-related illnesses in the corresponding medical record samples are placed into the disease type set. In, and update the disease type set. ; S658: Repeat steps S654-S657, continuing from the updated medical record sample set. Selected medical record samples are placed into the medical record sample set. S Until the medical record sample set S The number of medical record samples reached K Execute step S7.
9. The electronic medical record data analysis system for febrile children according to claim 8, characterized in that, Step S7 includes: S71: For retrieving medical records q Calculate from the medical record sample set S Matched with fever diseases j probability ; ; in, As an indicator function, when the medical record sample set S Febrile diseases and febrile illnesses in Chinese medical record samples j Same indicator function The value is 1; otherwise, the indicator function... The value is 0. For medical record sample set S Confidence level of Chinese medical record samples , This represents the number of missing structured symptom features in the medical record sample. This represents the ideal number of structured symptom features in a medical record sample. For medical record sample set S Chinese medical record samples and medical record retrieval q Normalized weights, p For the summation process medical record sample set S Chinese medical record sample variables For the medical record sample variables are p Time and access to medical records q Normalized weights, Indicates the value to be retrieved; S72: Based on probability Calculate and query medical records q Matched with fever j Total probability ; ; in, For variables With query value The probability of a match; S73: Utilizing total probability Calculate and query medical records q Matched with fever disease j Overall score ; ; in, For medical record sample set S Fever disease exists in China j Continuous floating-point variables in medical record samples f The between-sample variance For medical record sample set S Fever disease exists in China j The number of continuous floating-point variables in the medical record sample. For medical record sample set S Fever disease exists in China j Continuous floating-point variables in medical record samples f Mean of between-sample variance For medical record sample set S Fever disease exists in China j Consistency of medical record samples For those with fever j Medical record samples in the medical record sample set S The proportion in; S74: Obtain access to medical records q The system matches the comprehensive scores of all febrile illnesses and sorts them from highest to lowest based on the comprehensive score of each matched febrile illness. The output is based on the queried medical records. q The matched fever diseases are sorted.
Citation Information
Patent Citations
Construction method of general medical special disease data system
CN108538395A