Real-time prediction of intradialytic hypotension

By using the machine learning model to train negative and positive classes of patient data, ignoring the time window immediately before the IDH event, real-time prediction and adjustment of treatment were achieved, solving the problem of predicting and managing hypotension during dialysis and reducing the incidence and mortality of IDH.

CN114845631BActive Publication Date: 2025-09-09FRESENIUS MEDICAL CARE HOLDINGS INC
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202080088637.4
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2020-06-10
Filing Date
2020-12-02
Publication Date
2025-09-09
Estimated Expiration
2040-12-02

AI Technical Summary

Technical Problem

Intradialytic hypotension (IDH) is difficult to predict and manage effectively with existing technologies, leading to increased morbidity and mortality and increased treatment costs.

Method used

A machine learning model is trained using both negative and positive classes of patient data, ignoring the time window immediately preceding the IDH event, to predict IDH events in real time and make treatment adjustments, including reducing the ultrafiltration rate, lowering the dialysate temperature, or repositioning the patient.

Benefits of technology

It achieves real-time prediction of IDH events, provides sufficient time for clinical intervention, reduces the incidence and related risks of IDH, and reduces treatment costs.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114845631B_ABST
    Figure CN114845631B_ABST
Patent Text Reader

Abstract

A technique for real-time intradialytic hypotension (IDH) prediction is disclosed. The system obtains historical hemodialysis treatment data, which is divided into a machine learning training data set based on temporal proximity to IDH events, and trains a machine learning model based on the machine learning training data set to predict IDH events.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] Related applications

[0002] This application claims the benefit of U.S. non-provisional patent application serial number 16 / 897,430, filed on June 10, 2020, entitled “REAL-TIME INTRADIALYTIC HYPOTENSION PREDICTION,” and U.S. provisional patent application serial number 62 / 951,259, filed on December 20, 2019, entitled “REAL-TIME INTRADIALYTICHYPOTENSION PREDICTION,” both of which are incorporated herein by reference in their entireties. Background Art

[0003] Intradialytic hypotension (IDH) is one of the most common complications encountered during hemodialysis. It is estimated that the incidence of IDH is as high as thirty percent (30%) of all hemodialysis sessions. See, e.g., Intradialytic hypotension: frequency, sources of variation and correlation with clinical outcome. Sands JJ, Usvyat LA, Sullivan T, Segal JH, Zabetakis P, Kotanko P, Maddux FW, Diaz-Buxo JA. Hemodial Int. 2014 Apr;18(2):415-22. doi:10.1111 / hdi.12138. Epub 2014 Jan 27).

[0004] IDH is a major risk factor for increased morbidity and mortality. For example, IDH may cause dizziness, vomiting, loss of consciousness, and / or other complications. Managing the incidence of IDH requires considerable staff attention, which increases the overall cost of treatment. For these and / or other reasons, improving IDH risk management is therefore an important goal in many clinical settings. For example, the US healthcare system appears to be moving toward an integrated care model for end-stage renal disease (ESRD), in which improved IDH risk management may be highly correlated with overall treatment outcomes.

[0005] The approaches described in this section are not necessarily conceived and / or pursued prior to the filing of this application. Accordingly, unless otherwise indicated, the approaches described in this section should not be construed as prior art. Technical Field

[0006] The present disclosure generally relates to predicting intradialytic hypotension. Summary of the Invention

[0007] One or more embodiments improve IDH prediction relative to existing methods and allow real-time IDH prediction. One or more embodiments include machine learning using a negative class of patient data (i.e., data from a time period before the IDH event in which the patient is below the threshold for predicting IDH) and a positive class of patient data (i.e., data from a time period before the IDH event in which the patient is at or above the threshold for predicting IDH). Using the negative class of patient data can help the trained model distinguish between negative conditions and positive conditions in real time. Using the negative class of patient data can also help prevent premature IDH predictions. One or more embodiments include machine learning using a non-IDH class of patient data (i.e., data from patients who have not experienced an IDH event). Using the non-IDH class of patient data can help the trained model distinguish between pre-IDH conditions and non-IDH conditions in real time. One or more embodiments include machine learning that lacks or otherwise ignores data in the time window immediately before the IDH event (e.g., within 15 minutes before the IDH event). Ignoring the data in the time window immediately before the IDH event can help the trained model predict the IDH event in real time, with enough time for clinical intervention.

[0008] In general, in one aspect, one or more non-transitory computer-readable media store instructions that, when executed by one or more processors, result in: obtaining historical hemodialysis treatment data, the historical hemodialysis treatment data being divided into a machine learning training data set based on temporal proximity to an intradialytic hypotension (IDH) event; and training a machine learning model based on the machine learning training data set to predict an IDH event. The machine learning training data set may include: a first machine learning training data set labeled as a positive class, comprising medical data recorded within a minimum duration before the IDH event and a maximum duration before the IDH event, wherein the minimum duration is at least long enough to perform a medical intervention before the IDH event; and a second machine learning training data set labeled as a negative class, comprising medical data recorded within a time period exceeding the maximum duration before the IDH event.

[0009] The one or more non-transitory computer-readable media may also store instructions that, when executed by the one or more processors, result in: obtaining real-time hemodialysis data associated with a hemodialysis patient; and applying the real-time hemodialysis data to a machine learning model to predict whether an IDH event is imminent for the hemodialysis patient. Based on the real-time hemodialysis data, the machine learning model may predict that an IDH event is not imminent. Based on the real-time hemodialysis data, the machine learning model may predict that an IDH event is imminent.

[0010] The one or more non-transitory computer-readable media may also store instructions that, when executed by the one or more processors, result in: in response to predicting that an IDH event is about to occur, adjusting treatment of the hemodialysis patient to prevent the IDH event without human intervention. Adjusting treatment of the hemodialysis patient without human intervention may include one or more of: reducing the ultrafiltration rate, lowering the dialysate temperature, or mechanically repositioning the hemodialysis patient.

[0011] Generally, in one aspect, a system includes at least one device comprising a hardware processor. The system is configured to perform operations including: obtaining historical hemodialysis treatment data, the historical hemodialysis treatment data being divided into a machine learning training data set based on a temporal proximity to an intradialytic hypotension (IDH) event; and training a machine learning model based on the machine learning training data set to predict an IDH event. The machine learning training data set may include: a first machine learning training data set labeled as a positive class, comprising medical data recorded within a minimum duration before the IDH event and a maximum duration before the IDH event, wherein the minimum duration is at least long enough to perform a medical intervention before the IDH event; and a second machine learning training data set labeled as a negative class, comprising medical data recorded within a time period exceeding the maximum duration before the IDH event.

[0012] The operations may also include: obtaining real-time hemodialysis data associated with a hemodialysis patient; and applying the real-time hemodialysis data to a machine learning model to predict whether an IDH event is imminent for the hemodialysis patient. Based on the real-time hemodialysis data, the machine learning model may predict that an IDH event is not imminent. Based on the real-time hemodialysis data, the machine learning model may predict that an IDH event is imminent.

[0013] The operation may also include: in response to predicting that an IDH event is about to occur, adjusting the treatment of the hemodialysis patient without human intervention to prevent the IDH event. Adjusting the treatment of the hemodialysis patient without human intervention may include one or more of the following: reducing the ultrafiltration rate, lowering the dialysate temperature, or mechanically repositioning the hemodialysis patient.

