Self-coordinated dual-attention medical record heterogeneous representation experiment tag recommendation system

CN122800091BActive Publication Date: 2026-10-27BEIJING HOUPU PHARM TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202611285053.1
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2026-08-24
Publication Date
2026-10-27
Estimated Expiration
2046-08-24

AI Technical Summary

Technical Problem

若模型只依据内容和记录时间分配类别权重、时间权重,某一来源在短时间内补到较多记录时,类别支路和时间支路可能同时提高该批记录的影响,导致病历异构表示和试验标签排序结果随接口运行状态变化

Benefits of technology

[0015]本发明从既有病历采集通道群、电子病历记录和接口接收日志中读取来源编号、就诊编号、记录时间和到达时间,形成就诊来源时延脊面并生成可信折减值,使类别支路和时间支路在处理同一批医疗数据消息时受到同一到达状态约束,减少集中迟到消息在两条支路中的重复放大;同时保留原始病历内容、记录时间和证据位置,不改变上游医疗信息系统、电子病历数据库和试验登记数据格式,能够提升试验标签排序结果在接口实时发送和批量补发场景下的一致性,并便于研究人员按原始证据复核。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122800091B_ABST
    Figure CN122800091B_ABST
Patent Text Reader

Abstract

The present application relates to the technical field of medical data processing, and discloses a self-collaborative double-attention medical record heterogeneous representation test label recommendation system applied to medical record message processing and clinical trial pre-screening in a medical information system.The system receives medical data messages and test registration data generated by a medical record collection channel group, retains source numbers, treatment numbers, record times and arrival times, forms source-treatment units according to the source numbers and the treatment numbers, determines a ridge value based on the arrival waiting time and generates a credible reduction value.A double-attention module uses the same credible reduction value to constrain uncorrected category scores and uncorrected time scores, obtains category weights and time weights, and converges event vectors to form a medical record heterogeneous representation.A label module generates relevant scores according to a label vector, and outputs test label ranking results and evidence positions.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of medical data processing technology, and more specifically, to a test label recommendation system based on self-cooperative dual-attention medical record heterogeneous characterization. Background Technology

[0002] In healthcare institutions' information platforms, HIS, LIS, PACS, EMR, interface engines, and research registries are typically maintained by different vendors or service clusters. Clinical trial pre-screening services generally read patient medical record data, trial registration data, and necessary access logs through read-only interfaces. Terminology normalization, event coding, vector indexing, candidate recall, ranking output, and audit retention are then performed on the hospital's server. Researchers then manually review the data based on original medical record fragments and trial conditions.

[0003] These types of pipelines encounter inconsistencies in data arrival times for both offline database building and online recommendation tasks. Report review, API queue backlogs, upstream service retransmissions, batch archiving, and cross-system time precision differences can all cause discrepancies between recorded and arrival times. Conventional data cleaning focuses on deduplication, encoding mapping, unit conversion, missing data masks, and time sorting; concentrated data from different sources within the same patient visit is typically only recorded as a log phenomenon.

[0004] Existing medical record matching models typically encode diagnoses, tests, medications, procedures, and text uniformly, then generate patient representations using category, time, or tag-related attention, and calculate similarity with trial registration data. If the model only assigns category and time weights based on content and record time, when a large number of records are added from a certain source in a short period, the category and time branches may simultaneously increase the influence of that batch of records, leading to heterogeneous medical record representations and trial tag ranking results that change with the interface's operational status.

[0005] Using arrival time directly as clinical time will change the sequence of events; deleting late arrival records directly will weaken the integrity of evidence and will not be conducive to audit reproduction. Summary of the Invention

[0006] This invention provides a test label recommendation system based on self-cooperative dual-attention medical record heterogeneous characterization, which solves the technical problems mentioned in the background art.

[0007] To achieve the above-mentioned objectives, the present invention provides the following technical solution.

[0008] A self-cooperative dual-attention medical record heterogeneous characterization test label recommendation system includes a data access module, a medical record coding module, a spine surface calculation module, a dual-attention module, and a label module;

[0009] The data access module is used to receive medical data messages and trial registration data generated by the medical record collection channel group, and retain the source number, visit number, recording time and arrival time for each medical data message;

[0010] The medical record encoding module is used to generate event vectors based on medical data messages;

[0011] The ridge surface calculation module is used to form a source-visit unit according to the source number and the visit number, determine the ridge surface value of the source-visit unit based on the arrival waiting time between the recording time and the arrival time, and generate a reliable reduction value from the ridge surface value;

[0012] The dual attention module is used to generate uncorrected category scores and uncorrected time scores, constrain the uncorrected category scores and uncorrected time scores respectively with the same confidence reduction value, obtain category weights and time weights, and aggregate the event vectors according to the category weights and time weights to form a heterogeneous representation of medical records;

[0013] The tag module is used to generate tag vectors based on trial registration data, and to generate relevant scores and trial tag ranking results based on the heterogeneous representation of medical records and the tag vectors.

[0014] Compared with the prior art, the present invention has the following substantial features and significant progress:

