Prediction of Hypotension during Real-Time Dialysis
A machine learning model for predicting and automatically adjusting hemodialysis parameters addresses IDH, enhancing patient safety and reducing treatment costs by preventing hypotensive events during hemodialysis.
Patent Information
- Application Number
- JP2022537611
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2020-06-10
- Filing Date
- 2020-12-02
- Publication Date
- 2025-07-22
- Estimated Expiration
- 2040-12-02
AI Technical Summary
Intradialytic hypotension (IDH) is a common complication during hemodialysis, occurring in up to 30% of sessions, and poses a significant risk for increased morbidity and mortality, requiring substantial staff attention and increasing treatment costs.
A machine learning model is trained using past hemodialysis data segmented into positive and negative classes based on temporal proximity to IDH events, allowing real-time prediction and automatic adjustment of treatment parameters such as ultrafiltration rate, dialysate temperature, and patient position to prevent IDH without human intervention.
The system effectively predicts IDH in real-time, enabling timely clinical intervention to reduce the occurrence of hypotensive events, thereby improving patient safety and reducing treatment costs by minimizing staff intervention.
Smart Images

Figure 0007711064000001 
Figure 0007711064000002 
Figure 0007711064000003
Abstract
Description
Related Applications
[0001] This application claims the benefit of U.S. Patent Application No. 16 / 897,430, filed Jun. 10, 2020, and entitled "REAL-TIME INTRADIALYTIC HYPOTENSION PREDICTION", and U.S. Provisional Patent Application No. 62 / 951,259, filed Dec. 20, 2019, and entitled "REAL-TIME INTRADIALYTIC HYPOTENSION PREDICTION", the entire disclosures of both applications being incorporated herein by reference in their entireties. BACKGROUND OF THE INVENTION
[0002] Intradialytic hypotension (IDH) is one of the most common complications faced during hemodialysis. According to some estimates, IDH occurs in up to 30 percent (30%) of all hemodialysis sessions. See, for example, 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).
[0003] IDH is a major risk factor for increased morbidity and mortality. For example, IDH can lead to dizziness, vomiting, loss of consciousness, and / or other complications. Managing the occurrence of IDH requires a significant amount of staff attention and increases the overall cost of treatment. Therefore, for these reasons and / or other reasons, improving IDH risk management has become an important goal in many clinical settings. For example, the US healthcare system appears to be moving towards an integrated care model for end-stage renal disease (ESRD) where improving IDH risk management can be highly relevant to overall treatment outcomes.
[0004] The methods described in this section are not necessarily those devised and / or pursued prior to the filing of this application. Therefore, unless otherwise indicated, the methods described in this section should not be construed as prior art.
Technical Field
[0005] The present disclosure generally relates to predicting hypotension during dialysis.
Summary of the Invention
[0006] One or more embodiments improve IDH prediction over prior art methods and enable real-time IDH prediction. One or more embodiments include machine learning that uses patient data from the negative class (i.e., data from a time period prior to an IDH event when the patient was below a threshold for IDH prediction) and patient data from the positive class (i.e., data from a time period prior to an IDH event when the patient was above a threshold for IDH prediction). Use of patient data from the negative class can help the trained model distinguish between negative and positive conditions in real time. Use of patient data from the negative class can also help prevent premature IDH prediction. One or more embodiments include machine learning that uses patient data from the non-IDH class (i.e., data from patients who did not experience an IDH event). Use of patient data from the non-IDH class can help the trained model distinguish between pre-IDH and non-IDH conditions in real time. One or more embodiments include machine learning that omits, or otherwise ignores, data in the time window immediately preceding an IDH event, e.g., data from 15 minutes prior to the IDH event. Ignoring data in the time window immediately preceding an IDH event can help the trained model predict the IDH event in real time with sufficient time for clinical intervention.
[0007] Generally, in one aspect, one or more non-transitory computer-readable media, when executed by one or more processors, cause the acquisition of past hemodialysis treatment data segmented into a set of machine learning training data based on the temporal proximity to intradialytic hypotension (IDH) events, and cause the training of a machine learning model to predict IDH events based on the set of machine learning training data. The set of machine learning training data includes a first set of machine learning training data labeled as a positive class, including medical data recorded within a minimum period before the IDH event and within a maximum period before the IDH event, where the minimum period is at least long enough to medically intervene before the IDH event, and a second set of machine learning training data labeled as a negative class, including medical data recorded beyond the maximum period before the IDH event.
[0008] One or more non-transitory computer-readable media may further store instructions that, when executed by one or more processors, cause the acquisition of real-time hemodialysis data associated with a hemodialysis patient and cause the application of 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.
[0009] One or more non-transitory computer-readable media may further store instructions that, when executed by one or more processors, cause the adjustment of the treatment of a hemodialysis patient without human intervention to prevent an IDH event in response to a prediction that an IDH event is imminent. Adjusting the treatment of a hemodialysis patient without human intervention may include one or more of reducing the ultrafiltration rate, lowering the dialysate temperature, or mechanically changing the position of the hemodialysis patient.
[0010] Generally, in one aspect, a system includes at least one device including a hardware processor. The system is configured to perform operations including obtaining past hemodialysis treatment data segmented into a set of machine learning training data based on the temporal proximity to an intradialytic hypotension (IDH) event, and training a machine learning model to predict an IDH event based on the set of machine learning training data. The set of machine learning training data may include a first set of machine learning training data labeled as a positive class, including medical data recorded within a minimum period and within a maximum period before the IDH event, where the minimum period is at least long enough to medically intervene before the IDH event, and a second set of machine learning training data labeled as a negative class, including medical data recorded beyond the maximum period before the IDH event.
[0011] The operations 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.
[0012] The operations may further include, in response to predicting that an IDH event is imminent, 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 reducing the ultrafiltration rate, lowering the dialysate temperature, or mechanically changing the position of the hemodialysis patient.
[0013] Generally, in one aspect, the method includes obtaining past hemodialysis treatment data that is segmented into a set of machine learning training data based on the temporal proximity to intradialytic hypotension (IDH) events, and training a machine learning model to predict IDH events based on the set of machine learning training data. The set of machine learning training data includes a first set of machine learning training data labeled as a positive class that includes medical data recorded within a minimum period before an IDH event and within a maximum period before an IDH event, where the minimum period is at least long enough to medically intervene before the IDH event, and a second set of machine learning training data labeled as a negative class that includes medical data recorded beyond the maximum period before the IDH event.
[0014] 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.
[0015] The method may further include adjusting the treatment of the hemodialysis patient without human intervention to prevent an IDH event in response to predicting that an IDH event is imminent. Adjusting the treatment of the hemodialysis patient without human intervention includes one or more of reducing the ultrafiltration rate, lowering the dialysate temperature, or mechanically changing the position of the hemodialysis patient.
[0016] One or more embodiments described herein and / or recited in the claims may not be included in the summary section of this invention.
[0017] Aspects of at least one embodiment will be described below with reference to the accompanying drawings, which are not necessarily drawn to scale. The drawings are included to provide an illustration and a further understanding of the various aspects and embodiments, and are incorporated herein and form a part thereof, but are not intended to define the limitations of the present disclosure. In the drawings, each identical or nearly identical component that is illustrated in various figures is represented by a like numeral. For clarity, some components may not be labeled in all figures.
Brief Description of the Drawings
[0018]
Figure 1
Figure 2
Figure 3
Figure 4A
Figure 4B
Figure 5
Figure 6
Figure 7A
Figure 7B
Figure 7C
Figure 7D
Figure 7E
Figure 7F
Figure 8
Mode for Carrying Out the Invention
[0019] FIG. 1 is a block diagram of an example of a system 100 according to an embodiment. In one embodiment, system 100 may include more or fewer components than those illustrated in FIG. 1. The components illustrated in FIG. 1 may be local or remote from each other. The components illustrated in FIG. 1 may be implemented in software and / or hardware. Each component may be distributed across multiple applications and / or machines. Multiple components may be combined into one application and / or machine. Operations described with respect to one component may instead be performed by another component.
[0020] In one embodiment, the in-dialysis hypotension (IDH) prediction service 102 refers to hardware and / or software configured to perform operations for real-time IDH prediction. Examples of operations for real-time IDH prediction are described below. Specifically, the IDH prediction service 102 includes a machine learning engine 104. Machine learning includes various techniques in the field of artificial intelligence that deal with computer-implemented processes independent of the user for solving problems with variable inputs. For example, one or more embodiments may use machine learning to predict the risk of IDH, predict the outcome of treatment regimens, recommend alternative treatment regimens, and / or provide other types of predictions, recommendations, and / or other information based on the real-time data described herein. The machine learning engine 104 may be configured to calculate a metric (e.g., a percentage, decimal value, integer value, character grade, and / or other type of metric, or a combination thereof) corresponding to the risk of an impending IDH event. The metric may be compared (i.e., by the machine learning engine 104 and / or by another component of the system 100) and compared to one or more thresholds as described herein.
[0021] In one embodiment, the machine learning engine 104 trains a machine learning model 106 to perform one or more operations. Training the machine learning model 106 uses training data to generate a function that calculates a corresponding output when one or more inputs are provided to the machine learning model 106. The output may correspond to a prediction based on previous machine learning. In one embodiment, the output includes a label, classification, and / or categorization assigned to the provided input(s). The machine learning model 106 corresponds to a trained model for performing the desired operation(s) (e.g., labeling, classifying, and / or categorizing the input). The system 100 may use multiple machine learning engines and / or multiple machine learning models for different purposes.
[0022] In one 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, the labeled training data includes input / output pairs, where each input is labeled with a desired output (e.g., a label, classification, and / or categorization), also referred to as a supervisory signal. In semi-supervised learning, there are inputs associated with supervisory signals and inputs not associated with supervisory signals. In unsupervised learning, the training data does not include supervisory signals. Reinforcement learning is a feedback system in which the machine learning engine 104 receives positive and / or negative reinforcement in a process where it attempts to solve a particular problem (e.g., optimize performance in a particular scenario according to one or more predefined performance criteria). In one embodiment, the machine learning engine 104 first uses supervised learning to train the machine learning model 106 and then uses unsupervised learning to continuously update the machine learning model 106.
[0023] In one embodiment, the machine learning engine 104 can use many different techniques to label, classify, and / or categorize inputs. The machine learning engine 104 can convert an input into a feature vector that describes one or more characteristics ( "features") of the input. The machine learning engine 104 can label, classify, and / or categorize the input based on the feature vector. Alternatively or additionally, the machine learning engine 104 can use clustering (also called cluster analysis) to identify commonalities in the inputs. The machine learning engine 104 can group (i.e., cluster) the inputs based on those commonalities. The machine learning engine 104 can use hierarchical clustering, k-means clustering, and / or another clustering method, or a combination thereof. In one embodiment, the machine learning engine 104 includes an artificial neural network. An artificial neural network includes a plurality of nodes (also called artificial neurons) and edges between the nodes. The edges can be associated with corresponding weights that represent the strength of the connections between the nodes, which the machine learning engine 104 adjusts as machine learning progresses. Alternatively or additionally, the machine learning engine 104 can include a support vector machine. A support vector machine represents an 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, when a particular input is given, the machine learning model 106 can apply a decision tree to predict an output for the given input. Alternatively or additionally, the machine learning engine 104 can apply fuzzy logic in situations where it is impossible or impractical to label, classify, and / or categorize an input within a fixed set of mutually exclusive options. The foregoing machine learning models 106 and techniques are described for illustrative purposes only and should not be construed as limiting one or more embodiments.
[0024] In one embodiment, system 100 includes a data repository 108. The data repository 108 is configured to store past hemodialysis treatment data, i.e., data about hemodialysis patients and the treatments provided to those patients. The past hemodialysis treatment data may include demographic data 110. Alternatively or additionally, the past hemodialysis treatment data may include comorbidity data 112. Alternatively or additionally, the past hemodialysis treatment data may include treatment data 114. Alternatively or additionally, the past hemodialysis treatment data may include laboratory data 116. Generally, in combination with the techniques described herein, measurements during dialysis, such as systolic blood pressure (SBP), diastolic blood pressure (DBP), and ultrafiltration rate, may enable previously unavailable insights into hemodynamics during hemodialysis and particularly near IDH events.
[0025] Past hemodialysis treatment data includes, for example, the number of days since the first dialysis, blood flow rate, dialysis flow rate, diastolic sitting blood pressure, removed body fluid, pulse, systolic sitting blood pressure, ultrafiltration rate, change in systolic blood pressure (SBP) between measurements (e.g., current measurement, measurement before the current measurement during the same session, and / or between pre-treatment measurements), change in diastolic blood pressure (DBP) between measurements (e.g., current measurement, measurement before the current measurement during the same session, and / or between pre-treatment measurements), change in pulse between measurements, label or teacher signal (e.g., positive or negative for IDH), treatment time (minutes), patient ethnicity (e.g., whether the patient is Hispanic), patient gender and / or gender, patient height, information about the dialysis access point (e.g., whether the access point is a native arteriovenous (AV) fistula using self-vessel, a subcutaneous AV fistula using a graft, or a catheter), pre-treatment SBP, pre-treatment DBP, pre-treatment weight, pre-treatment body temperature, prescribed dry weight, weight gain during dialysis (e.g., in kilograms), weight gain rate during dialysis, prescribed treatment time, dialysis fluid sodium (Na), difference between serum and dialysis fluid Na, normalized protein catabolic rate (PCR), fluid volume, delivered equilibrated eKt / V, pre-treatment urea, post-treatment urea, urea removal rate (URR), dose of methoxypolyethylene glycol-epoetin beta (e.g., Mircera), albumin, alkaline phosphatase (ALP), basophils, bicarbonate, serum calcium, corrected calcium, 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, RBC distribution width, serum Na, total iron binding capacity (TIBC), transferrin saturation (TSAT), information about co-existing diseases (e.g., anemia, skin cancer, arrhythmia, cerebrovascular disease, congestive heart failure (CHF), chronic obstructive pulmonary disease (COPD), physical disability, drug and / or alcohol dependence, gastrointestinal bleeding, hepatitis, human immunodeficiency virus (HIV) / acquired immunodeficiency syndrome (AIDS), hyperparathyroidism, infection, ischemic heart disease (IHD), myocardial infarction (MI), peripheral arterial disease (PAD) / atheroma volume ratio (PAD), pneumonia,and / or whether the patient has another co-existing disease), age at the first day of dialysis, day of the week of the dialysis treatment, post-SBP at the last treatment, post-DBP at the last treatment, blood flow rate (QB) at the last treatment, dialysis fluid flow rate (QD) at the last treatment, post-weight at the last treatment, post-weight gradient at the last treatment, ultrafiltration volume at the last treatment, ultrafiltration rate at the last treatment, post-body temperature at the last treatment, treatment time (minutes) of the last treatment, treatment time gradient of the last treatment, physiological saline used in the last treatment, online clearance (OLC) measurement value, body mass index (BMI) at the last treatment, minimum SBP during the previous treatment, minimum DBP during the previous treatment, minimum pulse during the previous treatment, whether an IDH event occurred during the previous treatment, proportion of IDH events in all past treatments, proportion of IDH events in the most recent n treatments (e.g., n = 10), average of the minimum pulse in the most recent n treatments (e.g., n = 10), patient's ethnic identity, and / or one or more other types of data, or data associated with combinations thereof may be included.,
[0026] One or more items of past 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 the patient is Hispanic. Alternatively or additionally, one or more items of past hemodialysis treatment data may be represented as numbers, characters, character strings, or other data types. For example, measurement values may be represented as numerical values.,
[0027] In one embodiment, the data repository 108 is any type of storage unit and / or device (e.g., a file system, a database, a set of tables, or any other storage mechanism) for storing data. The data repository 108 may include a plurality of different storage units and / or devices. The plurality of different storage units and / or devices may or may not be of the same type, or may or may not be located at the same physical site. Further, the data repository 108 may be implemented or executed on the same computing system as one or more other components of the system 100, or alternatively or additionally, the data repository 108 may be implemented or executed on a computing system 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 one or more other components of the system 100 directly or via a network. In FIG. 1, the data repository 108 is illustrated as storing various types of information. Some or all of this information may be implemented and / or distributed across any of the components of the system 100. However, this information is illustrated within the data repository 108 for clarity and explanation purposes.
[0028] In one 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 will be described in further detail below, the data can be segmented into sets of training data. A set of training data may be referred to as a “class” because it shares 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 segmented into a “positive” class (i.e., treated as predicting an IDH event) and a “negative” class (i.e., treated as not predicting an IDH event). As will be described below, the data can be segmented according to the temporal proximity to the recorded IDH event. Alternatively or additionally, the data can be segmented into different sets of training data according to whether the data was acquired during a treatment session that included an IDH event. For example, data acquired during a treatment session in which an IDH event did not occur can be placed in a “negative” class (i.e., the same class or a different class). To help ensure that the prediction is based on a situation that still provides sufficient time for clinical intervention, data preceding an IDH event within a predefined time margin (e.g., 15 minutes) can be ignored. Data recorded after an IDH event can also be ignored.
[0029] In one embodiment, the system 100 is configured to acquire real-time hemodialysis treatment data from a hemodialysis patient 126. The treatment device 120 is configured to provide a 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 the data repository 108 and / or transmitted to the IDH prediction service 102 to predict whether an IDH event is imminent 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 a connected health system as described below.
[0030] In one embodiment, the IDH prediction service 102 is configured to predict an IDH event based on a threshold probability. Specifically, when a set of real-time input data is provided, the IDH prediction service 102 may determine the predicted probability of an impending IDH event. The IDH prediction service 102 may store one or more probability thresholds (not shown) that may be hard-coded or user-configurable. If the probability of an IDH event exceeds the probability threshold (or matches the probability threshold if programmed to be inclusive, or falls below the threshold if lower values correspond to higher probabilities), the IDH prediction service 102 indicates that an IDH event is predicted, i.e., is likely to occur imminently. Otherwise, the IDH prediction service 102 may either take no action or indicate that an IDH event is not predicted. The IDH prediction service 102 may store multiple thresholds such that different corrective actions may be taken based on the relative severity of the patient 126's situation (i.e., more extreme actions may be taken as the probability of an impending IDH event increases).
[0031] In one embodiment, a higher threshold may result in more false negatives, and a lower threshold may result in more false positives. Various techniques may be used to determine the threshold. For example, the system 100 may calculate a cost function or Youden index that is minimized or maximized depending on the nature of the function. The threshold may be individualized based on the data of a particular patient 126 (e.g., demographics, biological measurements, etc.) and applied to only one patient 126. Alternatively, the threshold may be applied to multiple patients that commonly share one or more data characteristics (e.g., demographics, biological measurements, etc.). Alternatively, the threshold may be applied to all patients. Machine learning may be used to calculate one or more thresholds for individual patients and / or one or more groups of patients.
[0032] In one embodiment, when the IDH prediction service 102 predicts that an IDH event is imminent (e.g., when the IDH risk classification of patient 126 reaches a threshold), the system 100 may generate a warning and / or adjust the treatment of patient 126 to prevent the IDH event. The clinical management engine 118 refers to the hardware and / or software configured to perform operations for generating a warning and / or adjusting the treatment of patient 126. The warning may be visual and / or auditory. The clinical management engine 118 may be configured to generate a recommendation for adjusting the treatment of patient 126 and display the recommendation on the user interface 124. As described above, the machine learning engine 104 may be configured to generate the recommended adjustment. Alternatively or additionally, the clinical management engine 118 may be configured to generate a recommendation without machine learning, for example, based on established best practices.
[0033] In one embodiment, in response to the warning (which may or may not include the recommended course of action), the clinician may examine patient 126, perform additional measurements, and / or adjust the treatment plan for patient 126. For example, the clinician may adjust (e.g., decrease or stop) the ultrafiltration rate of patient 126, modify the dialysis fluid temperature (e.g., lower the temperature, which has been shown to be associated with a lower IDH rate), and / or otherwise adjust the dialysis treatment. Alternatively or additionally, the clinician may change the position of patient 126 (e.g., by raising the footrest of the dialysis chair and / or otherwise adjusting the angle of the bed or chair on which patient 126 is located) to reduce the likelihood that an IDH event will actually occur.
[0034] In one embodiment, when the IDH prediction service 102 predicts that an IDH event is imminent, the system 100 can take measures automatically, that is, without human intervention. The system can take measures to examine the patient 126, perform additional measurements, and / or adjust the treatment plan for the patient 126 in response to the warning state without the need for intervention by a human clinician. The clinical management engine 118 can be configured to send commands 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 commands to a hemodialysis device to adjust the ultrafiltration rate of the patient 126, modify the dialysis fluid temperature, and / or adjust the dialysis treatment in other ways. Alternatively or additionally, the clinical management engine 118 can send commands to the bed or chair on which the patient 126 is located to change the position of the patient 126. Data from the clinical sensor(s) 122 and / or the outcome 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.
[0035] In one embodiment, the user interface 124 refers to the hardware and / or software configured to facilitate communication between a user (e.g., the patient 126 and / or a medical professional) and the IDH prediction service 102. The user interface 124 renders user interface elements and receives inputs 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 a combination thereof. Examples of user interface elements include check boxes, radio buttons, drop-down lists, list boxes, buttons, toggles, text fields, date and time selectors, command lines, sliders, pages, and forms.
[0036] In one embodiment, different components of the user interface 124 are specified in different languages. The behavior of user interface elements may be specified in a dynamic programming language such as JavaScript (registered trademark). The content of user interface elements may be specified in a markup language such as Hypertext Markup Language (HTML), Extensible Markup Language (XML), or XML User Interface Language (XUL). The layout of user interface elements may be specified in a style sheet language such as Cascading Style Sheets (CSS). Alternatively or additionally, aspects of the user interface 124 may be specified in one or more other languages such as Java (registered trademark), Python, Perl, C, C++, and / or any other language, or combinations thereof.
[0037] In one embodiment, one or more components of the system 100 are implemented on one or more digital devices. The term "digital device" generally refers to any hardware device that includes a processor. A digital device may refer to a physical device that executes an application or a virtual machine. Examples of digital devices include computers, tablets, laptops, desktops, netbooks, servers, web servers, network policy servers, proxy servers, general-purpose machines, specialized function 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 devices, routers, switches, controllers, access points, and / or client devices.
[0038] FIG. 2 is a block diagram of an example of a connected health (CH) system 200 according to one embodiment. In one embodiment, the CH system 200 may include more or fewer components than those illustrated in FIG. 2. The components illustrated in FIG. 2 may be local or remote to each other. The components illustrated in FIG. 2 may be implemented in software and / or hardware. Each component may be distributed across multiple applications and / or machines. Multiple components may be combined into one application and / or machine. Operations described with respect to one component may instead be performed by another component.
[0039] The CH system 200 can be configured to be part of a system such as the system 100 of FIG. 1 or to communicate with the system. The CH system 200 can include, among other things, a processing system 205, a CH cloud service 210, and a gateway (CH gateway) 220 that can be used in connection with the network aspects of one or more of the systems described herein. The processing system 205 can include a server and / or cloud-based system that processes, performs compatibility checks on, and / or formats medical information, including prescription information generated by a clinical information system (CIS) 204 of a clinic or hospital, in connection with the data transmission operations of the CH system 200. The CH system 200 can include appropriate encryption and data security mechanisms. The CH cloud service 210 can include a cloud-based application that serves as a communication pipeline between the components of the CH system 200 via a connection to a network such as the Internet (e.g., facilitates the transfer of data). The gateway 220 can serve as a communication device that facilitates communication between the components of the CH system 200. In various embodiments, the gateway 220 can communicate with a dialysis device 202 (e.g., a peritoneal dialysis device or a hemodialysis device) and the system 100 via a wireless connection 201 such as Bluetooth®, Wi-Fi, and / or other suitable types of local or short-range wireless connections. The gateway 220 can also be connected to the CH cloud service 210 via a secure network (e.g., the Internet) connection. The gateway 220 can be configured to send / receive data to / from the CH cloud service 210 and to send / receive data to / from the dialysis device 202 and the system 100. The dialysis device 202 can poll the CH cloud service 210 for available files (e.g., via the gateway 220), and the dialysis device 202 and / or the system 100 can temporarily store the available files for processing.
[0040] FIG. 3 is a flowchart of an example of operations for real-time IDH prediction according to one embodiment. One or more of the operations illustrated in FIG. 3 may all be modified, rearranged, or omitted together. Accordingly, the particular sequence of operations illustrated in FIG. 3 should not be construed as limiting the scope of one or more embodiments.
[0041] In one embodiment, a system (e.g., system 100 of FIG. 1) obtains past hemodialysis treatment data (operation 302). The system may obtain treatment data from many different sources. For example, the system may obtain treatment data from a connected health system as described above. Alternatively or additionally, the system may obtain data from a third-party medical record source, e.g., a source that provides medical data for research, data mining, etc. Embodiments should not be considered limited to any particular data source.
[0042] In one embodiment, the system segments treatment data into a set or "class" of machine learning training data (operation 304) based on one or more shared criteria. Specifically, the training data can be segmented into a "positive" class (i.e., treated as predicting an IDH event) and a "negative" class (i.e., treated as not predicting an IDH event). As described below, the data can be segmented according to the temporal proximity to the recorded IDH event. Alternatively or additionally, the data can be segmented into different sets of training data according to whether the data was acquired during a treatment session that included an IDH event. For example, data acquired during a treatment session in which no IDH event occurred can be placed in the "negative" class (i.e., the same class or a different class). To help ensure that the prediction is based on a situation that still gives sufficient time for clinical intervention, data preceding the IDH event within a predefined time margin (e.g., 15 minutes) can be ignored. Data recorded after the IDH event can also be ignored. Alternatively or additionally, the system can receive data that is already segmented into a set of machine learning training data without the system itself having to perform the segmentation.
[0043] In one embodiment, the system trains a machine learning model to predict an IDH event (operation 306) based on the segmented machine learning training data. The techniques for training the machine learning model are described in further detail above.
[0044] In one embodiment, the system acquires real-time hemodialysis data (operation 308). Specifically, the system acquires data from one or more clinical sensor(s) monitoring the treatment of a hemodialysis patient. The system can also acquire other data associated with the patient, such as demographic data and the like. Generally, the system can acquire data corresponding to data that is used to train a machine learning model and thus can predict an IDH event (alone or in combination with other data).
[0045] In one 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, i.e., whether the real-time hemodialysis data indicates that an IDH event is imminent for the patient (decision 312). As described above, the system may predict an IDH event based on a threshold probability. Specifically, given a set of real-time input data, the system may determine the predicted probability of an imminent IDH event. If the probability of the IDH event exceeds the probability threshold (or matches the probability threshold if programmed to be inclusive, or falls below the threshold if lower values correspond to higher probabilities), 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 may store multiple thresholds such that different corrective actions may be taken based on the relative severity of the patient's condition (i.e., more extreme measures may be taken as the probability of an imminent IDH event increases).
[0046] In one embodiment, when an IDH event is predicted, the system responds by generating a warning and / or adjusting the treatment of the hemodialysis patient (operation 314). The system may use machine learning to determine the adjustment. The system may use the same machine learning model or a different machine learning model that was used to predict the IDH event. The adjustment may be based on some or all of the same data that was used to predict the IDH event and / or other data that was not used to predict the IDH event. Alternatively or additionally, the system may use a structured best practice (e.g., a structured decision tree based on a clinical judgment process that may be performed by a medical expert) to determine the adjustment. The system may issue visual and / or audible warnings. The warning may present the recommended adjustment to the user interface for a human operator (e.g., the patient and / or medical expert) to act on. Alternatively or additionally, the system may automatically make the adjustment, for example, by sending instructions to the device (e.g., to adjust the ultrafiltration rate, modify the dialysis fluid temperature, change the patient's position, and / or otherwise adjust the patient's treatment).
[0047] In one embodiment, the system determines a post-prediction outcome (operation 316). The system may determine the post-prediction outcome regardless of whether an IDH event was predicted and whether the treatment of the hemodialysis patient was adjusted. Generally, the post-prediction outcome may refer to real-time hemodialysis data collected after the time at which the prediction was made. The system may update the machine learning model based on the post-prediction outcome (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 an IDH event was predicted or actually occurred.
[0048] For clarity, several detailed examples are described below. The components and / or operations described below should be understood as examples that may not be applicable to one or more embodiments. Accordingly, the components and / or operations described below should not be construed as limiting the scope of one or more embodiments.
[0049] In one example, IDH was defined as a systolic blood pressure (SBP) during dialysis of less than 90 mmHg (an additional definition of IDH is 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 were used to predict IDH. 1) Pretreatment data including demographic data, routine dialysis-specific measurements, laboratory values, and comorbidities, 2) In-dialysis clinical data documented in the Chairside Information System made by Fresenius Medical Care, including in-dialysis blood pressure, in-dialysis heart rate, and in-dialysis ultrafiltration rate. Static data included demographics as well as comorbidities, treatment data, and laboratory values. Chairside data during dialysis provided additional dynamic and static data. A number of features were engineered based on the measured information (e.g., through averaging and other mathematical functions based on the measurements).
[0050] Past hemodialysis data for 332,591 treatments of 2,628 patients were obtained. 80% of the past data was used to train a machine learning model. Specifically, in this example, the open-source software XGBoost was used. In other examples, different machine learning software and / or techniques may be used. The remaining 20% of the past data was treated as real-time data for research purposes and applied to the machine learning model to evaluate the predictive ability of the model. Specifically, IDH predictions were made every time the SBP during dialysis was measured (usually about every 20 - 30 minutes). The minimum time margin before an IDH event (i.e., the IDH pre-time margin for which data was ignored) was set to 15 minutes. This time margin was considered sufficient to apply preventive measures when an IDH event was predicted to be imminent.
[0051] As illustrated in Figure 4A, when the machine learning model was trained using 106 features, the receiver operating curve 400 had an area under the curve (AUC) greater than 0.9 (specifically, 0.91), showing clinically acceptable sensitivity and specificity for IDH prediction along with a clinically acceptable false positive rate. As illustrated in Figure 4B, even when the machine learning model was trained using only 20 features, the receiver operating curve 402 still had an AUC of 0.9. In Figures 4A and 4B, the chart shows, for each model, the relative importance (i.e., experimentally determined prediction values) of each factor shown in the chart.
[0052] FIG. 5 is a block diagram of an example of a machine learning training dataset according to one embodiment. As illustrated in FIG. 5, data can be segmented into training classes or ignored based on where the data is on the conceptual data timeline 500, i.e., in relation to time with the recorded IDH event 508. Specifically, IDH pre-data 506 preceding the IDH event 508 within a particular time interval (e.g., 15 minutes or another time interval) can be ignored for machine learning purposes. Data older than the IDH pre-data 506 and still within a predetermined time period before the IDH event 508 (e.g., from 75 minutes before IDH to 15 minutes before IDH) can be segmented into the "positive" class 504. The positive class 504 corresponds to a preferred time period for predicting the IDH event 508 where there is sufficient data to determine that the IDH event 508 is imminent and there is still likely sufficient time to intervene to prevent the IDH event. Any older data (e.g., more than 75 minutes before the IDH event 508) can be segmented into the negative class 502. The IDH post-data 510 can be ignored.
[0053] FIG. 6 illustrates an example of threshold-based classification according to one embodiment. As illustrated in FIG. 6, a positive classification 602 occurs when the probability of the IDH event 606 exceeds (or in some examples meets) the classifier threshold 604. In the example of the positive classification 602, the upper dashed line illustrates how setting the classifier threshold 604 too high can result in false negatives. A negative classification 608 occurs when the IDH event does not occur (illustrated in FIG. 6) and / or when the probability of the IDH event does not reach a sufficiently high threshold. In the example of the negative classification 608, the lower dashed line illustrates how setting the classifier threshold 604 too low can result in false positives.
[0054] Figures 7A-7F illustrate examples of experimental results according to one embodiment. In these examples, "TP" refers to a true positive result (i.e., a positive predictive classification where an IDH event actually occurred), "TN" refers to a true negative result (i.e., a negative predictive classification where an IDH event did not actually occur), "FP" refers to a false positive result (i.e., a positive predictive classification where an IDH event did not actually occur), and "FN" refers to a false negative result (i.e., a negative predictive classification where an IDH event actually occurred).
[0055] In one embodiment, the system includes one or more devices including one or more hardware processors configured to perform any of the operations described herein and / or any of the operations recited in the claims.
[0056] In one embodiment, one or more non-transitory computer-readable storage media store instructions that, when executed by one or more hardware processors, cause performance of any of the operations described herein and / or any of the operations recited in the claims.
[0057] Any combination of the features and functions described herein may be used in accordance with one embodiment. In the foregoing specification, embodiments have been described with reference to numerous specific details that may vary from implementation to implementation. Accordingly, the specification and drawings are to be regarded in an illustrative rather than a limiting sense. The sole and exclusive indicator of the scope of the present invention, and what the applicant intends the scope of the present invention to be, is the literal and equivalent scope of the set of claims from this application, the specific forms from which such claims are derived, including any subsequent corrections.
[0058] In one embodiment, the techniques described herein are implemented by one or more special-purpose computing devices (i.e., computing devices specially configured to perform particular functions). The special-purpose computing device(s) may be hardwired to execute the techniques and / or may include one or more application-specific integrated circuits (ASICs), field programmable gate arrays (FPGAs), and / or network processing units (NPUs), etc., digital electronic devices that are permanently programmed to execute the techniques. Alternatively or additionally, the computing device may include one or more general-purpose hardware processors programmed to execute the techniques according to program instructions in firmware, memory, and / or other storage devices. Alternatively or additionally, the special-purpose computing device may achieve the techniques by combining custom hardwired logic, ASIC, FPGA, or NPU with custom programming. The special-purpose computing device may include a desktop computer system, a portable computer system, a handheld device, a networking device, and / or any other device(s) that incorporates hardwired and / or program logic to implement the techniques.
[0059] For example, FIG. 8 is a block diagram of an example of a computer system 800 according to one embodiment. The computer system 800 includes a bus 802 or other communication mechanism for communicating information, and a hardware processor 804 coupled to the bus 802 for processing information. The hardware processor 804 may be a general-purpose microprocessor.
[0060] Computer system 800 also includes main memory 806, such as random access memory (RAM) or other dynamic storage device, coupled to bus 802 for storing information and instructions to be executed by processor 804. Main memory 806 may also be used to store temporary variables or other intermediate information during execution of instructions by processor 804. When such instructions are stored on one or more non-transitory storage media accessible to processor 804, computer system 800 is rendered a special-purpose machine customized to perform the operations specified in the instructions.
[0061] Computer system 800 further includes read only memory (ROM) 808 or other static storage device coupled to bus 802 for storing static information and instructions for processor 804. Storage device 810, such as a magnetic disk or optical disk, is provided and coupled to bus 802 for storing information and instructions.
[0062] Computer system 800 can be coupled via bus 802 to a display 812, such as a liquid crystal display (LCD), plasma display, electronic ink display, 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 processor 804. Alternatively or additionally, computer system 800 can receive user input via a cursor control 816, such as a mouse, trackball, trackpad, or cursor direction keys, for communicating direction information and command selections to processor 804 and controlling cursor movement on display 812. This input device typically has two degrees of freedom in two axes, a first axis (e.g., x) and a second axis (e.g., y), that enable the device to specify a position in a plane. Alternatively or additionally, computer system 800 can include a touch screen. Display 812 can be configured to receive user input via one or more pressure sensors, multi-touch sensors, and / or gesture sensors. Alternatively or additionally, computer system 800 can receive user input via a microphone, video camera, and / or some other type of user input device (not shown).
[0063] Computer system 800 may implement the techniques described herein using customized hardwired logic, one or more ASICs or FPGAs, firmware, and / or program logic, which in combination with other components of computer system 800 cause the computer system 800 to function as a special-purpose machine or to be programmed. According to one embodiment, the techniques herein are performed by computer system 800 in response to one or more sequences of one or more instructions contained in main memory 806 being executed by processor 804. Such instructions may be read into main memory 806 from another storage medium, such as storage device 810. Execution of the sequences of instructions contained in main memory 806 causes processor 804 to perform the process steps described herein. Alternatively or additionally, hardwired circuitry may be used in place of or in combination with software instructions.
[0064] As used herein, the term “storage medium” refers to one or more non-transitory media that store data and / or instructions that cause a machine to operate in a particular fashion. Such storage media may comprise non-volatile media and / or volatile media. Non-volatile media includes, for example, optical or magnetic disks, such as storage device 810. Volatile media includes dynamic memory, such as main memory 806. Common forms of storage media include, for example, a floppy (registered trademark) disk, flexible disk, hard disk, solid state drive, magnetic tape, or other magnetic data storage media, a CD-ROM, or any other optical data storage media, any physical media with patterns of holes, RAM, programmable read only memory (PROM), erasable PROM (EPROM), FLASH (registered trademark)-EPROM, non-volatile random access memory (NVRAM), any other memory chip or cartridge, associative memory (CAM), and ternary associative memory (TCAM).
[0065] The memory medium is separate from the transmission medium but can be used together with the transmission medium. The transmission medium is involved in the transfer of information between memory media. Examples of transmission media include coaxial cables, copper wires, and optical fibers, including the wires that make up bus 802. The transmission medium can take the form of sound waves or light waves, such as those generated during radio wave and infrared data communication.
[0066] Various forms of media can be involved in carrying one or more sequences of one or more instructions to processor 804 for execution. For example, the instructions can first be carried on the magnetic disk or solid state drive of a remote computer. The remote computer can load the instructions into its dynamic memory and transmit the instructions over the network via a network interface controller (NIC) such as an Ethernet® controller or a Wi-Fi controller. A NIC local to computer system 800 can receive data from the network and place the data on bus 802. Bus 802 carries the data to main memory 806, from which processor 804 fetches and executes the instructions. The instructions received by main memory 806 can optionally be stored on storage device 810 either before or after execution by processor 804.
[0067] Computer system 800 also includes a communication interface 818 coupled to bus 802. The communication interface 818 couples to a network link 820 connected to a local network 822 to provide two-way data communication. 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 that provides a data communication connection to a compatible LAN. A wireless link may be implemented. In any such implementation, the communication interface 818 transmits and receives electrical, electromagnetic, or optical signals that carry digital data streams representing various types of information.
[0068] Network link 820 typically provides data communication to other data devices via one or more networks. For example, network link 820 can provide a connection via local network 822 to data equipment operated by host computer 824 or Internet service provider (ISP) 826. The ISP 826 then provides data communication services via the worldwide packet data communication network currently 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. Signals via various networks that carry digital data between the computer system 800 and network link 820 and via the communication interface 818 are exemplary forms of transmission media.
[0069] Computer system 800 can send messages and receive data including program code via a network(s), network link 820, and communication interface 818. In an example of the Internet, server 830 can send requested code for an application program via Internet 828, ISP 826, local network 822, and communication interface 818.
[0070] The received code can be executed by processor 804 when it is received and / or stored in memory device 810 or other non-volatile storage device for later execution.
[0071] In one embodiment, a computer network provides connectivity between a set of nodes that execute software utilizing the techniques described herein. The nodes can be local and / or remote from each other. The nodes are connected by a set of links. Examples of links include coaxial cables, unshielded twisted pair cables, copper wire cables, fiber optics, and virtual links.
[0072] A set of nodes implements a computer network. Examples of such nodes include switches, routers, firewalls, and network address translators (NATs). Another set of nodes uses a computer network. Such nodes (also called "hosts") can execute client processes and / or server processes. A client process makes requests for computing services (e.g., requests to execute a particular application and / or retrieve a particular dataset). A server process responds by performing the requested service and / or returning the corresponding data.
[0073] A computer network can be a physical network that includes physical nodes connected by physical links. A physical node is any digital device. A physical node can be a specific function hardware device. Examples of specific function hardware devices include hardware switches, hardware routers, hardware firewalls, and hardware NATs. Alternatively or additionally, a physical node can be any physical resource that provides computing power for executing tasks, such as various virtual machines configured to execute respective functions and / or applications. A physical link is a physical medium that connects two or more physical nodes. Examples of links include coaxial cables, unshielded twisted pair cables, copper wire cables, and optical fibers.
[0074] A computer network can 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 each node in the underlying network. Thus, each node in the overlay network is associated with both an overlay address (for addressing the overlay node) and an underlay address (for addressing the underlay node that implements the overlay node). An overlay node can be a digital device and / or a software process (e.g., a virtual machine, an application instance, or a thread). The link connecting the overlay nodes can be implemented as a tunnel through the underlying network. The overlay nodes at both ends of the tunnel can treat the underlying multi-hop path between them as a single logical link. Tunneling is performed through encapsulation and decapsulation.
[0075] In one embodiment, the client can be local and / or remote to the computer network. The client can access the computer network via another computer network 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 requests are communicated via an interface such as a client interface (such as a web browser), a program interface, or an Application Programming Interface (API).
[0076] In one embodiment, the computer network provides connectivity between the client and network resources. Network resources include hardware and / or software configured to execute a server process. Examples of network resources include processors, data storage, virtual machines, containers, and / or software applications. Network resources can be shared among multiple clients. Clients independently request computing services from the computer network. Network resources are allocated to requests and / or clients on an on-demand basis. The network resources allocated to each request and / or client can be scaled up or down based on, for example, (a) the computing services requested by a particular client, (b) the aggregated computing services requested by a particular tenant, and / or (c) the aggregated computing services requested by the computer network. Such a computer network can be referred to as a "cloud network".
[0077] In one embodiment, a service provider provides a cloud network to one or more end users. Various service models, including but not limited to SaaS (Software-as-a-Service), PaaS (Platform-as-a-Service), and IaaS (Infrastructure-as-a-Service), can be implemented by the cloud network. In SaaS, the service provider provides the end user with the ability to use the service provider's applications running on network resources. In PaaS, the service provider provides the end user with the ability to deploy custom applications on network resources. The 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 provision processing, storage, network, and other basic computing resources provided by network resources. Any application, including an operating system, can be deployed on network resources.
[0078] In one embodiment, various deployment models can be implemented by a computer network including, but not limited to, a private cloud, a public cloud, and a hybrid cloud. 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, person, or other entity). The network resources can be local and / or remote to the premises of the 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, the computer network includes a private cloud and a public cloud. The interface between the private cloud and the public cloud enables the portability of data and applications. Data stored in the private cloud and data stored in the public cloud can be exchanged via the interface. Applications implemented in the private cloud and applications implemented in the public cloud can have dependencies on each other. Calls from an application in the private cloud to an application in the public cloud (and vice versa) can be executed via the interface.
[0079] In one 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 within a public cloud). One tenant can be separated from another (through operations, tenant-specific practices, employees, and / or identification to the outside world). The computer network and its network resources are accessed by clients corresponding to different tenants. Such a computer network can be referred to as a "multi-tenant computer network". Some tenants may use the same specific network resources at different times and / or simultaneously. The network resources can be local and / or remote to the tenant's premises. Different tenants may require different network requirements for the computer network. Examples of network requirements include processing speed, amount of data storage, security requirements, performance requirements, throughput requirements, latency requirements, resiliency requirements, quality of service (QoS) requirements, tenant isolation, and / or consistency. The same computer network may need to implement different network requirements requested by different tenants.
[0080] In one embodiment, in a multi-tenant computer network, tenant isolation is implemented to ensure that applications and / or data of different tenants are not shared with each other. Various tenant isolation techniques may be used. In one embodiment, each tenant is associated with a tenant ID. Applications implemented by the computer network are tagged with the tenant ID. Additionally or alternatively, data structures and / or datasets stored by the computer network are tagged with the tenant ID. A tenant is permitted access to a particular application, data structure, and / or dataset only if the tenant and the particular 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 may be tagged with the tenant ID. Only the tenant associated with the corresponding tenant ID can access the data of a particular database. As another example, each entry within a database implemented by the multi-tenant computer network may be tagged with the tenant ID. Only the tenant associated with the corresponding tenant ID can access the data of a particular entry. However, a database may be shared by multiple tenants. A subscription list may indicate which tenants have access rights to which applications. For each application, a list of tenant IDs of the tenants granted access rights to the application is stored. A tenant is permitted access to a particular application only if the tenant ID of the tenant is included in the subscription list corresponding to the particular application.
[0081] In one embodiment, network resources corresponding to different tenants (such as digital devices, virtual machines, application instances, and threads) are separated into tenant-specific overlay networks maintained by a multi-tenant computer network. As an example, packets from any source device within a tenant overlay network can be sent only 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 a device within another tenant overlay network. 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 the source device within the tenant overlay network) to a second encapsulation tunnel endpoint (communicating with the destination device within 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 the destination device within the same specific overlay network. The invention described in the claims of the present application at the time of filing is appended below. [1] When executed by one or more processors, obtaining past hemodialysis treatment data that is segmented into multiple sets of machine learning training data based on the temporal proximity to intradialytic hypotension (IDH) events; training a machine learning model to predict IDH events based on the multiple sets of machine learning training data; One or more non-transitory computer-readable media storing instructions to cause the above. [2] The multiple sets of machine learning training data include a first set of machine learning training data labeled as a positive class, comprising medical data recorded within a minimum period before an IDH event and within a maximum period before an IDH event, where the minimum period is at least long enough to medically intervene before the IDH event, a second set of machine learning training data labeled as a negative class, comprising medical data recorded beyond the maximum period before the IDH event; The one or more non-transitory computer-readable media according to [1], comprising the above. [3] When executed by one or more processors, obtaining real-time hemodialysis data associated with a hemodialysis patient; applying the real-time hemodialysis data to the machine learning model to predict whether an IDH event is imminent for the hemodialysis patient; The one or more non-transitory computer-readable media according to [1], further storing instructions to cause the above. [4] The machine learning model is configured to calculate a risk metric indicating the predicted likelihood of an imminent IDH event, for predicting an IDH event based on the multiple sets of machine learning training data, according to the one or more non-transitory computer-readable media of [3]. [5] Based on the real-time hemodialysis data, the machine learning model predicts that the IDH event is imminent, according to the one or more non-transitory computer-readable media of [3]. [6] When executed by one or more processors, In response to predicting that the IDH event is imminent, further storing an instruction to cause adjustment of the treatment of the hemodialysis patient to prevent the IDH event without human intervention, One or more non-transitory computer-readable media according to [5]. [7] Adjusting the treatment of the hemodialysis patient without human intervention comprises one or more of reducing the ultrafiltration rate, lowering the dialysis fluid temperature, or mechanically changing the position of the hemodialysis patient, one or more non-transitory computer-readable media according to [5]. [8] A system comprising at least one device including a hardware processor, The system, Obtaining past hemodialysis treatment data segmented into multiple sets of machine learning training data based on the temporal proximity to an in-dialysis hypotension (IDH) event, Training a machine learning model to predict an IDH event based on the multiple sets of machine learning training data, A system configured to perform operations comprising. [9] The multiple sets of machine learning training data, A first set of machine learning training data labeled as a positive class comprising medical data recorded within a minimum period before an IDH event and within a maximum period before an IDH event, wherein the minimum period is at least long enough to medically intervene before the IDH event, A second set of machine learning training data labeled as a negative class comprising medical data recorded beyond the maximum period before an IDH event, The system according to [8].
[10] The operations, Obtaining real-time hemodialysis data associated with a hemodialysis patient, Applying the real-time hemodialysis data to the machine learning model to predict whether an IDH event is imminent for the hemodialysis patient, The system according to [8], further comprising.
[11] To predict an IDH event based on the multiple sets of machine learning training data, the machine learning model is configured to calculate a risk metric indicating the predicted likelihood of an imminent IDH event, the system according to
[10] .
[12] Based on the real-time hemodialysis data, the machine learning model predicts that the IDH event is imminent, the system according to
[10] .
[13] The operation further comprises in response to predicting that the IDH event is imminent, adjusting the treatment of the hemodialysis patient without human intervention to prevent the IDH event, the system according to
[12] .
[14] Adjusting the treatment of the hemodialysis patient without human intervention comprises one or more of reducing the ultrafiltration rate, lowering the dialysis fluid temperature, or mechanically changing the position of the hemodialysis patient, the system according to
[13] .
[15] Obtaining past hemodialysis treatment data segmented into a plurality of sets of machine learning training data based on the temporal proximity to an in-dialysis hypotension (IDH) event, training a machine learning model to predict an IDH event based on the plurality of sets of machine learning training data, A method comprising.
[16] The plurality of sets of machine learning training data a first set of machine learning training data labeled as a positive class comprising medical data recorded within a minimum period before the IDH event and within a maximum period before the IDH event, wherein the minimum period is at least long enough to medically intervene before the IDH event, a second set of machine learning training data labeled as a negative class comprising medical data recorded beyond the maximum period before the IDH event, The method according to
[15] comprising.
[17] Obtaining real-time hemodialysis data associated with a hemodialysis patient, applying the real-time hemodialysis data to the machine learning model to predict whether an IDH event is imminent for the hemodialysis patient, The method according to
[15] further comprising.
[18] Based on the real-time hemodialysis data, the machine learning model predicts that the IDH event is imminent, the method according to
[17] .
[19] In response to predicting that the IDH event is imminent, further comprising adjusting the treatment of the hemodialysis patient without human intervention to prevent the IDH event, The method according to
[18] .
[20] Adjusting the treatment of the hemodialysis patient without human intervention comprises one or more of reducing the ultrafiltration rate, lowering the dialysis fluid temperature, or mechanically changing the position of the hemodialysis patient, the method according to
[19] .
Claims
1. When executed by one or more processors, obtaining past hemodialysis treatment data segmented into multiple sets of machine learning training data based on the temporal proximity to intradialytic hypotension (IDH) events, wherein the multiple sets include a first set and a second set, the first set corresponding to a first time period before the IDH event, and the second set corresponding to a second time period before the first time period and before the IDH event, training a machine learning model to predict IDH events based on the multiple sets of machine learning training data, wherein the training includes training the machine learning model to predict the occurrence of future IDH events based on the first set, where the machine learning model is configured to handle the first set as including data indicative of future IDH events occurring after the first time period, and training the machine learning model to predict the future IDH events based on the second set, where the machine learning model is configured to handle the second set as including data not indicative of the future IDH events that occur, one or more non-transitory computer-readable media storing instructions to cause the above to be performed.
2. The multiple sets of machine learning training data The first set of data is labeled as a positive class and comprises medical data older than and including medical data recorded within a maximum period before the IDH event, where the minimum period is at least long enough to allow for medical intervention before the IDH event, The second set of data is labeled as a negative class and comprises medical data recorded beyond the maximum period before the IDH event, The one or more non-transitory computer-readable media according to claim 1, comprising the above.
3. When executed by one or more processors, obtaining real-time hemodialysis data associated with a hemodialysis patient, applying the real-time hemodialysis data to the machine learning model to predict whether an IDH event is imminent for the hemodialysis patient. One or more non-transitory computer-readable media according to claim 1, further storing instructions to cause. **Claim 4** One or more non-transitory computer-readable media according to claim 3, wherein the machine learning model is configured to calculate a risk metric indicating a predicted likelihood of an impending IDH event to predict an IDH event based on the plurality of sets of machine learning training data. **Claim 5** One or more non-transitory computer-readable media according to claim 3, wherein the machine learning model predicts that the IDH event is impending based on the real-time hemodialysis data. **Claim 6** When executed by one or more processors, in response to predicting that the IDH event is impending, further storing instructions to cause adjustment of the treatment of the hemodialysis patient without human intervention to prevent the IDH event, wherein adjusting the treatment of the hemodialysis patient without human intervention comprises one or more of reducing the ultrafiltration rate, lowering the dialysate temperature, or mechanically changing the position of the hemodialysis patient. One or more non-transitory computer-readable media according to claim 5. **Claim 7** Training the machine learning model further includes segmenting the past hemodialysis treatment data into a third set, the third set corresponding to a third time period that occurs after the first time period and before the IDH event, wherein the machine learning model is configured to treat the third set as not indicative of the future IDH event that will occur. One or more non-transitory computer-readable media according to claim 5. **Claim 8** A system comprising at least one device including a hardware processor, wherein the system obtains past hemodialysis treatment data segmented into a plurality of sets of machine learning training data based on the temporal proximity to a hypotensive episode during hemodialysis (IDH) event, wherein the plurality of sets includes a first set and a second set, the first set corresponding to a first time period before the IDH event, and the second set corresponding to a second time period before the first time period and before the IDH event. Training a machine learning model to predict IDH events based on the plurality of sets of machine learning training data, wherein the training includes training the machine learning model to predict the occurrence of future IDH events based on the first set, where the machine learning model is configured to handle the first set as including data indicative of the future IDH events occurring after the first time period, and training the machine learning model to predict the future IDH events based on the second set, where the machine learning model is configured to handle the second set as including data not indicative of the future IDH events occurring. A system configured to perform an operation comprising. Claim 9 The plurality of sets of machine learning training data are The first set of data is labeled as a positive class and comprises medical data older than the medical data recorded within a minimum period before the IDH event and within a maximum period before the IDH event, where the minimum period is at least long enough to allow for a medical intervention before the IDH event. The second set of data is labeled as a negative class and comprises medical data recorded beyond the maximum period before the IDH event. The system according to claim 8, comprising. Claim 10 The operation is Obtaining real-time hemodialysis data associated with a hemodialysis patient, Applying the real-time hemodialysis data to the machine learning model to predict whether an IDH event is imminent for the hemodialysis patient. The system according to claim 8, further comprising. Claim 11 The machine learning model is configured to calculate a risk metric indicative of the predicted likelihood of an imminent IDH event for predicting an IDH event based on the plurality of sets of machine learning training data, according to the system of claim 10. Claim 12 Based on the real-time hemodialysis data, the machine learning model predicts that the IDH event is imminent, according to the system of claim 10. Claim 13 The operation is Further comprising adjusting the treatment of the hemodialysis patient without human intervention to prevent the IDH event in response to predicting that the IDH event is imminent, Adjusting the treatment of the hemodialysis patient without human intervention comprises one or more of reducing the ultrafiltration rate, lowering the dialysate temperature, or mechanically changing the position of the hemodialysis patient, The system according to claim 12.
14. Training the machine learning model further includes segmenting the past hemodialysis treatment data into a third set, the third set corresponding to a third time period that occurred prior to the first time period, wherein the machine learning model is configured to treat the third set as not indicating the future IDH event that will occur. The system according to claim 8.
15. Obtaining past hemodialysis treatment data segmented into multiple sets of machine learning training data based on the temporal proximity to in-dialysis hypotension (IDH) events, wherein the multiple sets include a first set and a second set, the first set corresponding to a first time period before the IDH event, and the second set corresponding to a second time period before the first time period and before the IDH event, Training a machine learning model to predict an IDH event based on the multiple sets of machine learning training data, wherein the training includes training the machine learning model to predict the occurrence of a future IDH event based on the first set, where the machine learning model is configured to treat the first set as including data indicating the future IDH event that occurs after the first time period, and training the machine learning model to predict the future IDH event based on the second set, where the machine learning model is configured to treat the second set as including data not indicating the future IDH event that will occur, A method performed by a computer, comprising:
16. The multiple sets of machine learning training data are The first set of data is labeled as the positive class and comprises medical data that is older than the medical data recorded within the minimum period before the IDH event and within the maximum period before the IDH event, where the minimum period is at least long enough to medically intervene before the IDH event. The second set of data is labeled as the negative class and comprises medical data recorded beyond the maximum period before the IDH event. The method according to claim 15, comprising.
17. Obtaining real-time hemodialysis data associated with a hemodialysis patient; Applying the real-time hemodialysis data to the machine learning model to predict whether the IDH event is imminent for the hemodialysis patient. The method according to claim 15, further comprising.
18. Based on the real-time hemodialysis data, the method according to claim 17, wherein the machine learning model predicts that the IDH event is imminent.
19. In response to predicting that the IDH event is imminent, further comprising adjusting the treatment of the hemodialysis patient to prevent the IDH event without human intervention, Adjusting the treatment of the hemodialysis patient without human intervention comprises one or more of reducing the ultrafiltration rate, lowering the dialysis fluid temperature, or mechanically changing the position of the hemodialysis patient. The method according to claim 18.
20. Training the machine learning model further includes segmenting the past hemodialysis treatment data into a third set, where the third set corresponds to a third time period that occurs before the first time period, and wherein the machine learning model is configured to treat the third set as not indicating the future IDH event that will occur. The method according to claim 16.
Citation Information
Patent Citations
System for managing information relating to differences between individuals in dialysis treatment
JP2018043003A
Hemodialysis method by individual difference
JP2019213858A
Device and method for predicting intradialytic parameters
US20150045713A1
Predictive risk model optimization
US20180025290A1
Method and apparatus for monitoring a human or animal subject
WO2019171015A1