[0014] Generally, in one aspect, a method includes: obtaining historical hemodialysis treatment data, the historical hemodialysis treatment data being divided into a machine learning training data set based on temporal proximity to an intradialytic hypotension (IDH) event; and training a machine learning model based on the machine learning training data set to predict an IDH event. The machine learning training data set may include: a first machine learning training data set labeled as a positive class, comprising medical data recorded within a minimum duration before the IDH event and a maximum duration before the IDH event, wherein the minimum duration is at least long enough to perform a medical intervention before the IDH event; and a second machine learning training data set labeled as a negative class, comprising medical data recorded within a time period exceeding the maximum duration before the IDH event.

[0015] The method may further include: obtaining real-time hemodialysis data associated with a hemodialysis patient; and applying the real-time hemodialysis data to a machine learning model to predict whether an IDH event is imminent for the hemodialysis patient. Based on the real-time hemodialysis data, the machine learning model may predict that an IDH event is not imminent. Based on the real-time hemodialysis data, the machine learning model may predict that an IDH event is imminent.

[0016] The method may further include: in response to predicting that an IDH event is about to occur, adjusting treatment of the hemodialysis patient without human intervention to prevent the IDH event. Adjusting treatment of the hemodialysis patient without human intervention includes one or more of: reducing the ultrafiltration rate, lowering the dialysate temperature, or mechanically repositioning the hemodialysis patient.

[0017] One or more embodiments described in this specification and / or recited in the claims may not be included in this general overview section. BRIEF DESCRIPTION OF THE DRAWINGS

[0018] Various aspects of at least one embodiment are discussed below with reference to the accompanying drawings, which are not intended to be drawn to scale. The accompanying drawings are included to provide illustration and a further understanding of the various aspects and embodiments and are incorporated into and constitute a part of this specification but are not intended to define the limits of the present disclosure. In the drawings, each identical or nearly identical component illustrated in various figures is represented by a like numeral. For clarity, some components are not labeled in every figure. In the drawings:

[0019] Figure 1 is a block diagram of an example of a system according to an embodiment;

[0020] Figure 2 is a block diagram of an example of a connected health system according to an embodiment;

[0021] Figure 3 is a flow chart of an example of operations for real-time intradialytic hypotension prediction according to an embodiment;

[0022] Figure 4A-4B FIGURES AN EXAMPLE OF A RECEIVER OPERATING CURVE IN ACCORDANCE WITH AN EMBODIMENT;

[0023] Figure 5 is a block diagram of an example of a machine learning training data set according to an embodiment;

[0024] Figure 6 Figure illustrates an example of threshold-based classification according to an embodiment;

[0025] Figures 7A-7F illustrates an example of experimental results according to an embodiment; and

[0026] Figure 8 is a block diagram of an example of a computer system according to an embodiment. DETAILED DESCRIPTION

[0027] Figure 1 is a block diagram of an example of a system 100 according to an embodiment. In an embodiment, the system 100 may include Figure 1 More or fewer components than shown. Figure 1 The components shown in may be local or remote to each other. Figure 1 The components shown in the figure can be implemented in software and / or hardware. Each component can be distributed across multiple applications and / or machines. Multiple components can be combined into one application and / or machine. Operations described with respect to one component can be performed by another component instead.

[0028] In an embodiment, intradialytic hypotension (IDH) prediction service 102 refers to the hardware and / or software configured to perform the operation for real-time IDH prediction. The example of the operation for real-time IDH prediction is described below. Specifically, IDH prediction service 102 includes a machine learning engine 104. Machine learning includes various technologies related to computer implementation, independent of the user's process for solving problems with variable inputs in the field of artificial intelligence. For example, one or more embodiments can use machine learning to predict the risk of IDH based on real-time data as described herein, predict the results of treatment policies, recommend alternative treatment policies and / or provide another prediction, recommendation and / or other information. The machine learning engine 104 can be configured to calculate a metric (e.g., a percentage, a fractional value, an integer value, a letter grade and / or a metric or a combination thereof) corresponding to the risk of an impending IDH event. As described herein, the metric can be compared (i.e., compared by another component of the machine learning engine 104 and / or system 100) and compared with one or more threshold values.

[0029] In an embodiment, the machine learning engine 104 trains the machine learning model 106 to perform one or more operations. The trained machine learning model 106 uses training data to generate a function that, given one or more inputs to the machine learning model 106, calculates a corresponding output. The output may correspond to a prediction based on previous machine learning. In an embodiment, the output includes a label, classification, and / or categorization assigned to the provided input(s). The machine learning model 106 corresponds to a learned model for performing the desired operation(s) (e.g., labeling, classifying, and / or categorizing the inputs). The system 100 may use multiple machine learning engines and / or multiple machine learning models for different purposes.

[0030] In an embodiment, the machine learning engine 104 may use supervised learning, semi-supervised learning, unsupervised learning, reinforcement learning and / or another training method or a combination thereof. In supervised learning, labeled training data includes input / output pairs, where each input is labeled with a desired output (e.g., labeled, classified and / or categorized), which is also called a supervisory signal. In semi-supervised learning, certain inputs are associated with supervisory signals, while other inputs are not associated with supervisory signals. In unsupervised learning, the training data does not include a supervisory signal. Reinforcement learning uses a feedback system in which the machine learning engine 104 receives positive reinforcement and / or negative reinforcement in the process of attempting to solve a specific problem (e.g., optimizing performance in a specific scenario according to one or more predefined performance criteria). In an embodiment, the machine learning engine 104 initially trains the machine learning model 106 using supervised learning, and then uses unsupervised learning to continuously update the machine learning model 106.

[0031] In an embodiment, the machine learning engine 104 may use many different techniques to label, classify, and / or categorize the input. The machine learning engine 104 may transform the input into a feature vector that describes one or more attributes (“features”) of the input. The machine learning engine 104 may label, classify, and / or categorize the input based on the feature vector. Alternatively or additionally, the machine learning engine 104 may use clustering (also known as cluster analysis) to identify commonalities in the input. The machine learning engine 104 may group (i.e., cluster) the input based on those commonalities. The machine learning engine 104 may use hierarchical clustering, k-means clustering, and / or another clustering method, or a combination thereof. In an embodiment, the machine learning engine 104 includes an artificial neural network. An artificial neural network includes a plurality of nodes (also known as artificial neurons) and edges between the nodes. The edges may be associated with corresponding weights that represent the strength of the connection between the nodes, and the machine learning engine 104 adjusts these weights as the machine learning proceeds. Alternatively or additionally, the machine learning engine 104 may include a support vector machine. A support vector machine represents the input as a vector. The machine learning engine 104 can label, classify and / or categorize the input based on the vector. Alternatively or additionally, the machine learning engine 104 can use a naive Bayes classifier to label, classify and / or categorize the input. Alternatively or additionally, given a specific input, the machine learning model 106 can apply a decision tree to predict the output for the given input. Alternatively or additionally, the machine learning engine 104 can apply fuzzy logic when it is impossible or impractical to label, classify and / or categorize the input between a fixed set of mutually exclusive options. The above-described machine learning model 106 and techniques are discussed for exemplary purposes only and should not be construed as limiting one or more embodiments.

[0032] In an embodiment, the system 100 includes a data repository 108. The data repository 108 is configured to store historical hemodialysis treatment data, i.e., data about hemodialysis patients and the treatments provided to those patients. The historical hemodialysis treatment data may include demographic data 110. Alternatively or additionally, the historical hemodialysis treatment data may include comorbidity data 112. Alternatively or additionally, the historical hemodialysis treatment data may include treatment data 114. Alternatively or additionally, the historical hemodialysis treatment data may include laboratory data 116. In general, in combination with the techniques described herein, intradialysis measurements such as systolic blood pressure (SBP), diastolic blood pressure (DBP), and ultrafiltration rate can allow previously unavailable insights into hemodynamics during hemodialysis, particularly before and after an IDH event.