[0015] This invention reads the source number, visit number, recording time, and arrival time from existing medical record acquisition channels, electronic medical record records, and interface receiving logs. It forms a visit source delay ridge and generates a reliable reduction value, ensuring that the category branch and time branch are subject to the same arrival status constraint when processing the same batch of medical data messages, reducing the duplication and amplification of concentrated late messages in the two branches. At the same time, it preserves the original medical record content, recording time, and evidence location, without changing the upstream medical information system, electronic medical record database, and trial registration data format. This can improve the consistency of trial tag sorting results in real-time interface sending and batch resending scenarios, and facilitate researchers to review them according to the original evidence. Attached Figure Description

[0016] Figure 1 This is a schematic diagram of the modules and data flow of the self-cooperative dual-attention medical record heterogeneous characterization test label recommendation system of the present invention. Detailed Implementation

[0017] The following description is provided in conjunction with the accompanying drawings. It should be understood that the following embodiments are for illustrative purposes only and are not intended to limit the invention; those skilled in the art can make equivalent substitutions or combinations for the specific implementations.

[0018] This implementation relates to a trial label recommendation system based on self-cooperative dual-attention heterogeneous characterization of medical records. The system runs on a medical institution's intranet server, model server, or authorized electronic medical record data processing environment. It is designed for scenarios involving pre-screening of clinical trial studies, retrieval of trial registration data, and location of medical record evidence. It processes medical data messages and trial registration data generated by the medical record collection channel group and outputs trial label ranking results, relevant scores, and evidence locations.

[0019] Specifically, the medical record acquisition channel group can include laboratory systems, imaging or reporting systems, pharmacy systems, nursing systems, physician workstations, interface engines, application servers, and electronic medical record databases. Although the medical data messages generated by each channel eventually enter the same electronic medical record database or the same recommendation service, the recording time and arrival time may be inconsistent. Medical data messages from a certain source under the same visit may also arrive in a concentrated manner due to report signing, interface restoration, or batch processing.

[0020] In this embodiment, the system retains the source number, visit number, record time and arrival time from existing medical data messages and access logs, forms a visit source delay ridge in the model server, obtains a reliable reduction value from the visit source delay ridge, and then uses the same reliable reduction value to synchronously process the uncorrected category score and the uncorrected time score.

[0021] like Figure 1 As shown, the self-cooperative dual-attention medical record heterogeneous characterization test label recommendation system 100 includes a data access module 110, a medical record coding module 120, a spine surface calculation module 130, a dual-attention module 140, a label module 150, and an output module 160.

[0022] Furthermore, the detailed implementation of the data access module 110 is as follows:

[0023] The data access module 110 receives medical data messages and trial registration data generated by the medical record collection channel group, and retains the source number, visit number, record time, and arrival time for each medical data message. Medical data messages may include patient basic information, visit records, diagnostic codes, test results, medication records, operation records, and clinical text. Trial registration data may include trial number, title, research disease, intervention, trial stage, recruitment status, location, and inclusion / exclusion criteria.

[0024] The source number is used to identify the first The medical data message originates from an existing acquisition channel. The data access module 110 can obtain the source number from the interface routing field, the sending system identifier, or FHIRProvenance.

[0025] The visit number is used to identify the patient. The actual medical visit to which each medical data message belongs. The data access module 110 can obtain the visit number from the electronic medical record visit association, the electronic medical record Encounter identifier, or the existing visit association table of the medical institution. The visit number is used to separate medical data messages of different visits for the same patient, avoiding the entry of the arrival status of a historical visit into the visit source delay ridge of the current visit.

[0026] Record time is used to indicate the time when the upstream system records a medical event. For diagnostic codes, the record time can be the time the diagnostic record is saved or the time it is signed; for test results, the record time can be the time the test results are reviewed or the time the report is valid; for medication records, the record time can be the time the prescription is issued or the time the prescription is executed; for clinical texts, the record time can be the time the medical record is signed. Data access module 110 does not replace the record time with the arrival time; the clinical sequence of medical record events is still organized according to the record time.

[0027] The arrival time indicates the actual time when the interface engine receives the medical data message. The data access module 110 can obtain the arrival time from the interface engine's receive logs, message queue receive logs, or application service access logs.

[0028] The data access module 110 performs a field integrity check on the source number, patient number, record time, and arrival time. This field integrity check includes checking whether the source number is empty, whether the patient number can be associated, whether the record time and arrival time can be parsed, whether the record time and arrival time can be converted to the same time zone, and whether the medical data message has a patient anonymity identifier.

[0029] When a medical data message lacks a patient visit number, the data access module 110 retrieves the patient visit number based on existing electronic medical record associations. These existing associations can be patient visit relationships, doctor's orders and visit relationships, reports and visit relationships, or nursing records and visit relationships within the electronic medical record database. Medical data messages for which a patient visit number cannot be retrieved are placed in a verification queue and are not included in the calculation of the visit source latency ridge surface.