[0033] For example, historical hemodialysis treatment data may include data associated with one or more of the following: number of days since first dialysis date; blood flow rate; dialysis flow rate; sitting diastolic blood pressure; fluid removed; pulse; sitting systolic blood pressure; ultrafiltration rate; change in systolic blood pressure (SBP) between measurements (e.g., current measurement, measurement before current measurement during the same treatment session, and / or between pre-treatment measurements); change in diastolic blood pressure (DBP) between measurements (e.g., current measurement, measurement before current measurement during the same treatment session, and / or between pre-treatment measurements); change in pulse between measurements; flag or supervisory signal (e.g., positive or negative for IDH); treatment time in minutes; patient race (e.g., whether the patient is Hispanic); Patient sex; patient height; information about the dialysis access site (e.g., whether the access site is an arteriovenous (AV) fistula, AV graft, or catheter); pre-treatment SBP; pre-treatment DBP; pre-treatment weight; pre-treatment temperature; prescribed dry weight; intradialytic weight gain (e.g., in kilograms); intradialytic percentage weight gain; prescribed treatment duration; dialysate sodium (Na); difference between serum sodium and dialysate sodium; normalized protein catabolism rate (PCR); fluid volume; delivered equilibrated (eKt / V); pre-treatment urea; post-treatment urea; urea reduction rate (URR); methoxypolyethylene glycol-epoetin beta (e.g., Mircera) dose; albumin leukemia; alkaline phosphatase (ALP); basophils; bicarbonate; serum calcium; calcium correction; chloride; creatinine; eosinophils; ferritin; hematocrit (HCT); hemoglobin (HGB); lymphocytes; mean corpuscular hemoglobin (MCH); MCH concentration (MCHC); mean corpuscular volume (MCV); monocytes; neutrophils; neutrophil-lymphocyte ratio (NLR); phosphorus; platelets; potassium; red blood cell (RBC) count; red blood cell distribution width; serum sodium; total iron-binding capacity (TIBC); transferrin saturation (TSAT); information on comorbidities (e.g., whether the patient has anemia, skin cancer, arrhythmias, cerebrovascular disease, congestive heart failure ( =CHF), chronic obstructive pulmonary disease (COPD), disability, drug and / or alcohol dependence, gastrointestinal bleeding, hepatitis, human immunodeficiency virus (HIV) / acquired immune deficiency syndrome (AIDS), hyperparathyroidism, infection, ischemic heart disease (IHD), myocardial infarction (MI), peripheral arterial disease (PAD) / percent atherosclerosis volume (PAD), pneumonia, and / or another comorbidity); age at first dialysis; weekday of dialysis treatment; SBP after last treatment; DBP after last treatment; blood flow rate (QB) at last treatment; dialysate flow rate (QD) at last treatment; weight after last treatment; weight gradient after last treatment;Ultrafiltration volume of the last treatment; ultrafiltration rate of the last treatment; temperature after the last treatment; treatment time in minutes of the last treatment; treatment time gradient towards the last treatment; normal saline used in the last treatment; online clearance (OLC) measurement; body mass index (BMI) at the time of the last treatment; lowest SBP during the previous treatment period; lowest DBP during the previous treatment period; lowest pulse during the previous treatment period; whether an IDH event occurred during the previous treatment period; IDH event rate throughout the treatment history; IDH event rate for the n most recent treatments (e.g., n=10); mean of the lowest pulse for the n most recent treatments (e.g., n=10); patient's ethnic identity; and / or another data or combination thereof.

[0034] One or more items of the historical hemodialysis treatment data may be represented as Boolean data (e.g., true / false, 0 / 1, yes / no, etc.). For example, Boolean data may be used to indicate whether a patient is Hispanic. Alternatively or additionally, one or more items of the historical hemodialysis treatment data may be represented as numbers, letters, strings, or other data types. For example, a measurement may be represented as a numerical value.

[0035] In an embodiment, the data repository 108 is any type of storage unit and / or device for storing data (e.g., a file system, a database, a collection of tables, or any other storage mechanism). The data repository 108 may include multiple different storage units and / or devices. The multiple different storage units and / or devices may or may not be of the same type or located in the same physical location. Furthermore, the data repository 108 may be implemented or executed on the same computing system as one or more other components of the system 100. Alternatively or additionally, the data repository 108 may be implemented or executed on a computing system that is separate from one or more other components of the system 100. The data repository 108 may be logically integrated with one or more other components of the system 100. Alternatively or additionally, the data repository 108 may be communicatively coupled to the one or more other components of the system 100 via a direct connection or via a network. Figure 1 , data repository 108 is illustrated as storing various information. Some or all of this information may be implemented and / or distributed across any of the components of system 100. However, for purposes of clarity and explanation, this information is illustrated within data repository 108.

[0036] In an embodiment, the machine learning engine 104 is configured to train the machine learning model 106 based on the data stored in the data repository 108. As described in further detail below, the data can be divided into a set of training data. The set of training data can also be referred to as a "class" because they share one or more classification criteria. Each set can be labeled to indicate whether the data should be considered to predict an IDH event. Specifically, the training data can be divided into a "positive" class (i.e., considered to predict an IDH event) and a "negative" class (i.e., considered not to predict an IDH event). As described below, the data can be divided according to the temporal proximity to the recorded IDH event. Alternatively or additionally, the data can be divided into different sets of training data depending on whether the data is obtained during a treatment course including an IDH event. For example, data obtained during a treatment course in which an IDH event did not occur can be placed in a "negative" class (i.e., the same class or a different class). Data within a predefined time margin (e.g., 15 minutes) before the IDH event can be ignored to help ensure that the prediction is based on a situation where there is still enough time for clinical intervention. Data recorded after the IDH event can also be ignored.

[0037] In an embodiment, the system 100 is configured to obtain real-time hemodialysis treatment data from a hemodialysis patient 126. The treatment device 120 is configured to provide hemodialysis treatment to the patient 126. One or more clinical sensors 122 (e.g., a blood pressure monitor, a heart rate monitor, a thermometer, etc.) can record real-time data associated with the treatment. The real-time data can be stored in a data repository 108 and / or sent to an IDH prediction service 102 to predict whether an IDH event is about to occur for the patient 126. Alternatively or additionally, the prediction can be based on other data about the patient 126 and / or the treatment, such as data obtained from an interconnected health system as described below.

[0038] In an embodiment, the IDH prediction service 102 is configured to predict an IDH event based on a threshold probability. Specifically, given a collection of real-time input data, the IDH prediction service 102 can determine the predicted probability of an impending IDH event. The IDH prediction service 102 can store one or more probability thresholds (not shown), which can be hard-coded or user-configurable. If the probability of an IDH event exceeds a probability threshold (or matches a probability threshold, if the value is programmed to include a limit; or is below a threshold, if a lower value corresponds to a higher probability), the IDH prediction service 102 indicates that an IDH event is predicted, i.e., it may be about to occur. Otherwise, the IDH prediction service 102 either takes no action or indicates that no IDH event is predicted. The IDH prediction service 102 can store multiple thresholds so that different remedial actions can be taken based on the relative severity of the patient's 126 condition (i.e., more extreme actions can be taken when the probability of an impending IDH event increases).