[0030] Medical data messages in the pending verification queue can still retain the original message body hash, access batch, error code, and reason for missing fields for auditing and traceability. The pending verification queue does not participate in the calculation of the treatment source latency ridge because the source-treatment unit must have both a source number and a treatment number; if the treatment number is missing, the system cannot determine which actual treatment the medical data message belongs to, and therefore cannot include the medical data message in the treatment source latency ridge.

[0031] The data access module 110 also receives test registration data and provides it to the tag module 150. The test registration data is used to generate tag vectors and forms test-side evidence of the test tag ranking results in the output module 160.

[0032] Furthermore, the detailed implementation of the medical record coding module 120 is as follows:

[0033] The medical record encoding module 120 is used to generate event vectors based on medical data messages. An event vector is a vector representation of a medical data message after encoding its content, event category, and time information. It is used by the subsequent dual-attention module 140 to calculate the uncorrected category score and the uncorrected time score. The medical record encoding module 120 receives medical data messages provided by the data access module 110, while retaining the correspondence between the medical data messages and the source number, visit number, record time, and arrival time.

[0034] The medical record coding module 120 can perform deduplication, terminology mapping, unit conversion, text processing, and sorting by record time on medical data messages. Deduplication can be performed by resource identifier and version number; terminology mapping can map diagnosis, test, drug, and operation codes to the standard terminology table adopted by the system; unit conversion can convert test values ​​to a unified unit for the same item; text processing can include sentence segmentation, medical entity recognition, negation recognition, and time expression recognition.

[0035] The medical record coding module 120 establishes a unified record item for each medical data message. The unified record item can include event category, standard concept, numerical value, unit, recording time, associated consultation, text location, and missing information mask. Event category can correspond to types such as diagnosis, test, medication, procedure, and text; standard concept corresponds to the medical concept mapped from the terminology; and text location is used by the output module 160 to return to the original medical record segment when displaying evidence locations.

[0036] When the medical record coding module 120 forms an event vector, it can use conventional code embedding, numerical projection, or a pre-trained medical text encoder to form a content vector, which is then concatenated with the event category embedding and the record time embedding and projected onto the same dimension.

[0037] Let the first Each medical data message is processed by the medical record coding module 120 to obtain an event vector. Event vector The corresponding source number is The corresponding medical record number is The corresponding recording time is The corresponding arrival time is .

[0038] The medical record coding module 120 provides event vectors to the dual attention module 140.

[0039] The medical record coding module 120 should also retain the traceability relationship between the event vector and the original medical data message. This traceability relationship includes the patient anonymity identifier, visit number, location of the original medical record segment, source of the medical data message, record time, and arrival time. The purpose of retaining this traceability relationship is to enable the output module 160 to display the location of evidence and to enable researchers to verify the medical record content on which the trial label sorting results are based.

[0040] Further detailed implementation of the ridge surface calculation module 130 is as follows:

[0041] The spine surface calculation module 130 is used to form a source-visit unit according to the source number and the visit number, determine the spine surface value of the source-visit unit based on the arrival waiting time between the recording time and the arrival time, and generate a reliable reduction value from the spine surface value.

[0042] A source-visit unit represents a set of medical data messages that share the same source ID and the same visit ID. The source ID is used as the source dimension, and the visit ID is used as the visit dimension. Medical data messages with the same source ID and the same visit ID are grouped into the same source-visit unit. The formula for calculating a source-visit unit is:

[0043]

[0044] in, This indicates the source-treatment unit, which is determined by the source number. And the patient's registration number is It consists of medical data messages. Indicates the first The source ID of the medical data message, which comes from the interface routing field, the sending system identifier, or FHIRProvenance. Indicates the first The visit number of each medical data message, which comes from the visit association in the electronic medical record or the Encounter identifier in the electronic medical record.

[0045] The spinal surface calculation module 130 calculates the arrival waiting time for each medical data message using the recording time and arrival time. The arrival waiting time represents the non-negative difference between the arrival time and the recording time. If a slight clock deviation between the recording time and the arrival time results in a negative calculation, the spinal surface calculation module 130 sets the arrival waiting time to zero to avoid interpreting the slight clock deviation as an early arrival. The formula for calculating the arrival waiting time is:

[0046]

[0047] in, Indicates the first Waiting time for a medical data message to arrive. Indicates the first The arrival time of each medical data message is obtained from the interface engine's received logs. Indicates the first The recording time of each medical data message is derived from the medical record event field.

[0048] The spinal surface calculation module 130 determines the number of medical data messages and the average waiting time per unit for medical data messages within the same source-treatment unit. The number of unit messages reflects the quantity of medical data messages in the source-treatment unit, and the average waiting time per unit reflects the average arrival waiting time for that source number under that treatment number. The corresponding calculation formula is:

[0049]

[0050] in, This indicates the number of unit messages from the source-patient unit. Indicates the source used for counting - the medical unit.

[0051]

[0052] in, This indicates the average waiting time per unit in the source-treatment unit. Indicates the source - the first in the consultation unit Waiting time for a medical data message to arrive.

[0053] When the number of unit messages for a certain source-patient unit is zero, that source-patient unit will not participate in the calculation of the average waiting time per unit. The statistical scope within the same patient visit is the source with valid medical data messages.

[0054] The spinal surface calculation module 130 determines the source proportion based on the number of unit messages within the same medical visit. The source proportion represents the ratio of the number of unit messages corresponding to a specific source number to the total number of unit messages from all valid sources within the same medical visit. The formula for calculating the source proportion is:

[0055]

[0056] in, This indicates the percentage of sources; the percentage of sources is used to indicate the source number. Source - Treatment unit in the treatment number The proportion of messages received during medical visits. Indicates the same patient number The source number is Source - Number of unit messages in the medical treatment unit.

[0057] The spinal surface calculation module 130 determines the average waiting time for a visit based on the source proportion and the average waiting time per unit. The average waiting time for a visit represents the weighted average waiting time within the same visit, calculated by source proportion. The formula for calculating the average waiting time for a visit is:

[0058]

[0059] in, The patient's medical record number is The average waiting time for medical visits. Indicates the same patient number The source number is The proportion of sources. Indicates the same patient number The source number is The average waiting time per unit.

[0060] The spinal surface calculation module 130 determines the relative waiting ratio based on the relative relationship between the average waiting time per unit and the average waiting time for outpatient visits, and determines the spinal surface value based on the source proportion and the relative waiting ratio. The relative waiting ratio reflects the multiple of the average waiting time per unit relative to the average waiting time for outpatient visits, and the spinal surface value reflects the product of the source proportion and the relative waiting ratio. The corresponding calculation formula is:

[0061]

[0062] in, The source number is And the patient's registration number is Source - relative waiting multiple of the treatment unit. This indicates the average waiting time per unit for the corresponding source-patient unit. Indicates the same patient number The average waiting time for medical visits.

[0063]

[0064] in, The source number is And the patient's registration number is Source - Spinal surface value of the treatment unit. This indicates the percentage of sources within the corresponding treatment unit. This indicates the relative waiting multiple for the corresponding source-patient unit.

[0065] When the average waiting time for a visit is zero, the spinal surface calculation module 130 sets the relative waiting multiple to zero and the spinal surface value to zero. This boundary processing indicates that there is no effective waiting time within the same visit that can be used to distinguish the difference in arrival waiting time between the source and the visit unit, and the system does not reduce the uncorrected category score and the uncorrected time score due to the difference in the source number of the visit.

[0066] The spine surface calculation module 130 arranges all valid spine surface values ​​according to the source number and the visit number to form the visit source time-delay spine surface. The visit source time-delay spine surface is not an arbitrary sample matrix, but rather a representation of the arrival status of the source dimension and visit dimension of the medical record acquisition channel group at each visit. Figure 1 The ridge surface calculation module 130 contains the source-patient unit, arrival waiting time, ridge surface value, and confidence reduction value, which correspond to the calculation chain.

[0067] The ridge surface calculation module 130 generates a confidence reduction value by decreasing the confidence reduction value as the ridge surface value increases. The confidence reduction value is used in the normalization preprocessing of the uncorrected category score and uncorrected time score in the dual attention module 140. The formula for calculating the confidence reduction value is:

[0068]

[0069] in, The source number is And the patient's registration number is Source - Confidential reduction value corresponding to the treatment unit. This indicates the spinal surface value of the same source-treatment unit.

[0070] When the average wait time for medical visits is zero, the spinal surface calculation module 130 ensures that the confidence reduction value does not apply a reduction to the uncorrected category score and the uncorrected time score. In practice, the confidence reduction value can be set to one, thus... The value is zero, thus ensuring that the uncorrected category score and the uncorrected time score are not reduced before normalization.

[0071] For visits originating from only one source, the spinal surface calculation module 130 can retain the calculation results of the source proportion, average waiting time, relative waiting multiple, spinal surface value, and confidence reduction value, and mark it as a single source in the audit log. For messages to be verified, the spinal surface calculation module 130 does not include them in the visitor source latency spinal surface statistics, and ensures that the message to be verified is processed without degrading its performance in the dual attention module 140.

[0072] Furthermore, the detailed implementation of the dual attention module 140 is as follows:

[0073] The dual attention module 140 is used to generate uncorrected category scores and uncorrected time scores. The uncorrected category scores and uncorrected time scores are constrained by the same confidence reduction value to obtain category weights and time weights. The event vectors are then aggregated based on the category weights and time weights to form a heterogeneous representation of medical records.

[0074] The uncorrected category score is the score of the category branch before normalization, before the addition of the confidence reduction value. The dual attention module 140 can generate the uncorrected category score based on the event category, the current query vector, and the event vector. The event category can include categories such as diagnosis, test, medication, operation, and text, and the current query vector can be provided by the label module 150 or the heterogeneous representation of the previous medical record.

[0075] The uncorrected time score is the score of the time branch before normalization, before the addition of the confidence reduction value. The dual attention module 140 can generate the uncorrected time score based on the order of visits, record time, current query vector, and event vector.

[0076] For the The medical data message, the dual attention module 140 obtains its event vector. and based on the source number and visit number Obtain the corresponding reliable reduction value The same reliable reduction value is simultaneously included in both the uncorrected category score and the uncorrected time score, enabling the two branches to self-coordinate around the same source—the patient arrival status.