[0039] In an embodiment, a higher threshold value may result in more false negatives, while a lower threshold value may result in more false positives. Various techniques may be used to determine the threshold value. For example, the system 100 may calculate a Youden index or a cost function that takes a minimum or maximum value depending on the nature of the function. Based on the data of a single patient 126 (e.g., demographics, biometrics, etc.), the threshold value may be individualized and applied only to that particular patient 126. Alternatively, the threshold value may be applied to multiple patients with one or more common data attributes (e.g., demographics, biometrics, etc.). Alternatively, the threshold value may be applied to all patients. Machine learning may be used to calculate one or more threshold values ​​for individual patients and / or one or more groups of patients.

[0040] In an embodiment, when the IDH prediction service 102 predicts that an IDH event is about to occur (e.g., when the IDH risk classification of the patient 126 reaches a threshold), the system 100 can generate an alert and / or adjust the treatment of the patient 126 to prevent the IDH event. The clinical management engine 118 refers to hardware and / or software configured to perform operations for generating alerts and / or adjusting the treatment of the patient 126. The alerts can be visual and / or auditory. The clinical management engine 118 can be configured to generate recommendations for adjusting the treatment of the patient 126 and display the recommendations in the user interface 124. As described above, the machine learning engine 104 can be configured to generate recommended adjustments. Alternatively or additionally, the clinical management engine 118 can be configured to generate recommendations without machine learning, for example, based on codified best practices.

[0041] In an embodiment, in response to the alert (which may or may not include a recommended course of action), the clinician may examine the patient 126, take additional measurements, and / or adjust the treatment policy for the patient 126. For example, the clinician may adjust (e.g., reduce or stop) the ultrafiltration rate for the patient 126, modify the dialysate temperature (e.g., reduce the temperature, which has been shown to be associated with lower rates of IDH), and / or otherwise adjust the dialysis treatment. Alternatively or additionally, the clinician may reposition the patient 126 in a manner that reduces the likelihood that an IDH event will actually occur (e.g., by raising the footrest of the dialysis chair and / or otherwise adjusting the angle of the bed or chair on which the patient 126 is located).

[0042] In an embodiment, when the IDH prediction service 102 predicts that an IDH event is about to occur, the system 100 can take action automatically, i.e., without human intervention. The system can take action in response to the alarm condition to check the patient 126, take additional measurements, and / or adjust the treatment policy of the patient 126 without the intervention of a human clinician. The clinical management engine 118 can be configured to send instructions to the treatment device 120 and / or one or more other devices to automatically adjust the treatment of the patient 126. For example, the clinical management engine 118 can send instructions to the hemodialysis machine to adjust the ultrafiltration rate of the patient 126, modify the dialysate temperature, and / or adjust the dialysis treatment in other ways. Alternatively or additionally, the clinical management engine 118 can send instructions to the bed or chair where the patient 126 is located to reposition the patient 126. Data from (one or more) clinical sensors 122 and / or the results of adjusting the treatment of the patient 126 can be stored in the data repository 108 and / or sent to the machine learning engine 104 to update the machine learning model 106 based on the results.

[0043] In an embodiment, the user interface 124 refers to hardware and / or software configured to facilitate communication between a user (e.g., a patient 126 and / or a medical professional) and the IDH prediction service 102. The user interface 124 presents user interface elements and receives input via the user interface elements. The user interface 124 can be a graphical user interface (GUI), a command line interface (CLI), a tactile interface, a voice command interface, and / or any other type of interface or combination thereof. Examples of user interface elements include check boxes, radio buttons, drop-down lists, list boxes, buttons, switches, text fields, date and time selectors, command lines, sliders, pages, and forms.

[0044] In an embodiment, the different components of user interface 124 are specified in different languages. The behavior of user interface elements can be specified with dynamic programming languages ​​(such as JavaScript). The content of user interface elements can be specified with markup languages ​​(such as Hypertext Markup Language (HTML), Extensible Markup Language (XML) or XML User Interface Language (XUL)). The layout of user interface elements can be specified with style sheet languages ​​(such as Cascading Style Sheets (CSS)). Alternatively or additionally, the aspect of user interface 124 can be specified with one or more other languages ​​(such as Java, Python, Perl, C, C++ and / or any other language or its combination).

[0045] In an embodiment, one or more components of system 100 are implemented on one or more digital devices. The term "digital device" generally refers to any hardware device including a processor. A digital device can refer to a physical device that executes an application or a virtual machine. Examples of digital devices include computers, tablet computers, laptop computers, desktop computers, netbooks, servers, web servers, network policy servers, proxy servers, general-purpose machines, special-purpose hardware devices, hardware routers, hardware switches, hardware firewalls, hardware network address translators (NATs), hardware load balancers, mainframes, televisions, content receivers, set-top boxes, printers, mobile handsets, smartphones, personal digital assistants ("PDAs"), wireless receivers and / or transmitters, base stations, communication management equipment, routers, switches, controllers, access points, and / or client devices.

[0046] Figure 2 is a block diagram of an example of a connected health (CH) system according to an embodiment. In an embodiment, the CH system 200 may include Figure 2 More or fewer components than shown. Figure 2 The components shown in may be local or remote to each other. Figure 2 The components shown in the figure can be implemented in software and / or hardware. Each component can be distributed across multiple applications and / or machines. Multiple components can be combined into one application and / or machine. Operations described with respect to one component can be performed by another component instead.

[0047] The CH system 200 may be configured as Figure 1100 . In addition, the CH system 200 may include a processing system 205, a CH cloud service 210, and a gateway (CH gateway) 220, which can be used in conjunction with the network aspects of one or more systems described herein. The processing system 205 may include a server and / or cloud-based system that, in conjunction with the data transmission operations of the CH system 200, can process, check compatibility, and / or format medical information, including prescription information generated at a clinical information system (CIS) 204 at a clinic or hospital. The CH system 200 may include appropriate encryption and data security mechanisms. The CH cloud service 210 may include a cloud-based application that serves as a communication conduit (e.g., facilitating the transfer of data) between components of the CH system 200 via a connection to a network (such as the Internet). The gateway 220 can be used as a communication device to facilitate communication between components of the CH system 200. In various embodiments, the gateway 220 can communicate with the dialysis machine 202 (e.g., a peritoneal dialysis machine or a hemodialysis machine) and the system 100 via a wireless connection 201 (e.g., Bluetooth, Wi-Fi, and / or other appropriate types of local or short-range wireless connections). The gateway 220 can also connect to the CH cloud service 210 via a secure network (e.g., the Internet). The gateway 220 can be configured to send / receive data to / from the CH cloud service 210, and to / from the dialysis machine 202 and the system 100. The dialysis machine 202 can poll the CH cloud service 210 for available files (e.g., via the gateway 320), and the dialysis machine 202 and / or the system 100 can temporarily store the available files for processing.

[0048] Figure 3 is a flow chart of an example of operations for real-time IDH prediction according to an embodiment. Figure 3 One or more operations illustrated in FIG may be modified, rearranged, or omitted altogether. Accordingly, Figure 3 The particular sequence of operations shown in should not be construed as limiting the scope of one or more embodiments.