[0077] The class weights are obtained by normalizing the uncorrected class scores and the confidence deduction values. The formula for calculating the class weights is:

[0078]

[0079] in, Indicates the first The category weights of the event vectors corresponding to each medical data message. Indicates the first The uncorrected category score of the event vector corresponding to each medical data message. Indicates the first The reliable reduction value corresponding to the source of each medical data message and the treatment unit.

[0080] The time weights are obtained by normalizing the uncorrected time fractions and the confidence reduction values. The formula for calculating the time weights is:

[0081]

[0082] in, Indicates the first The time weight of the event vector corresponding to each medical data message. Indicates the first The uncorrected time fraction of the event vector corresponding to each medical data message. Indicates the first The reliable reduction value corresponding to the source of each medical data message and the treatment unit.

[0083] The above processing can be equivalently understood as applying the same confidence reduction value to medical data messages belonging to the same source-treatment unit before normalization. The smaller the confidence reduction value, the lower the impact of the source-treatment unit on normalization in the category branch and time branch; when the confidence reduction value is one, the uncorrected category score and uncorrected time score are not reduced.

[0084] The dual-attention module 140 aggregates event vectors based on category weights to obtain category branch summaries; it also aggregates event vectors based on time weights to obtain time branch summaries. The formula for calculating the category branch summaries is:

[0085]

[0086] in, This represents a summary of the category branches. Indicates the first The category weights of the event vectors corresponding to each medical data message. Indicates the first The event vector corresponding to each medical data message.

[0087] The formula for calculating the time branch summary is:

[0088]

[0089] in, This represents a summary of the time branch. Indicates the first The time weight of the event vector corresponding to each medical data message. Indicates the first The event vector corresponding to each medical data message.

[0090] The dual attention module 140 fuses the category branch summary and the temporal branch summary into a heterogeneous medical record representation. The fusion can be implemented using the existing fully connected gating layer, residual connections, and layer normalization.

[0091] Heterogeneous representation of medical records can be represented as In one implementation, the dual-attention module 140 first concatenates the category branch summary and the time branch summary, and then uses a reused fusion function to form a heterogeneous representation of the medical record. The calculation formula is:

[0092]

[0093] in, This indicates a heterogeneous representation of medical records. This indicates the fusion function used, which can be composed of a fully connected gated layer, residual connections, and layer normalization. This represents the concatenation result of the category branch summary and the time branch summary.

[0094] In a directly executable implementation, the event vector, category branch summary, time branch summary, and heterogeneous medical record representation are all within the same model dimension, and the fusion function... It employs a conventional fully connected gating layer, residual connections, and layer normalization. The dual attention module 140 first generates a gating vector based on the concatenation of the category branch summary and the temporal branch summary; the calculation formula is:

[0095]

[0096] in, This represents the gate vector, which has the same model dimension as the event vector. Each term in the gate vector is a dimensionless value. This represents the gated weight matrix, which consists of model parameters determined during the model training phase and fixed with each model version. This represents the gate bias vector, which is a model parameter determined during the model training phase and fixed with the model version. This represents the term-wise Sigmoid function, which is used to restrict each term in the gate vector to a certain value. to between.

[0097] The dual attention module 140 fuses the category branch summary and the temporal branch summary item by item according to the gating vector to obtain the fusion candidate vector, calculated as follows:

[0098]

[0099] in, This represents the fusion candidate vector, which has the same model dimension as the event vector. This indicates that each term is multiplied sequentially, and this does not change the dimension of the model containing the vector.

[0100] The dual-attention module 140 then uses fully connected projection, residual connections, and layer normalization to form a heterogeneous representation of the medical record from the fused candidate vectors. The calculation formula is as follows:

[0101]

[0102] in, This represents the fusion projection weight matrix, which consists of model parameters determined during the model training phase and fixed with each model version. This represents the fusion projection bias vector, which is a model parameter determined during the model training phase and fixed with the model version. The layer normalization function is used to keep the heterogeneous representations of medical records within the fusion function. Within the output model dimension.

[0103] The values ​​of the gating weight matrix, gating bias vector, fusion projection weight matrix, and fusion projection bias vector are determined by the model training, validation, and version solidification process.

[0104] The dual attention module 140 can also regenerate the uncorrected category score and the uncorrected time score based on the heterogeneous representation of the medical record, and continue to use the same confidence reduction value to process the regenerated uncorrected category score and the regenerated uncorrected time score respectively.

[0105] It should be noted that the reconstructed uncorrected category scores and the reconstructed uncorrected time scores are still based on the same medical data message. Processing is performed to maintain the self-coordination of category branches and time branches around the same source - the arrival status of the patient.

[0106] The dual attention module 140 can use a mask to exclude padding positions, parsing failure events, and records that exceed the current processing boundary when performing normalization.

[0107] Further detailed implementations of the tag module 150 and the output module 160 are as follows:

[0108] The tagging module 150 is used to generate tag vectors based on trial registration data, and to generate relevant scores and trial tag ranking results according to the heterogeneous representation of medical records and the tag vectors. The tagging module 150 receives trial registration data provided by the data access module 110, and receives the heterogeneous representation of medical records output by the dual attention module 140.

[0109] The tagging module 150 can create a machine-readable tag for each recommendable trial. A machine-readable tag includes at least the trial number and is associated with the research disease, intervention, trial phase, and current recruitment status.

[0110] The label vector is used to represent the trial labels in the trial registration data. The label module 150 can write the label vector, trial version, and recruitment status into the vector index. When the trial registration data is updated, the label module 150 only recodes the trials that have changed; trials with closed recruitment can be removed from the online candidate set, but historical versions are retained for reproducing old recommendations.

[0111] The label module 150 performs label-related attention on the heterogeneous representation of medical records based on label vectors to form a medical record summary. The medical record summary is used to represent medical record content related to a specific label vector. Label-related attention is a conventional alignment method in existing patient-trial matching models, and this implementation uses it for alignment between the heterogeneous representation of medical records and label vectors.

[0112] In one directly executable implementation, the tag module 150 receives a tag vector and a sequence of heterogeneous medical record representations. The sequence of heterogeneous medical record representations is formed by the dual attention module 140 based on each event vector, wherein the first... Each heterogeneous medical record is denoted as , No. The label vector is denoted as The tag module 150 first calculates the first... The label vector and the first The label correlation score among heterogeneous representations of medical records is calculated as follows:

[0113]

[0114] in, Indicates the first The label vector and the first Label correlation scores among heterogeneous representations of medical records, where the label correlation scores are the unnormalized scores without dimensionless parameters. Indicates the first Each label vector is obtained by encoding the experimental registration data. Indicates the first A heterogeneous representation of medical records, which is formed by the dual attention module 140 based on event vectors, category weights, and time weights. The model dimension is the vector dimension used by both the label vector and the heterogeneous representation of medical records.

[0115] Label module 150 normalizes the label relevance scores corresponding to the same label vector to obtain the label relevance weights, calculated as follows:

[0116]

[0117] in, Indicates the first The label vector corresponds to the first... The label-related weights are represented by heterogeneous medical records, and the label-related weights are dimensionless weights. This indicates the number of heterogeneous medical record representations that have entered the tag-related attention module. The number of heterogeneous medical record representations is determined by the number of valid medical data messages that the current patient has entered the dual attention module 140.

[0118] Tag module 150 performs a weighted summation of the heterogeneous representations of medical records based on the relevant weights of the tags, forming the first... The medical record summary corresponding to each tag vector is calculated using the following formula:

[0119]

[0120] in, Indicates the first Each label vector corresponds to a medical record summary, and the medical record summary and the heterogeneous representation of the medical record are in the same model dimension.

[0121] When the number of heterogeneous representations of medical records is zero, the tag module 150 does not generate relevant scores and causes the output module 160 to display a status of insufficient data or pending review; when the number of heterogeneous representations of medical records is greater than zero, the tag module 150 generates a medical record summary according to the above formula.

[0122] The label module 150 generates a relevance score based on the medical record summary and label vectors. The relevance score represents the match score between the test label and the current medical record. The relevance score can be generated by a fully connected scoring layer, a vector similarity scoring layer, or an existing label scoring layer from the healthcare institution.

[0123] In one directly executable implementation, the tag module 150 generates a relevance score using the cosine similarity between the medical record summary and the tag vector, calculated as follows:

[0124]

[0125] in, Indicates the first The relevance score corresponding to each label vector. Indicates the first The medical record summary corresponding to each label vector. Indicates the first A label vector. The L2 norm representing the medical record summary This represents the L2 norm of the label vector.

[0126] When the L2 norm of the medical record summary or the L2 norm of the tag vector is zero, the tag module 150 causes the output module 160 to display a status of insufficient data or pending review.

[0127] The label module 150 generates test label sorting results from high to low based on relevance scores; if the relevance scores are the same, the test label sorting results are generated according to the stable test number order. The evidence location is determined by the traceability relationship of medical data messages corresponding to the label relevance weights, and the original medical record fragment location corresponding to the heterogeneous representation of the medical record with higher label relevance weights is given priority as the evidence location.

[0128] The tag module 150 outputs the trial tag ranking results and corresponding evidence locations according to relevant scores. The trial tag ranking results are arranged from high to low relevant scores; in case of a tie, the output can be repeated by maintaining a stable trial number order, without utilizing price, benefit, or resource allocation rules. Evidence locations can include the location of the original medical record fragment, the location of the trial conditions, the trial data version, and the medical record update time.

[0129] The output module 160 is used to output the test label sorting results and evidence positions, and to display the data version and audit information.

[0130] The output module 160 can record the input version, model version, output label, evidence location, and review status.

[0131] It should be noted that if a medical data message enters the verification queue, or if the key medical record data corresponding to a certain tag is insufficient, the output module 160 can display the status of insufficient data or pending verification, so that researchers know that the ranking result of the test tag needs to be further verified in conjunction with the original evidence.