[0049] In an embodiment, a system (e.g., Figure 1 The system 100 (operation 302) obtains historical hemodialysis treatment data. The system can obtain treatment data from many different sources. For example, the system can obtain treatment data from an interconnected health system as described above. Alternatively or additionally, the system can obtain data from a third-party medical record source (e.g., a source that provides medical data for research, data mining, etc.). The embodiments should not be considered limited to any particular data source.

[0050] In an embodiment, the system divides the treatment data into machine learning training data sets (operation 304) or "classes" based on one or more shared criteria. Specifically, the training data can be divided into "positive" classes (i.e., considered to predict an IDH event) and "negative" classes (i.e., considered not to predict an IDH event). As described below, the data can be divided according to the temporal proximity to the recorded IDH event. Alternatively or additionally, the data can be divided into different sets of training data based on whether the data is obtained during a treatment course that includes an IDH event. For example, data obtained during a treatment course in which an IDH event did not occur can be placed in a "negative" class (i.e., the same class or a different class). Data within a predefined time margin (e.g., 15 minutes) before the IDH event can be ignored to help ensure that the prediction is based on a situation where there is still enough time for clinical intervention. Data recorded after the IDH event can also be ignored. Alternatively or additionally, the system can receive data that has been divided into a machine learning training data set without the system performing the division itself.

[0051] In an embodiment, the system trains a machine learning model based on the partitioned machine learning training data to predict IDH events (operation 306). The techniques for training the machine learning model are described in more detail above.

[0052] In an embodiment, the system obtains real-time hemodialysis data (operation 308). Specifically, the system obtains data from one or more clinical sensors that are monitoring the treatment of the hemodialysis patient. The system may also obtain other data associated with the patient, such as demographic data, etc. In general, the system may obtain data corresponding to the data used to train the machine learning model, and it may therefore predict (alone or in combination with other data) IDH events.

[0053] In an embodiment, the system applies real-time hemodialysis data to a machine learning model (operation 310). Based on the real-time hemodialysis data, the machine learning model determines whether an IDH event is predicted (decision 312), that is, whether the real-time hemodialysis data indicates that an IDH event is about to occur for the patient. As described above, the system can predict an IDH event based on a threshold probability. Specifically, given a set of real-time input data, the system can determine the predicted probability of an impending IDH event. If the probability of an IDH event exceeds a probability threshold (or matches a probability threshold, if the value is programmed to include a limit; or is below a threshold, if a lower value corresponds to a higher probability), the system indicates that an IDH event is predicted. Otherwise, the system either takes no action or indicates that an IDH event is not predicted. The system can store multiple thresholds so that different remedial actions can be taken based on the relative severity of the patient's condition (i.e., more extreme actions can be taken when the probability of an impending IDH event increases).

[0054] In an embodiment, if an IDH event is predicted, the system responds by generating an alarm and / or adjusting the treatment of the hemodialysis patient (operation 314). The system can use machine learning to determine the adjustment. The system can use the same machine learning model or another machine learning model for predicting an IDH event. The adjustment can be based on some or all of the same data used to predict the IDH event, and / or other data that are not used to predict the IDH event. Alternatively or additionally, the system can use compiled best practices (e.g., a compiled decision tree based on a clinical decision process that can be performed by a medical professional) to determine the adjustment. The system can issue a visual and / or audible alarm. The alarm can present the recommended adjustment in the user interface for a human operator (e.g., a patient and / or a medical professional) to take action. Alternatively or additionally, the system can automatically perform the adjustment (e.g., adjusting the ultrafiltration rate, modifying the dialysate temperature, repositioning the patient, and / or adjusting the patient's treatment in some other way), for example, by sending an instruction to the device.

[0055] In an embodiment, the system determines the result after prediction (operation 316). The system can determine the result after prediction - whether the IDH event is predicted and whether the treatment of the hemodialysis patient is adjusted. Typically, the result after prediction can refer to real-time hemodialysis data collected after the time of prediction. The system can update the machine learning model based on the result after prediction (operation 318). In some examples, the system obtains real-time data and continuously updates the machine learning model (e.g., using unsupervised learning) regardless of whether the IDH event is predicted or actually occurs.

[0056] For the sake of clarity, some detailed examples are described below. The components and / or operations described below should be understood as examples and may not apply to one or more embodiments. Accordingly, the components and / or operations described below should not be interpreted as limiting the scope of one or more embodiments.

[0057] In one example, IDH is defined as an intradialytic systolic blood pressure (SBP) less than 90 mmHg. (Additional definitions of IDH are described in Flythe, Jennifer E, et al., "Association of mortality risk with various definitions of intradialytic hypotension," Journal of the American Society of Nephrology: JASN vol. 26, 3 (2015), which is incorporated herein by reference in its entirety.) Two data sources are used to predict IDH:

[0058] 1) pre-treatment data, including demographics, routine dialysis-specific measurements, laboratory values, and comorbidities; and

[0059] 2) Intradialysis clinical data recorded in the chairside information system produced by Fresenius Medical Care, including intradialysis blood pressure, intradialysis heart rate, and intradialysis ultrafiltration rate.

[0060] Static data includes demographics and comorbidities, treatment data, and laboratory values. Intradialysis chairside data provides additional dynamic and static data. Multiple features are designed based on measurement information (e.g., by averaging and other mathematical functions based on the measurements).

[0061] Historical hemodialysis data for 2,628 patients over 332,591 treatments were obtained. 80% of this historical data was used to train a machine learning model. Specifically, in this example, the open source software XGBoost was used. Other examples may use different machine learning software and / or techniques. The remaining 20% ​​of the historical data was treated as real-time data for research purposes and was applied to the machine learning model to evaluate the predictive ability of the model. Specifically, IDH prediction was performed each time intradialytic SBP was measured (typically approximately every 20-30 minutes). The minimum time margin before an IDH event (i.e., the pre-IDH time margin in which data is ignored) was set to 15 minutes; this time margin is considered sufficient to deploy preventive measures if an IDH event is predicted to be imminent.

[0062] like Figure 4A As shown, when the machine learning model is trained using 106 features, the receiver operating curve 400 has an area under the curve (AUC) greater than 0.9 (specifically, 0.91), indicating clinically acceptable sensitivity and specificity for IDH prediction, as well as a clinically acceptable false positive rate. Figure 4B As shown, even when only 20 features are used to train the machine learning model, the receiver operating curve 402 still has an AUC of 0.9. Figure 4A and Figure 4B , for each model, the graph indicates the relative importance (i.e., the experimentally determined predicted value) of each factor shown in the graph.

[0063] Figure 5 is a block diagram of an example of a machine learning training data set according to an embodiment. Figure 5As shown, based on the position of data on concept data timeline 500, that is, the time relationship with the recorded IDH event 508, data can be divided into training class or ignored.Specifically, for machine learning purposes, before IDH event 508, data 506 in a specific time interval (for example, 15 minutes or another time interval) can be ignored.Earlier than data 506 before IDH and still fall on the data of the predefined time period (for example, from before IDH 75 minutes to before IDH 15 minutes) before IDH event 508 can be divided into " positive " class 504.Positive class 504 corresponds to the preferred time period for predicting IDH event 508, and now there may be enough data to determine that DH event 508 is about to occur and still have enough time to intervene to prevent IDH event.Any earlier data (for example, more than 75 minutes before IDH event 508) can be divided into negative class 502.Data 510 after IDH can be ignored.

[0064] Figure 6 The figure shows an example of threshold-based classification according to an embodiment. Figure 6 As shown, a positive classification 602 occurs when the probability of an IDH event 606 exceeds (or in some examples meets) a classifier threshold 604. In the example of a positive classification 602, the higher dashed line illustrates how setting the classifier threshold 604 too high may result in a false negative. Figure 6 ) and / or the probability of an IDH event does not reach a sufficiently high threshold, a negative classification 608 occurs. In the example of a negative classification 608, the lower dashed line illustrates how setting the classifier threshold 604 too low may result in false positives.

[0065] Figures 7A-7F The figures illustrate examples of experimental results according to embodiments. In these examples, "TP" refers to a true positive result (i.e., a positive prediction classification in which an IDH event actually occurred), "TN" refers to a true negative result (i.e., a negative prediction classification in which no IDH event actually occurred), "FP" refers to a false positive result (i.e., a positive prediction classification in which no IDH event actually occurred), and "FN" refers to a false negative result (i.e., a negative prediction classification in which an IDH event actually occurred).

[0066] In an embodiment, a system comprises one or more devices comprising one or more hardware processors configured to perform any of the operations described herein and / or in any of the claims.

[0067] In an embodiment, one or more non-transitory computer-readable storage media store instructions that, when executed by one or more hardware processors, result in the performance of any of the operations described herein and / or in any of the claims.

[0068] Any combination of the features and functions described herein may be used according to the embodiment. In the foregoing description, the embodiments have been described with reference to many specific details, which may vary from implementation to implementation. Accordingly, the description and drawings are to be regarded as illustrative rather than restrictive. The sole and exclusive indicator of the scope of the invention, and what the applicant intends to be the scope of the invention, is the literal and equivalent scope of the set of claims issuing from this application in the specific form in which such claims issue, including any subsequent corrections.

[0069] In an embodiment, the technology described herein is implemented by one or more special-purpose computing devices (i.e., computing devices specifically configured to perform certain functions). The special-purpose computing device(s) may be hardwired to perform the technology and / or may include digital electronic devices, such as one or more application-specific integrated circuits (ASICs), field programmable gate arrays (FPGAs), and / or network processing units (NPUs), which are continuously programmed to perform the technology. Alternatively or additionally, the computing device may include one or more general-purpose hardware processors that are programmed to perform the technology according to program instructions in firmware, memory, and / or other storage. Alternatively or additionally, the special-purpose computing device may combine custom hard-wired logic, ASICs, FPGAs, or NPUs with custom programming to implement the technology. The special-purpose computing device may include a desktop computer system, a portable computer system, a handheld device, a networked device, and / or any other device(s) that combines hardwiring and / or program logic to implement the technology.

[0070] For example, Figure 8 8 is a block diagram of an example of a computer system 800 according to an embodiment. Computer system 800 includes a bus 802 or other communication mechanism for communicating information, and a hardware processor 804 coupled with bus 802 for processing information. Hardware processor 804 may be a general-purpose microprocessor.

[0071] The computer system 800 also includes a main memory 806, such as a random access memory (RAM) or other dynamic storage device, coupled to the bus 802 for storing information and instructions to be executed by the processor 804. The main memory 806 may also be used for storing temporary variables or other intermediate information during execution of instructions to be executed by the processor 804. Such instructions, when stored in one or more non-transitory storage media accessible to the processor 804, present the computer system 800 as a special-purpose machine customized to perform the operations specified in the instructions.

[0072] Computer system 800 also includes a read only memory (ROM) 808 or other static storage device coupled to bus 802 for storing static information and instructions for processor 804. A storage device 810, such as a magnetic or optical disk, is provided and coupled to bus 802 for storing information and instructions.

[0073] The computer system 800 can be coupled to a display 812 via bus 802, such as a liquid crystal display (LCD), a plasma display, an electronic ink display, a cathode ray tube (CRT) monitor, or any other type of device for displaying information to a computer user. An input device 814, including alphanumeric and other keys, can be coupled to bus 802 for communicating information and command selections to the processor 804. Alternatively or additionally, the computer system 800 can receive user input via a cursor control 816, such as a mouse, trackball, touchpad, or cursor direction keys, for communicating direction information and command selections to the processor 804 and for controlling cursor movement on the display 812. This input device typically has two degrees of freedom along two axes—a first axis (e.g., x) and a second axis (e.g., y)—which allows the device to be positioned in a specified plane. Alternatively or additionally, the computer system 8 may include a touch screen. The display 812 can be configured to receive user input via one or more pressure-sensitive sensors, multi-touch sensors, and / or gesture sensors. Alternatively or additionally, computer system 800 may receive user input via a microphone, a video camera, and / or some other kind of user input device (not shown).

[0074] The computer system 800 can implement the techniques described herein using custom hardwired logic, one or more ASICs or FPGAs, firmware, and / or program logic that, in combination with other components of the computer system 800, causes the computer system 800 to become or be programmed to become a special-purpose machine. According to an embodiment, the techniques herein are performed by the computer system 800 in response to the processor 804 executing one or more sequences of one or more instructions contained in the main memory 806. Such instructions may be read into the main memory 806 from another storage medium (e.g., the storage device 810). Execution of the sequences of instructions contained in the main memory 806 causes the processor 804 to perform the process steps described herein. Alternatively or in addition, hardwired circuitry may be used in place of or in combination with software instructions.

[0075] The term "storage medium" as used herein refers to one or more non-transitory media that store data and / or instructions that cause a machine to operate in a specific manner. Such storage media may include non-volatile media and / or volatile media. Non-volatile media include, for example, optical or magnetic disks, such as storage device 810. Volatile media include dynamic memory, such as main memory 806. Common forms of storage media include, for example, floppy disks, flexible disks, hard disks, solid-state drives, tapes or other magnetic data storage media, CD-ROMs or any other optical data storage media, any physical medium with a hole pattern, RAM, programmable read-only memory (PROM), erasable PROM (EPROM), FLASH-EPROM, non-volatile random access memory (NVRAM), any other memory chip or cartridge memory, content addressable memory (CAM), and ternary content addressable memory (TCAM).

[0076] Storage media are distinct from transmission media, but can be used in conjunction with them. Transmission media participate in the transfer of information between storage media. Examples of transmission media include coaxial cables, copper wire, and optical fiber, including the wires that comprise bus 802. Transmission media can also take the form of acoustic or light waves, such as those generated during radio wave and infrared data communications.

[0077] Various forms of media may be involved in carrying one or more sequences of one or more instructions to the processor 804 for execution. For example, the instructions may initially be carried on a disk or solid-state drive of a remote computer. The remote computer may load the instructions into its dynamic memory and issue the instructions over the network via a network interface controller (NIC) (such as an Ethernet controller or a Wi-Fi controller). The NIC local to the computer system 800 may receive data from the network and place the data on the bus 802. The bus 802 carries the data to the main memory 806, from which the processor 804 retrieves and executes the instructions. The instructions received by the main memory 806 may optionally be stored on the storage device 810 before or after execution by the processor 804.

[0078] The computer system 800 also includes a communication interface 818 coupled to the bus 802. The communication interface 818 provides a two-way data communication coupling to a network link 820 connected to a local network 822. For example, the communication interface 818 can be an integrated services digital network (ISDN) card, a cable modem, a satellite modem, or a modem that provides a data communication connection to a corresponding type of telephone line. As another example, the communication interface 818 can be a local area network (LAN) card to provide a data communication connection to a compatible LAN. A wireless link can also be implemented. In any such implementation, the communication interface 818 sends and receives electrical, electromagnetic, or optical signals that carry digital data streams representing various types of information.