[0132] As an optional implementation, medical data messages corresponding to different source numbers within the same visit arrive at the interface engine within a short time after being recorded in the upstream system. The data access module 110 retains the source number, visit number, recording time, and arrival time. The arrival waiting time calculated by the spine surface calculation module 130 is relatively small, and the difference in average waiting time between each source and visit unit is also small. In this case, the average visit waiting time can be greater than zero, or it can be close to zero due to the near-synchronous arrival of each medical data message. If the average visit waiting time is zero, the spine surface calculation module 130 ensures that the confidence reduction value does not apply a reduction to the uncorrected category score and uncorrected time score. If the average visit waiting time is greater than zero but the difference between sources is small, the confidence reduction value has a smaller impact on the category branch and time branch.

[0133] In this scenario, the dual-attention module 140 still processes the uncorrected category score and uncorrected time score using the same confidence reduction value. However, the trial label ranking result is primarily determined by the relationship between the event vector, event category, order of visit, recording time, and label vector. The output module 160 retains relevant scores, evidence locations, and audit information.

[0134] As an optional implementation, medical data messages corresponding to a specific source ID from the same visit arrive at a later time due to interface recovery or batch processing. The ridge surface calculation module 130 categorizes these medical data messages into corresponding source-visit units based on the source ID and visit ID, and calculates the arrival waiting time. If the source-visit unit has both a high number of unit messages and a large average unit waiting time, the source proportion and relative waiting multiple together increase the ridge surface value. The ridge surface calculation module 130 generates a confidence reduction value by decreasing the confidence reduction value when the ridge surface value increases, ensuring that the confidence reduction value of this source-visit unit is less than that of other source-visit units with more stable arrival states. The dual attention module 140 uses the same confidence reduction value before normalizing the uncorrected category score and uncorrected time score, preventing batch-reissued medical data messages from being repeatedly amplified in the category and time branches. This process preserves the medical data messages themselves and their evidence location, while reducing the impact of interface operating status on heterogeneous medical record representation and test label sorting results.

[0135] As an optional implementation, a medical data message may have a source number, recording time, and arrival time, but no directly readable visitor number. The data access module 110 first attempts to retrieve the visitor number based on existing electronic medical record associations. If the visitor number can be retrieved, the medical data message enters the source-visit unit. If the data access module 110 cannot retrieve the visitor number, the medical data message enters the verification queue and is not included in the visitor source delay ridge calculation. The output module 160 can retain the verification status of the medical data message in the audit information. This process prevents medical data messages with undetermined visitor numbers from polluting the visitor source delay ridge of a particular visit.

[0136] As an optional implementation, the arrival waiting time for each source-treatment unit in the same visit is zero, or the weighted result obtained after setting it to zero due to minor clock deviation is zero. The ridge surface calculation module 130 sets the relative waiting multiple to zero, the ridge surface value to zero, and the confidence reduction value to one. At this time, the dual attention module 140... Since the value is zero, the confidence reduction does not apply a reduction to the uncorrected category score and the uncorrected time score. The system reverts to a dual-attention approach that does not reduce the arrival status, avoiding weight changes when there are no arrival wait differences.

[0137] Although embodiments of this application have been described in conjunction with the accompanying drawings, those skilled in the art can make various modifications and variations without departing from the spirit and scope of this application, and all such modifications and variations fall within the scope defined by the appended claims.

Claims

1. A self-cooperative dual-attention medical record heterogeneous characterization test label recommendation system, comprising a data access module, a medical record coding module, a spinal surface calculation module, a dual-attention module, and a label module, characterized in that: The data access module is used to receive medical data messages and trial registration data generated by the medical record collection channel group, and retain the source number, visit number, recording time and arrival time for each medical data message; The medical record encoding module is used to generate event vectors based on medical data messages; The ridge surface calculation module is used to form a source-visit unit according to the source number and the visit number, determine the ridge surface value of the source-visit unit based on the arrival waiting time between the recording time and the arrival time, and generate a reliable reduction value from the ridge surface value; The formula for calculating the ridge surface value is: ; in, The source number is And the patient's registration number is Source - Spinal surface value of the treatment unit, This indicates the percentage of sources within the corresponding treatment unit. This indicates the relative waiting time multiple for the corresponding source and treatment unit; ; in, The source number is And the patient's registration number is Source - relative waiting multiple of the treatment unit, This indicates the average waiting time per unit for the corresponding source-patient unit. Indicates the same patient number The average waiting time for a medical visit; The formula for calculating the credible reduction value is as follows: ; in, The source number is And the patient's registration number is The source of the reliable reduction value corresponding to the treatment unit. Indicates the spinal surface value of the same source-treatment unit; The dual attention module is used to generate uncorrected category scores and uncorrected time scores, constrain the uncorrected category scores and uncorrected time scores respectively with the same confidence reduction value, obtain category weights and time weights, and aggregate the event vectors according to the category weights and time weights to form a heterogeneous representation of medical records; The tag module is used to generate tag vectors based on trial registration data, and to generate relevant scores and trial tag ranking results based on the heterogeneous representation of medical records and the tag vectors.