[0079] The network link 820 typically provides data communication to other data devices through one or more networks. For example, the network link 820 can provide a connection to a host computer 824 or data equipment operated by an Internet service provider (ISP) 826 through a local area network 822. The ISP 826, in turn, provides data communication services through a global packet data communication network (now commonly referred to as the "Internet") 828. Both the local network 822 and the Internet 828 use electrical, electromagnetic, or optical signals that carry digital data streams. The signals through the various networks, as well as the signals on the network link 820 and through the communication interface 818, that carry the digital data to and from the computer system 800, are example forms of transmission media.

[0080] Computer system 800 can send messages and receive data, including program code, through the network(s), network link 820, and communication interface 818. In the Internet example, server 830 can send the requested code for an application through Internet 828, ISP 826, local network 822, and communication interface 818.

[0081] The received code may be executed by processor 804 as it is received, and / or stored in storage device 810 or other non-volatile storage for later execution.

[0082] In an embodiment, a computer network provides connectivity among a collection of nodes running software utilizing the techniques described herein. Nodes may be local and / or remote to one another. Nodes are connected via a collection of links. Examples of links include coaxial cables, unshielded twisted pair cables, copper cables, optical fibers, and virtual links.

[0083] A collection of nodes implements a computer network. Examples of such nodes include switches, routers, firewalls, and network address translators (NATs). Another collection of nodes utilizes a computer network. Such nodes (also referred to as "hosts") can execute client processes and / or server processes. A client process makes a request for a computing service (e.g., to execute a specific application and / or retrieve a specific set of data). The server process responds by executing the requested service and / or returning the corresponding data.

[0084] A computer network can be a physical network, comprising physical nodes connected by physical links. A physical node is any digital device. A physical node can be a hardware device with a specific function. Examples of hardware devices with specific functions include hardware switches, hardware routers, hardware firewalls, and hardware NAT. Alternatively or additionally, a physical node can be any physical resource that provides computing power to perform tasks, such as physical resources configured to execute various virtual machines and / or applications that perform corresponding functions. A physical link is the physical medium that connects two or more physical nodes. Examples of links include coaxial cables, unshielded twisted pair cables, copper cables, and optical fibers.

[0085] A computer network may be an overlay network. An overlay network is a logical network implemented on top of another network (e.g., a physical network). Each node in the overlay network corresponds to a corresponding node in the underlying network. Accordingly, each node in the overlay network is associated with both an overlay address (for addressing the overlay node) and an underlying address (for addressing the underlying node that implements the overlay node). Overlay nodes may be digital devices and / or software processes (e.g., virtual machines, application instances, or threads). The link connecting the overlay nodes may be implemented as a tunnel through the underlying network. The overlay nodes at both ends of the tunnel may view the underlying multi-hop path between them as a single logical link. Tunneling is performed by encapsulation and decapsulation.

[0086] In an embodiment, the client can be local to the computer network and / or remote from the computer network. The client can access the computer network through other computer networks (such as a private network or the Internet). The client can communicate requests to the computer network using a communication protocol (such as the Hypertext Transfer Protocol (HTTP)). The request is communicated through an interface (such as a client interface (such as a web browser), a program interface, or an application programming interface (API)).

[0087] In an embodiment, a computer network provides connectivity between clients and network resources. Network resources include hardware and / or software configured to execute server processes. Examples of network resources include processors, data storage, virtual machines, containers, and / or software applications. Network resources can be shared among multiple clients. Clients request computing services from the computer network independently of each other. Network resources are dynamically assigned to requests and / or clients on demand. The network resources assigned to each request and / or client can be increased or decreased based on, for example, (a) computing services requested by a specific client, (b) aggregated computing services requested by a specific tenant, and / or (c) aggregated computing services requested by the computer network. Such a computer network may be referred to as a "cloud network."

[0088] In an embodiment, a service provider provides a cloud network to one or more end users. The cloud network can implement various service models, including but not limited to software as a service (SaaS), platform as a service (PaaS), and infrastructure as a service (IaaS). In SaaS, the service provider provides the end user with the ability to use the service provider's applications, which are executed on network resources. In PaaS, the service provider provides the end user with the ability to deploy customized applications on network resources. Custom applications can be created using programming languages, libraries, services, and tools supported by the service provider. In IaaS, the service provider provides the end user with the ability to supply processing, storage, network, and other basic computing resources provided by the network resources. Any application (including operating systems) can be deployed on network resources.

[0089] In an embodiment, a computer network can implement various deployment models, including but not limited to private clouds, public clouds, and hybrid clouds. In a private cloud, network resources are provisioned for exclusive use by a specific group of one or more entities (the term "entity" as used herein refers to a company, organization, individual, or other entity). Network resources can be local to and / or remote from the premises of a specific group of entities. In a public cloud, cloud resources are provisioned for multiple entities (also referred to as "tenants" or "customers") that are independent of each other. In a hybrid cloud, a computer network includes a private cloud and a public cloud. The interface between the private cloud and the public cloud allows for portability of data and applications. Data stored in the private cloud and data stored in the public cloud can be exchanged through the interface. Applications implemented at the private cloud and applications implemented at the public cloud can depend on each other. Calls from applications at the private cloud to applications at the public cloud (and vice versa) can be executed through the interface.

[0090] In an embodiment, the system supports multiple tenants. A tenant is a company, organization, enterprise, business unit, employee, or other entity that accesses shared computing resources (e.g., computing resources shared in a public cloud). One tenant can be separated from another tenant (by operations, tenant-specific practices, employees, and / or identification to the outside world). A computer network and its network resources are accessed by clients corresponding to different tenants. Such a computer network may be referred to as a "multi-tenant computer network." Several tenants may use the same specific network resources at different times and / or simultaneously. Network resources may be local to the tenant's premises and / or remote from the tenant's premises. Different tenants may have different network requirements for the computer network. Examples of network requirements include processing speed, amount of data stored, security requirements, performance requirements, throughput requirements, latency requirements, adaptability requirements, quality of service (QoS) requirements, tenant isolation, and / or consistency. The same computer network may need to implement different network requirements required by different tenants.

[0091] In an embodiment, tenant isolation is implemented in a multi-tenant computer network to ensure that applications and / or data belonging to different tenants are not shared with each other. Various tenant isolation methods can be used. In an embodiment, each tenant is associated with a tenant ID. The tenant ID is used to identify applications implemented by the computer network. Additionally or alternatively, the tenant ID is used to identify data structures and / or datasets stored by the computer network. A tenant is only allowed to access a specific application, data structure, and / or dataset if the tenant and the specific application, data structure, and / or dataset are associated with the same tenant ID. As an example, each database implemented by the multi-tenant computer network can be identified by a tenant ID. Only the tenant associated with the corresponding tenant ID can access the data in a specific database. As another example, each entry in a database implemented by the multi-tenant computer network can be identified by a tenant ID. Only the tenant associated with the corresponding tenant ID can access the data in a specific entry. However, a database can be shared by multiple tenants. A subscription list can indicate which tenants have access to which applications. For each application, a list of tenant IDs authorized to access the application is stored. A tenant is only allowed to access the specific application if its tenant ID is included in the subscription list corresponding to the specific application.