2. The self-cooperative dual-attention medical record heterogeneous characterization test label recommendation system according to claim 1, characterized in that, The data access module is used to obtain the source number from the interface routing field or the sending system identifier, obtain the visit number from the electronic medical record visit association, obtain the record time from the medical record event field, and obtain the arrival time from the log received from the interface engine. When the medical data message lacks a visit number, the data access module supplements the visit number according to the existing electronic medical record association. Medical data messages that cannot be supplemented enter the verification queue and are not included in the visit source delay ridge calculation.

3. The self-cooperative dual-attention medical record heterogeneous characterization test label recommendation system according to claim 1, characterized in that, The spinal surface calculation module is used to determine the number of messages in a unit and the average waiting time in a unit for medical data messages from the same source-patient unit. Within the same patient visit, it determines the source proportion based on the number of messages in the unit, determines the average waiting time for the patient visit based on the source proportion and the average waiting time in the unit, determines the relative waiting multiple based on the relative relationship between the average waiting time in the unit and the average waiting time for the patient visit, and finally determines the spinal surface value based on the source proportion and the relative waiting multiple.

4. The self-cooperative dual-attention medical record heterogeneous characterization test label recommendation system according to claim 3, characterized in that, The spine surface calculation module is used to generate a confidence reduction value in a manner that reduces the confidence reduction value as the spine surface value increases, and when the average waiting time for medical treatment is zero, the confidence reduction value does not apply a reduction processing to the uncorrected category score and the uncorrected time score.

5. The self-cooperative dual-attention medical record heterogeneous characterization test label recommendation system according to claim 1, characterized in that, The dual attention module is used to generate an uncorrected category score based on the event category and an uncorrected time score based on the order of visits and the recording time. Before normalization, the uncorrected category score and the uncorrected time score are processed separately using the same confidence reduction value to obtain the category weight and time weight respectively.

6. The self-cooperative dual-attention medical record heterogeneous characterization test label recommendation system according to claim 5, characterized in that, The dual attention module is used to aggregate event vectors according to category weights and time weights respectively, merge the aggregation results into a heterogeneous medical record representation, and regenerate uncorrected category scores and uncorrected time scores based on the heterogeneous medical record representation. The same confidence reduction value is then used to process the regenerated uncorrected category scores and regenerated uncorrected time scores respectively.

7. The self-cooperative dual-attention medical record heterogeneous characterization test label recommendation system according to claim 1, characterized in that, The tagging module is used to encode trial registration data into tag vectors, perform tag-related attention on heterogeneous medical record representations based on tag vectors to form medical record summaries, generate relevant scores based on medical record summaries and tag vectors, and output trial tag ranking results and corresponding evidence positions according to relevant scores.

8. A method for recommending test labels based on the heterogeneous characterization of self-cooperative dual-attention medical records, characterized in that: include: Receive medical data messages and trial registration data generated by the medical record collection channel group; For each medical data message, retain the source ID, visit ID, recording time, and arrival time; Event vectors are generated based on medical data messages; Form source-visit unit according to source number and visit number; The spinal surface value of the source-patient unit is determined based on the arrival waiting time between the recording time and the arrival time, and a reliable reduction value is generated from the spinal surface value; The formula for calculating the ridge surface value is: ; in, The source number is And the patient's registration number is Source - Spinal surface value of the treatment unit, This indicates the percentage of sources within the corresponding treatment unit. This indicates the relative waiting time multiple for the corresponding source and treatment unit; ; in, The source number is And the patient's registration number is Source - relative waiting multiple of the treatment unit, This indicates the average waiting time per unit for the corresponding source-patient unit. Indicates the same patient number The average waiting time for a medical visit; The formula for calculating the credible reduction value is as follows: ; in, The source number is And the patient's registration number is The source of the reliable reduction value corresponding to the treatment unit. Indicates the spinal surface value of the same source-treatment unit; An uncorrected category score is generated based on the event vector and event category, and an uncorrected time score is generated based on the event vector, the order of visits, and the recording time. By constraining the uncorrected category score and the uncorrected time score with the same confidence reduction value, the category weight and time weight are obtained; Event vectors are aggregated based on category weights and time weights to form a heterogeneous representation of medical records; Label vectors are generated based on trial registration data. Relevant scores are generated based on the heterogeneous representation of medical records and label vectors. The trial label ranking results are then output according to the relevant scores.

9. An electronic device, characterized in that, It includes a processor and a memory, wherein the memory stores program instructions, which, when executed by the processor, implement the label recommendation method for the heterogeneous characterization test of self-cooperative dual attention medical records as described in claim 8.

10. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores program instructions that, when executed by a processor, implement the label recommendation method for heterogeneous characterization of medical records based on self-cooperative dual attention as described in claim 8.

Citation Information

Patent Citations

  • Data processing method for ICD code recommendation of outpatient medical records

    CN121747810A

  • Western medicine combination recommendation method and system based on multi-source medicine graph collaborative fusion and global case memory enhancement

    CN122245602A