[0092] In an embodiment, network resources corresponding to different tenants (such as digital devices, virtual machines, application instances, and threads) are isolated to tenant-specific overlay networks maintained by a multi-tenant computer network. As an example, packets from any source device in a tenant overlay network can only be sent to other devices within the same tenant overlay network. Encapsulation tunnels can be used to prohibit any transmission from a source device on a tenant overlay network to devices in other tenant overlay networks. Specifically, a packet received from a source device is encapsulated within an outer packet. The outer packet is sent from a first encapsulation tunnel endpoint (communicating with a source device in the tenant overlay network) to a second encapsulation tunnel endpoint (communicating with a destination device in the tenant overlay network). The second encapsulation tunnel endpoint decapsulates the outer packet to obtain the original packet sent by the source device. The original packet is sent from the second encapsulation tunnel endpoint to a destination device in the same specific overlay network.

Claims

1. One or more non-transitory computer-readable media storing instructions that, when executed by one or more processors, result in: obtaining historical hemodialysis treatment data, the historical hemodialysis treatment data divided into a plurality of sets of machine learning training data based on temporal proximity to an intradialytic hypotension (IDH) event, wherein the plurality of sets of machine learning training data include a first set labeled as a positive class and a second set labeled as a negative class, the first set corresponding to a first time period at least a first amount of time before the IDH event, and the second set corresponding to a second time period before the IDH event and before the first time period; as well as training a machine learning model based on the plurality of sets of machine learning training data to predict an IDH event by: in a first stage, training the machine learning model based on the first set to predict the occurrence of a future IDH event, wherein the machine learning model is configured to process the first set to include data indicating the occurrence of the future IDH event a first amount of time after the first time period; And in a second stage, training the machine learning model based on the second set to predict future IDH events, wherein the machine learning model is configured to process the second set to include data that does not indicate the occurrence of the future IDH event within the first amount of time after the first time period.

2. The one or more non-transitory computer-readable media of claim 1 , wherein the plurality of machine learning training data sets comprises: the first set comprising medical data older than medical data recorded within a minimum duration prior to an IDH event and medical data recorded within a maximum duration prior to the IDH event, wherein the minimum duration is at least long enough to allow for medical intervention prior to the IDH event; and The second set includes medical data recorded during a time period exceeding the maximum duration before the IDH event.

3. The one or more non-transitory computer-readable media of claim 1 , further storing instructions that, when executed by one or more processors, result in: obtaining real-time hemodialysis data associated with a hemodialysis patient; and The real-time hemodialysis data is applied to the machine learning model to predict whether an IDH event is about to occur for the hemodialysis patient.

4. The one or more non-transitory computer-readable media of claim 3, wherein to predict an IDH event based on the plurality of machine learning training data sets, the machine learning model is configured to calculate a risk metric indicative of a predicted likelihood of an impending IDH event.

5. The one or more non-transitory computer-readable media of claim 3, wherein based on the real-time hemodialysis data, the machine learning model predicts that the IDH event is about to occur.

6. The one or more non-transitory computer-readable media of claim 5, further storing instructions that, when executed by one or more processors, result in: In response to predicting that the IDH event is about to occur, adjusting the hemodialysis patient's treatment without human intervention to prevent the IDH event.

7. One or more non-transitory computer-readable media as described in claim 5, wherein adjusting the treatment of the hemodialysis patient without human intervention includes one or more of the following: reducing the ultrafiltration rate, lowering the dialysate temperature, or mechanically repositioning the hemodialysis patient.

8. A system for predicting intradialytic hypotension (IDH) events, comprising: at least one device, the device comprising a hardware processor; The system is configured to perform operations including: obtaining historical hemodialysis treatment data, the historical hemodialysis treatment data divided into a plurality of sets of machine learning training data based on temporal proximity to an IDH event, wherein the plurality of sets of machine learning training data include a first set labeled as a positive class and a second set labeled as a negative class, the first set corresponding to a first time period at least a first amount of time before the IDH event, and the second set corresponding to a second time period before the IDH event and before the first time period; as well as training a machine learning model based on the plurality of sets of machine learning training data to predict an IDH event by: in a first stage, training the machine learning model based on the first set to predict the occurrence of a future IDH event, wherein the machine learning model is configured to process the first set to include data indicating the occurrence of the future IDH event a first amount of time after the first time period; And in a second stage, training the machine learning model based on the second set to predict future IDH events, wherein the machine learning model is configured to process the second set to include data that does not indicate the occurrence of the future IDH event within the first amount of time after the first time period.

9. The system of claim 8, wherein the plurality of machine learning training data sets comprises: the first set comprising medical data older than medical data recorded within a minimum duration prior to an IDH event and medical data recorded within a maximum duration prior to the IDH event, wherein the minimum duration is at least long enough to allow for medical intervention prior to the IDH event; and The second set includes medical data recorded during a time period exceeding the maximum duration before the IDH event.

10. The system of claim 8, wherein the operations further comprise: obtaining real-time hemodialysis data associated with a hemodialysis patient; as well as The real-time hemodialysis data is applied to the machine learning model to predict whether an IDH event is about to occur for the hemodialysis patient.

11. The system of claim 10, wherein to predict an IDH event based on the plurality of machine learning training data sets, the machine learning model is configured to calculate a risk metric indicating a predicted likelihood of an impending IDH event.

12. The system of claim 10, wherein based on the real-time hemodialysis data, the machine learning model predicts that the IDH event is about to occur.

13. The system of claim 12, wherein the operations further comprise: In response to predicting that the IDH event is about to occur, adjusting the hemodialysis patient's treatment without human intervention to prevent the IDH event.

14. The system of claim 13, wherein adjusting the treatment of the hemodialysis patient without human intervention comprises one or more of: reducing ultrafiltration rate, lowering dialysate temperature, or mechanically repositioning the hemodialysis patient.

15. A method for predicting intradialytic hypotension (IDH) events, comprising: obtaining historical hemodialysis treatment data, the historical hemodialysis treatment data divided into a plurality of sets of machine learning training data based on temporal proximity to an IDH event, wherein the plurality of sets of machine learning training data include a first set labeled as a positive class and a second set labeled as a negative class, the first set corresponding to a first time period at least a first amount of time before the IDH event, and the second set corresponding to a second time period before the IDH event and before the first time period; as well as training a machine learning model based on the plurality of sets of machine learning training data to predict an IDH event by: in a first stage, training the machine learning model based on the first set to predict the occurrence of a future IDH event, wherein the machine learning model is configured to process the first set to include data indicating the occurrence of the future IDH event a first amount of time after the first time period; And in a second stage, training the machine learning model based on the second set to predict future IDH events, wherein the machine learning model is configured to process the second set to include data that does not indicate the occurrence of the future IDH event within the first amount of time after the first time period.

16. The method of claim 15, wherein the plurality of machine learning training data sets comprises: the first set comprising medical data older than medical data recorded within a minimum duration prior to an IDH event and medical data recorded within a maximum duration prior to the IDH event, wherein the minimum duration is at least long enough to allow for medical intervention prior to the IDH event; and The second set includes medical data recorded during a time period exceeding the maximum duration before the IDH event.

17. The method of claim 15, further comprising: obtaining real-time hemodialysis data associated with a hemodialysis patient; as well as The real-time hemodialysis data is applied to the machine learning model to predict whether an IDH event is about to occur for the hemodialysis patient.

18. The method of claim 17, wherein based on the real-time hemodialysis data, the machine learning model predicts that the IDH event is about to occur.

19. The method of claim 18, further comprising: In response to predicting that the IDH event is about to occur, an alarm is generated without human intervention to prevent the IDH event.

Citation Information

Patent Citations

  • Device and method for predicting intradialytic parameters

    US20150045713A1

  • Predictive risk model optimization

    US20180025290A1

  • Method and apparatus for monitoring a human or animal subject

    WO2019171015A1