System and method for detecting pressure-induced sensor attenuation (PISA) in continuous blood glucose monitoring (CGM)

By using machine learning models to analyze sensor measurement data in real time and automatically detect CGM sensor compression, it solves the problem of inaccurate measurements caused by sensor compression artifacts, prevents false alarms and shutdown of the insulin infusion system, and improves the accuracy and reliability of diabetes treatment.

CN120603531APending Publication Date: 2025-09-05UNIV OF VIRGINIA PATENT FOUND
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202380077459.9
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2022-11-02
Filing Date
2023-11-02
Publication Date
2025-09-05

AI Technical Summary

Technical Problem

Existing continuous glucose monitoring (CGM) sensors are susceptible to compression artifacts, which lead to inaccurate measurement data, potentially triggering false hypoglycemia alarms and stopping the insulin infusion system, affecting the effectiveness of diabetes treatment.

Method used

A machine learning model is used to analyze sensor measurement data in real time, automatically detect sensor compression, identify a candidate sequence of compression artifacts through a first machine learning model, and use a second machine learning model to generate a signal output to indicate that the sensor is compressed, thereby achieving accurate prediction and processing of compression artifacts.

Benefits of technology

Real-time detection of compression artifacts prevents false hypoglycemia alarms and stops of insulin infusion systems, improves the accuracy of CGM sensors, and improves diabetes treatment outcomes.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120603531A_ABST
    Figure CN120603531A_ABST
Patent Text Reader

Abstract

Embodiments may relate to a system for automatically detecting sensor compression in continuous blood glucose monitoring. The system comprises: at least one sensor; and at least one processor in communication with the at least one sensor, the at least one processor executing at least two machine learning models, where the at least one processor is programmed or configured to cause the processor to: receive measurement data from the at least one sensor, the measurement data comprises at least one time series of blood glucose (BG) measurements measured by the at least one sensor; determining, using a first machine learning model, that the BG measurements of the at least one time series are candidate sequences including compression artifacts; and generating a signal output using a second machine learning model, the signal output indicating that the at least one time series of BG measurements are obtained when the at least one sensor is pressed.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] CROSS-REFERENCE TO RELATED APPLICATIONS

[0002] This patent application is related to and claims priority from U.S. Provisional Patent Application No. 63 / 421,931, filed on November 2, 2022, the entire contents of which are incorporated herein by reference. Technical Field

[0003] One aspect of the embodiments generally relates to pharmaceutical devices and medical devices for monitoring blood glucose levels in the treatment of diabetes and other metabolic conditions, including but not limited to type 1 and type 2 diabetes, type 2 (T1D, T2D), latent autoimmune diabetes in adults (LADA), postprandial or reactive hyperglycemia, or insulin resistance. The embodiments relate to systems and methods for detecting compression of a continuous glucose monitoring (CGM) sensor and detecting pressure-induced sensor attenuation (PISA). Background Art

[0004] Past advances in continuous glucose monitoring (CGM) devices have contributed to the treatment of diabetes and have led to some contemporary closed-loop control systems (e.g., artificial pancreas). Despite the advances in continuous glucose monitoring (CGM), CGM sensors can be susceptible to compression artifacts (e.g., pressure-induced sensor attenuation (PISA)). Compression artifacts can occur in measurement data when the sensor is squeezed (e.g., compressed) while collecting measurements. For example, compression artifacts can occur when a subject with a sensor attached sleeps with pressure on the area where the sensor is inserted (e.g., resting their head on their arm). Compression artifacts can be characterized by a rapid drop in the magnitude of the sensor measurement (e.g., a low reading) followed by an eventual recovery of the sensor measurement (e.g., a normal reading). Such a drop in sensor measurement can lead to false hypoglycemia alarms, hypoglycemia pausing systems or stopping insulin in closed-loop systems, and other effects that negatively impact diabetes treatment. Reliable methods for detecting and / or predicting compression artifacts do not exist. Methods for predicting compression artifacts and preventing them have not been developed before. Summary of the Invention

[0005] Exemplary embodiments may relate to a system for automatically detecting sensor compression in continuous glucose monitoring. The system may include at least one sensor. The system may include at least one processor in communication with the at least one sensor. The at least one processor may execute at least two machine learning models. The at least one processor may be programmed or configured to cause the processor to receive measurement data from the at least one sensor, the measurement data including at least one time series of blood glucose (BG) measurements measured by the at least one sensor. The at least one processor may be programmed or configured to cause the processor to: use a first machine learning model to determine that the BG measurements for the at least one time series are a candidate sequence including a compression artifact. The at least one processor may be programmed or configured to cause the processor to: use a second machine learning model to generate a signal output, the signal output indicating that the BG measurements for the at least one time series were obtained when the at least one sensor was compressed.

[0006] Example embodiments may relate to a system for automatically detecting the occurrence of sensor compression in continuous glucose monitoring. The system may include at least one sensor. The system may include at least one processor in communication with the at least one sensor. The at least one processor may execute program code of at least one machine learning model. The at least one processor may be programmed or configured to receive measurement data from the at least one sensor, the measurement data including at least one time series of blood glucose (BG) measurements measured by the at least one sensor. The at least one processor may be programmed or configured to determine that the at least one time series of BG measurements is a candidate sequence that includes BG measurements indicating the occurrence of sensor compression. The at least one processor may be programmed or configured to input a time series subsequence of the at least one time series of BG measurements into the at least one machine learning model. The at least one processor may be programmed or configured to generate a signal output using the at least one machine learning model, the signal output indicating that at least one BG measurement was obtained when the at least one sensor was compressed.

[0007] Exemplary embodiments may relate to a computer-implemented method for generating at least one machine learning model to accurately detect sensor compression in continuous glucose monitoring. The method may include receiving at least one training data set as input to a processor. The at least one training data set may include multiple time series of blood glucose (BG) measurements. The method may include determining multiple time series subsequences based on the training data set. At least one time series subsequence may include at least one BG measurement value that is less than a compression estimation threshold. The method may include extracting one or more features from each of the multiple time series subsequences. The method may include inputting the one or more features from the multiple time series subsequences into at least one machine learning model for training. The method may include detecting sensor compression based on providing at least one time series of BG measurements as input to the at least one machine learning model. BRIEF DESCRIPTION OF THE DRAWINGS

[0008] Other features and advantages of the present disclosure will become more apparent from the following detailed description read in conjunction with the accompanying drawings, in which like elements are designated by like reference numerals, and in which:

[0009] Figure 1 An exemplary system configuration of an embodiment of a system for detecting sensor compression in continuous glucose monitoring as disclosed herein is shown.

[0010] Figure 2 An exemplary method for detecting sensor compression in continuous glucose monitoring as disclosed herein is shown.

[0011] Figure 3 An exemplary system implementation for detecting sensor compression in continuous glucose monitoring as disclosed herein is shown.

[0012] Figure 4A An exemplary graph of sensor measurements in continuous glucose monitoring as disclosed herein is shown, along with visualization of the sensor measurements including pressure-induced sensor decay.

[0013] Figure 4B An exemplary graph of sensor measurements in continuous glucose monitoring as disclosed herein is shown, along with visualization of sensor measurements without pressure-induced sensor decay.

[0014] Figure 5 An exemplary distribution of pressure-induced sensor decay durations for an exemplary training dataset as disclosed herein is shown.

[0015] Figure 6AAn exemplary candidate sequence comprising a time series of blood glucose measurements comprising a time series subsequence as disclosed herein is shown.

[0016] Figure 6B An exemplary time series of blood glucose measurements including a plurality of candidate sequences as disclosed herein is shown, each candidate sequence including a time series subsequence.

[0017] Figure 7A An exemplary graph of blood glucose measurement results for a time series including multiple pressure-induced sensor decays and multiple decay time windows as disclosed herein is shown.

[0018] Figure 7B An exemplary graph of blood glucose measurement results for a time series including multiple pressure-induced sensor decays and multiple decay time windows as disclosed herein is shown.

[0019] Figure 8A An exemplary graph of blood glucose measurement results for a time series including multiple pressure-induced sensor decays and multiple decay time windows with predicted probabilities of occurrence of pressure-induced sensor decay as disclosed herein is shown.

[0020] Figure 8B An exemplary graph of blood glucose measurement results for a time series including multiple pressure-induced sensor decays and multiple decay time windows, each with a predicted probability of occurrence of pressure-induced sensor decay, as disclosed herein, is shown.

[0021] Figure 9 An exemplary graph illustrating a receiver operating characteristic curve and the area under the precision-recall curve of a classifier model as disclosed herein for classifying a time series of blood glucose measurements as including an occurrence of pressure-induced sensor decay to detect sensor stress.

[0022] Figure 10A An exemplary system configuration of an exemplary computing device as disclosed herein is shown.

[0023] Figure 10B An exemplary system environment is shown in which systems, methods, and / or computer-readable media as disclosed herein may be implemented.

[0024] Figure 11 is a block diagram of an exemplary computing system in which systems, methods, and / or computer-readable media as disclosed herein may be implemented.

[0025] Figure 12An exemplary environment is shown in which systems, methods, and / or computer-readable media as disclosed herein may be implemented.

[0026] Figure 13 is a block diagram of an exemplary machine in which systems, methods, and / or computer-readable media as disclosed herein may be implemented. DETAILED DESCRIPTION

[0027] The embodiments provide the ability to detect compression lows (e.g., compression artifacts) of a continuous glucose monitoring (CGM) sensor in real time, thereby preventing the compression low effect from negatively impacting the treatment of diabetes. Such negative impacts that can be prevented by the embodiments include false hypoglycemia alarms and insulin cessation in insulin infusion systems. The embodiments can fully identify pressure-induced sensor attenuation (PISA) in real time in a forward-looking manner to provide an indication that a PISA is occurring or is about to occur. The embodiments can improve the accuracy of CGM sensors by detecting compression artifacts inherent to CGM devices. The embodiments improve the behavior of continuous subcutaneous insulin infusion therapy and related systems such as sensor-enhanced insulin pumps (SAPs), hypoglycemia pauses (LGSs), predictive hypoglycemia pauses (PLGSs), or automated insulin infusions (AIDs) (e.g., artificial pancreas).

[0028] Various embodiments improve the operation of computers (e.g., computer processors) to automatically detect PISA and improve diabetes treatment. Prior to the development of the various embodiments disclosed herein, computers not programmed or configured using aspects of some embodiments were unable to automatically detect PISA in CGM sensors and diabetes treatment. According to embodiments, CGM sensors may no longer be susceptible to compression artifacts. Compression artifacts in measurement data can be automatically detected in real time when a sensor is squeezed (e.g., compressed) while collecting measurements. For example, embodiments can detect compression artifacts when a subject with a sensor attached sleeps with the sensor inserted (e.g., resting their head on their arm). Embodiments can detect both a rapid decrease in the magnitude of a sensor measurement (e.g., a decrease time window) and the eventual recovery of the sensor measurement (e.g., a rise time window). Embodiments can detect PISA in such sensor measurements to anticipate and / or prevent false hypoglycemia alarms, insulin withdrawal in hypoglycemia suspend systems or closed-loop systems, and other effects that can negatively impact diabetes treatment. Embodiments can accurately predict compression artifacts so that they can be addressed in real time when they occur, improving diabetes treatment.

[0029] Each embodiment uses machine learning models and techniques to analyze large amounts of data. The data analyzed and used to construct the machine learning models of each embodiment may be huge and complex. For example, an embodiment may use one or more signals provided by a CGM sensor, and the one or more signals may include, but are not limited to: raw blood glucose estimates (before calibration and temperature correction), filtered blood glucose, temperature, time of day, sensor life, etc. Such signals and data may be provided to a machine learning model and / or technique as disclosed herein. An embodiment may use additional information and / or signals from other PISA detection technologies, considerations about blood glucose events (such as hypoglycemia), or data from various expected future sensors (such as pressure sensors included in CGM sensors). As an example, an embodiment may use CGM data tracks containing tens of thousands of hours of sensor data from hundreds of CGM sensors, the sensor data including thousands of PISA events.

[0030] Figure 1 An exemplary system configuration 100 is shown for an embodiment of a system operable by program code (eg, software instructions executed by a processor) to detect sensor stress in a CGM. Figure 1 The components of the invention may be implemented in and / or processed by a processor (e.g., a central processing unit (CPU)), and / or may be implemented on any number of distributed processors (e.g., a distributed computing system) coupled to memory and connected via a communication network. Figure 1 Each component shown in .

[0031] like Figure 1 As shown, embodiments relate to a system configured for detecting sensor stress in a CGM. In some embodiments, system configuration 100 can automatically detect sensor stress in a CGM in real time. In some embodiments, system configuration 100 can include a pressure-induced sensor attenuation (PISA) detection system 102, a computing device 104, a processor 106, a memory 108, a sensor 110, and machine learning models (MLMs) 112-1 through 112-n (individually referred to as an MLM 112 and collectively as a plurality of MLMs 112 where appropriate).

[0032] In some embodiments, the system configuration 100 may include at least one sensor (e.g., sensor 110). The at least one sensor may measure and / or collect BG measurements associated with timestamps. The BG measurements (e.g., BG measurement data) may be in the form of a time series including multiple timestamps. For example, each BG measurement measured and / or collected by the at least one sensor may be associated with exactly one timestamp, such that the collection of multiple BG measurements forms a time series of BG measurements collected by the at least one sensor over time. The at least one time series of BG measurements may span various amounts of time and may have any of various lengths (e.g., the number of timestamps and the number of BG measurements in the time series). For example, the at least one time series of BG measurements may include measurement data measured by the at least one sensor for (e.g., a duration of) 30 minutes. The at least one sensor may measure and / or collect BG measurements over time at specified time intervals (e.g., every 30 seconds, every minute, etc.), which may define the resolution of the time series of BG measurements. For example, multiple timestamps of a time series of BG measurements may be spaced apart by one or more of: 30 second intervals, 1 minute intervals, 2.5 minute intervals, and / or 5 minute intervals. Other time intervals may be used for purposes of collecting measurements and / or for resolution of the time series.

[0033] In some embodiments, the system configuration 100 can include at least one processor (e.g., processor 106) in communication with the at least one sensor. The at least one processor can execute program code for at least two machine learning models (e.g., MLM 112). In some embodiments, the at least one processor can execute the at least two machine learning models simultaneously. The at least one processor can execute program code for detecting sensor compression in a CGM.

[0034] In some embodiments, the at least one processor can be programmed or configured (e.g., via software instructions) to receive measurement data from the at least one sensor, the measurement data comprising at least a time series of BG measurements measured by the at least one sensor. The measurement data can be transmitted to the at least one processor in real time from the at least one sensor (e.g., relative to when the sensor collects the measurement data). Alternatively, the measurement data can be transmitted from the at least one sensor to a memory (e.g., memory 108) coupled to the at least one processor, such that the at least one processor can access the measurement data at a later time relative to when the at least one sensor collects the measurement data.

[0035] In some embodiments, the at least one time series of BG measurements may include a plurality of time stamps. Each time stamp may be associated with a BG measurement. For example, each time stamp may represent a relative time or an absolute time at which the BG measurement was collected by a sensor (e.g., sensor 110). In some embodiments, the plurality of time stamps may be separated by one or more of: 30-second intervals, 1-minute intervals, 2.5-minute intervals, and / or 5-minute intervals.

[0036] In some embodiments, the at least one processor may be programmed or configured to cause the processor to: determine, using a first machine learning model, that the BG measurement results for at least one time series are candidate sequences that include compression artifacts. The candidate sequence may include a time series of BG measurement results having a falling time window (e.g., a series of BG measurement results whose values ​​decrease over time). The candidate sequence may include a time series of BG measurement results having one or more BG measurement results below a BG measurement threshold (e.g., a threshold value). In some embodiments, the candidate sequence may include a time series of BG measurement results that includes one or more of the following attributes: the one or more attributes may indicate that the BG measurement results for the time series include compression artifacts. However, in some cases, the candidate sequence may include one or more attributes indicating that the BG measurement results for the time series include compression artifacts, while the BG measurement results for the time series do not include compression artifacts. In other cases, the candidate sequence will include compression artifacts. Determining that the BG measurement results for at least one time series are candidate sequences may be a first step in discovering compression artifacts in the measurement data and detecting sensor compression.

[0037] In some embodiments, at least one processor may be programmed or configured to cause the processor to determine that the BG measurement results for the at least one time series include a change in BG measurement values ​​across multiple time stamps (e.g., across two consecutive time stamps, or across multiple time stamps starting from a first time stamp). The change in BG measurement value may exceed a threshold (e.g., a threshold value). For example, the at least one processor may calculate the change in BG measurement value by determining the difference between a first BG measurement value and a second BG measurement value, thereby determining the change in BG measurement value. The at least one processor may then determine that the difference between the first BG measurement value and the second BG measurement value exceeds a threshold (e.g., a fall time threshold, a rise time threshold, etc.). In some embodiments, the first BG measurement value may be associated with a first timestamp and the second BG measurement value may be associated with a second timestamp, wherein the first timestamp and the second timestamp are consecutive timestamps in the BG measurement results for the at least one time series. Alternatively, the first BG measurement value may be associated with a first timestamp and the second BG measurement value may be associated with a second timestamp, wherein the first timestamp and the second timestamp are separated by one or more timestamps in the BG measurement results for the at least one time series.

[0038] In some embodiments, when configured to determine that the BG measurement results of the at least one time series are a candidate sequence, the at least one processor can be programmed or configured to cause the processor to determine that the BG measurement results of the at least one time series include a time series subsequence, the time series subsequence having a falling time window and a rising time window associated with the falling time window. The time series subsequence can include a series of BG measurement results associated with a timestamp as a subset of the BG measurement results of the at least one time series, the timestamp being in the form of a time series including a plurality of timestamps. For example, each BG measurement result measured and / or collected by the at least one sensor can be associated with exactly one timestamp, such that the set of multiple BG measurement results forms the BG measurement results of the time series collected by the at least one sensor over time. The BG measurement results of the time series can include one or more time series subsequences within the BG measurement results of the time series, the time series subsequences can span various amounts of time and can have any of various lengths (e.g., the number of timestamps and BG measurement results in the time series subsequence).

[0039] In some embodiments, the at least one processor may use at least one machine learning model to determine a time series subsequence (e.g., by identifying multiple timestamps of at least one time series of BG measurements). In some embodiments, the time series subsequence may include a sequence of timestamps corresponding to at least a portion of a falling time window (e.g., at least one timestamp of the time series subsequence is within the falling time window) and at least a portion of a rising time window (e.g., at least one timestamp of the time series subsequence is within the rising time window). In some embodiments, the time series subsequence may span a BG measurement duration of at least 2.5 minutes.

[0040] In some embodiments, when the at least one processor is configured to determine that the BG measurement results of the at least one time series are a candidate sequence, the at least one processor can be programmed or configured to cause the processor to determine a fall time window within the at least one time series based on a difference between the first BG measurement value and the second BG measurement value exceeding a fall time threshold. The fall time window can include a series of multiple timestamps and multiple BG measurement results, the BG measurement results starting at a first timestamp associated with the first BG measurement result (e.g., the BG measurement value) and ending at a second timestamp associated with the second BG measurement result (e.g., the BG measurement value). In some embodiments, the first BG measurement value and the second BG measurement value can be part of the same measurement data (e.g., the BG measurement results of the same time series).

[0041] In some embodiments, when the at least one processor is configured to determine that the BG measurement results of the at least one time series are a candidate sequence, the at least one processor can be programmed or configured to cause the processor to determine a rise time window within the at least one time series based on the difference between the third BG measurement value and the fourth BG measurement value exceeding the rise time threshold. The rise time window can include a series of multiple timestamps and multiple BG measurement results, the BG measurement results starting at a third timestamp associated with the third BG measurement result (e.g., BG measurement value) and ending at a fourth timestamp associated with the fourth BG measurement result (e.g., BG measurement value). The rise time window can be associated with the fall time window because the rise time window appears only after at least one fall time window appears within the BG measurement results of the time series.

[0042] In some embodiments, the fall time threshold may be equal to 10 mg / dL (eg, a BG measurement). In some embodiments, the rise time threshold may be equal to 6 mg / dL (eg, a BG measurement).

[0043] In some embodiments, when the at least one processor is configured to determine that the BG measurement results of the at least one time series are a candidate sequence, the at least one processor may be programmed or configured to cause the processor to: determine a rolling average of the BG measurement results of the at least one time series. The rolling average may include one or more new values ​​corresponding to the BG measurement results in the time series, including a smoothed BG value associated with each BG measurement result and timestamp pair.

[0044] In some embodiments, when configured to determine that the BG measurement results of the at least one time series are a candidate sequence, the at least one processor may be programmed or configured to: calculate an indicator value of the smoothed BG value at each time stamp t, wherein the indicator value is equal to a Boolean true value, wherein:

[0045] BG t -B t-滞后 >BG threshold

[0046] Where t is the current timestamp for which the indicator value is determined, BG t is the smoothed BG value at timestamp t, BG t-滞后 is a smoothed BG value at a previous timestamp, t-lag is a measure of time such that t-lag represents the previous timestamp, and BGthreshold represents a BG threshold value. In some embodiments, a difference between a first smoothed BG value associated with the first timestamp and a second smoothed BG value associated with the second timestamp is greater than 7.5 mg / dL (e.g., a BG measurement).

[0047] In some embodiments, the hysteresis may be equal to 5 minutes, and the BG threshold may be equal to 10.0 mg / dL (eg, a BG measurement).

[0048] In some embodiments, when configured to determine that the BG measurement results of the at least one time series are a candidate sequence, the at least one processor can be programmed or configured to: identify a time series subsequence in the BG measurement results of the at least one time series, wherein the time series subsequence has a set of indicator values ​​that start at a first timestamp and end at a second timestamp.

[0049] In some embodiments, the at least one processor may be programmed or configured to cause the processor to: utilize at least one machine learning model to identify the rise time window associated with the fall time window as occurring within a range of 15 minutes to 180 minutes later than the fall time window in the at least one time series. For example, the rise time window may be identified as starting at a rise start timestamp (e.g., a timestamp at which the rise time window begins) that occurs 40 minutes after a fall end timestamp (e.g., a timestamp at which the fall time window ends).

[0050] In some embodiments, the at least one processor can be programmed or configured to cause the processor to: input the time series subsequence of the BG measurements of the at least one time series into the at least one machine learning model. For example, the at least one processor can be programmed or configured to cause the processor to: input the time series subsequence (e.g., timestamps and / or BG measurements associated with timestamps) into at least one machine learning model for training, testing, and / or for generating predictions and / or signal outputs. Additionally or alternatively, the at least one processor can be programmed or configured to cause the processor to input one or more features of the time series subsequence (e.g., other data associated with the time series subsequence that can be extracted from the time series subsequence, such as time of day, type of sensor, etc.) into at least one machine learning model for training, testing, and / or for generating predictions and / or signal outputs.

[0051] In some embodiments, the at least one processor can be programmed or configured to: generate a signal output using a second machine learning model, the signal output indicating that the at least one time series of BG measurements was obtained when the at least one sensor was compressed. For example, the signal output can include a signal transmitted to an insulin infusion system to cause the insulin infusion system to perform an action, a signal transmitted to a display, a signal transmitted to another processor to cause the processor to perform an action, etc.

[0052] In some embodiments, when configured to generate a signal output, at least one processor can be programmed or configured to predict that at least one sensor is stressed when obtaining a BG measurement. At least one processor can be programmed or configured to predict (e.g., generate a prediction) using at least one machine learning model executed by the processor. The processor can generate the prediction in real time (e.g., in real time relative to the sensor collecting the measurement data) by outputting an indication based on receiving the measurement data from the at least one sensor as the sensor collects the measurement data.

[0053] In some embodiments, when configured to generate a signal output, at least one processor can be programmed or configured such that the processor predicts in real time by outputting an indication that at least one sensor was stressed when obtaining a BG measurement. For example, the at least one processor can generate a prediction based on a probability value generated by at least one machine learning model. The probability value can represent a probability that the time series subsequence includes a BG measurement obtained when the at least one sensor is stressed. In this manner, the at least one machine learning model can be used to generate a probability that the time series subsequence includes a BG measurement obtained when the at least one sensor is stressed, and the probability value can represent a measure of the confidence of the machine learning model in predicting that the at least one sensor was stressed when obtaining a BG measurement (e.g., a BG measurement included in the time series subsequence analyzed by the at least one machine learning model). A higher probability can indicate a higher likelihood that the BG measurements in the time series subsequence were collected by the at least one sensor while stressed.

[0054] In some embodiments, at least one processor is programmed or configured to determine a maximum probability value from a plurality of probability values ​​generated by at least one machine learning model. The plurality of probability values ​​may be associated with a plurality of timestamps within a time series subsequence that fall within a time window. For example, each of the plurality of probability values ​​may be associated with at least one timestamp in a BG measurement of at least one time series. In other words, the probability value may represent a probability that the BG measurement associated with the timestamp in the time series subsequence was obtained when at least one sensor was compressed.

[0055] In some embodiments, at least one processor is programmed or configured to: determine, based on the maximum probability value, a probability that the time series subsequence includes a BG measurement obtained when the at least one sensor was compressed. For example, the maximum probability value may be determined from a plurality of probability values, each associated with a timestamp and a BG measurement. In some other embodiments, an average probability value or other probability and / or statistical measure may be used.

[0056] In some embodiments, at least one processor may be programmed or configured to cause the processor to identify one or more features of the BG measurement results of the at least one time series. For example, the at least one processor may identify and / or extract features of the BG measurement results of the at least one time series (e.g., through feature extraction techniques) for input into at least one machine learning model. The at least one processor may be programmed or configured to cause the processor to input the one or more features into at least one machine learning model (e.g., a second machine learning model) for classification and / or generate a signal output based on the classification of the BG measurement results of the at least one time series.

[0057] In some embodiments, at least one processor can be combined with the insulin infusion system, and the insulin infusion system communicates with the at least one processor.At least one processor can be programmed or configured to make the processor output to the insulin infusion system transmission signal.Described signal output can indicate that at least one sensor is compressed, and described signal output can make the insulin infusion system perform at least one or more of the following: start insulin infusion (for example, after insulin infusion stops due to compression artifact), continue insulin infusion (for example, after determining that at least one sensor is compressed and works normally), disable alarm (for example, after sensor compression causes alarm to be triggered) and / or its any combination.

[0058] refer to Figure 1 , the PISA testing system 102 may include software instructions (e.g., program code) implemented on a computing device 104. The PISA testing system 102 may include a memory 108 that stores the software instructions. The PISA testing system 102 may include a processor 106 that executes the software instructions to cause the processor 106 to perform one or more functions. The PISA testing system 102 may include a sensor 110 (e.g., a CGM sensor).

[0059] The PISA detection system 102 may include at least two machine learning models trained using BG measurement data (e.g., MLM 112-1 to MLM 112-n). At least one machine learning model may generate at least one signal output based on at least one time series of BG measurement data with compression artifacts provided to the at least one machine learning model as a runtime input. The signal output of the at least one machine learning model may include a prediction (e.g., a determination) of whether the BG measurement data of the at least one time series was obtained when at least one sensor was compressed. The at least two machine learning models may be trained using one or more time series of BG measurement results received by the computing device 104 and / or the processor 106 from the memory 108 and / or the sensor 110. Additionally or alternatively, the at least one machine learning model may generate at least one signal output (e.g., a prediction) based on a training dataset, a test dataset, and / or other datasets.

[0060] In some embodiments, the PISA detection system 102 can be implemented in a single computing device. In some embodiments, the PISA detection system 102 can be implemented in multiple computing devices (e.g., a group of servers, such as a group of computing devices 104, etc.) as a distributed system, so that the software instructions and / or machine learning models are implemented on different computing devices. In some embodiments, the PISA detection system 102 can be associated with the computing device 104 so that the PISA detection system 102 is executed on the computing device 104, or a portion of the PISA detection system 102 is executed on the computing device 104 (as part of the distributed computing system), wherein the sensor 110 is not part of the computing device 104. Alternatively, the PISA detection system 102 may include at least one computing device 104 that executes the software instructions and at least one sensor 110 for detecting PISA.

[0061] The sensor 110 may include a CGM sensor configured to detect and / or measure blood glucose in a subject (e.g., a patient). In some embodiments, the sensor 110 may include one or more sensors. For example, the sensor 110 may include a CGM sensor and a pressure sensor. In some embodiments, the sensor 110 may include multiple CGM sensors. The sensor 110 may be worn on and / or attached to various parts of the subject's body (e.g., an arm, abdomen, etc.). The sensor 110 may be configured to collect measurement results (e.g., BG measurement results) and send the measurement results to a processor (e.g., processor 106). When the sensor 110 collects and / or obtains the measurement results, the sensor 110 may be compressed (e.g., by the subject or other means), thereby affecting the accuracy of the measurement results obtained by the sensor 110.

[0062] The sensor 110 may include a sampling rate that can be configured to collect and / or obtain measurements with a specific sampling resolution over time. For example, the sensor 110 may be configured to sample measurements at 30-second intervals, 1-minute intervals, 2.5-minute intervals, 5-minute intervals, and so on. As the measurements are sampled, the sensor 110 may transmit the sampled measurements to the processor 106 in real time. In some embodiments, the sensor 110 may transmit at least a time series of sampled measurements to the processor 106 and / or the memory 108 at specified time intervals. The time series may include multiple BG measurements, each associated with a timestamp. The timestamp may represent an absolute or relative time when the sensor 110 collected the BG measurement. The sensor 110 may communicate with the computing device 104 and / or the processor 106 via wired (e.g., data bus, Ethernet, etc.) or wireless (e.g., Wi-Fi, Bluetooth, etc.) means and / or communication interfaces.

[0063] The computing device 104 may include a processor 106 (e.g., a CPU) and a memory 108. The processor 106 may execute software instructions (e.g., compiled program code) for the PISA testing system 102, including software instructions for at least two machine learning models (e.g., trained machine learning models). In some embodiments, the sensor 110 may be separate from the computing device 104. Alternatively, the sensor 110 may be integrated with the computing device 104 (e.g., as part of the computing device 104).

[0064] The computing device 104 may include one or more processors (e.g., processor 106) configured to execute software instructions. For example, the computing device 104 may include a desktop computer, a portable computer (e.g., a laptop computer, a tablet computer), a workstation, a mobile device (e.g., a smartphone, a cellular phone, a personal digital assistant, a wearable device), a server, and / or other similar devices. The computing device 104 may include a computing device configured to communicate with one or more other computing devices via a network. The computing device 104 may include a group of computing devices (e.g., a group of servers) and / or other similar devices. In some embodiments, the computing device 104 may include a data storage device. Alternatively, the data storage device may be separate from the computing device 104 and may communicate with the computing device 104.

[0065] The processor 106 may be implemented in hardware, software, or a combination of hardware and software. For example, the processor 106 may include a conventional processor (e.g., a CPU, a graphics processing unit (GPU), an accelerated processing unit (APU), etc.), a microprocessor, a digital signal processor (DSP), and / or any processing component that can be programmed with software instructions (e.g., a field programmable gate array (FPGA), an application-specific integrated circuit (ASIC), etc.), such that the processor is configured to perform functions when executing the software instructions. In some embodiments, the processor 106 may include multiple processors (e.g., a CPU and a GPU) implemented in a single computing device 104, or the processor 106 may include multiple processors implemented across multiple distributed computing devices 104. The processor 106 may be coupled to the memory 108 via a data bus to transfer data between the processor 106 and the memory 108. In some embodiments, the processor 106 may be coupled to the sensor 110 via a wired (e.g., a data bus, Ethernet, etc.) or wireless (e.g., Wi-Fi, Bluetooth, etc.) device and / or communication interface.

[0066] The memory 108 may include random access memory (RAM), read-only memory (ROM), and / or another type of dynamic or static storage device (e.g., flash memory, magnetic memory, optical memory, etc.) that stores information and / or software instructions for use by the processor 106. The memory 108 may include computer-readable media and / or storage components. Computer-readable media (e.g., non-transitory computer-readable media) are defined herein as non-transitory memory devices. Non-transitory memory devices include memory space located within a single physical storage device or memory space distributed across multiple physical storage devices.

[0067] The software instructions may be read into the memory 108 from another computer-readable medium or from another device through a communication interface with the computing device 104. When executed, the software instructions stored in the memory 108 and executed by the processor 106 may cause the processor 106 to perform one or more functions described herein. The embodiments described herein are not limited to any specific combination of hardware circuitry and software.

[0068] The MLM 112 may include at least two machine learning models (e.g., MLM 112-1, MLM 112-2, etc.). The MLM 112 may be trained using an unsupervised training method and / or a supervised training method. The MLM 112 may be trained using a training dataset received from a data storage device. At least one of the plurality of MLMs 112 may generate a first signal output (e.g., a prediction) based on a runtime input provided to the at least one MLM 112 (e.g., a trained MLM 112). The first signal output may be provided as an input to another MLM 112 to generate an additional signal output based on the first signal output. In some embodiments, at least one MLM 112 may generate a first signal output (e.g., a prediction that classifies the runtime input; a category) based on the runtime input using the first MLM 112-1. The first signal output (e.g., a category) may then be input to the second MLM 112-2 (e.g., as a feature vector), causing the MLM 112-2 to generate a second signal output and / or a final signal output. In some embodiments, the first signal output can be provided as an input to the second MLM 112-2 based on certain criteria (e.g., based on certain categories). The MLM 112 can use various input / output patterns for any number and / or arrangement of MLMs 112 to generate the final signal output. In this manner, the MLM 112 can use various structures and / or input / output patterns of the MLM 112 to generate signal outputs and / or predictions (e.g., categories, probabilities, etc.). In some embodiments, the PISA testing system 102 (e.g., via the processor 106) can execute multiple MLMs 112 simultaneously.

[0069] Figure 1 The number and arrangement of systems, hardware, and / or modules (eg, software instructions) shown in the are provided as examples. Figure 1 There may be additional systems, hardware, and / or modules, fewer systems, hardware, and / or modules, different systems, hardware, and / or modules, or differently arranged systems, hardware, and / or modules than those shown in . Figure 1 Two or more systems, hardware and / or modules shown in the drawings may be implemented within a single system, hardware and / or module. Figure 1 The single system, hardware and / or module shown may be implemented as multiple distributed systems, hardware and / or modules. Additionally or alternatively, Figure 1 A set of systems, a set of hardware, and / or a set of modules (e.g., one or more systems, one or more hardware devices, one or more modules) may perform the operations described as being performed by Figure 1 One or more functions performed by another set of systems, another set of hardware, or another set of modules.

[0070] like Figure 2 As shown, embodiments relate to an exemplary method 200 for detecting sensor compression in continuous glucose monitoring as disclosed herein. Method 200 can be performed by one or more components of system configuration 100. In some embodiments, one or more of the functions described with respect to method 200 can be performed (e.g., completely, partially, etc.) by PISA testing system 102 (e.g., via processor 106). In some embodiments, one or more of the steps of method 200 can be performed (e.g., completely, partially, etc.) by another system, hardware, or module or a group of systems, hardware, or modules (e.g., a client device and / or a separate computing device) that is separate from or includes PISA testing system 102.

[0071] In some embodiments, one or more steps of method 200 may be performed during a training phase of at least one MLM 112. The training phase of at least one MLM 112 may include a computing environment (e.g., a training environment, a model building phase, etc.) in which a machine learning model (e.g., MLM 112-1) is being trained. In some embodiments, one or more steps of method 200 may be performed during a testing phase of at least one MLM 112. The testing phase of at least one MLM 112 may include a computing environment (e.g., a testing environment, a model evaluation, a model validation, etc.) in which a machine learning model (e.g., MLM 112-1) is being tested and / or evaluated. In some embodiments, one or more steps of method 200 may be performed during a run phase of at least one MLM 112. The run phase of at least one MLM 112 may include a computing environment in which the machine learning model (e.g., MLM 112-1) is active (e.g., deployed, accessible as a service by client devices, etc.) and capable of generating signal outputs (e.g., run-time predictions) based on run-time inputs.

[0072] like Figure 2 As shown, at step 202, method 200 may include receiving measurement data as at least one time series. For example, PISA detection system 102 (e.g., via computing device 104 and / or processor 106) may receive at least one training data set from sensor 110. In some embodiments, PISA detection system 102 may receive measurement data to provide the measurement data as input to at least one MLM 112 for generating categories and / or signal outputs. The measurement data may include training data for training and / or testing at least one MLM 112. Alternatively, the measurement data may include runtime input for at least one MLM 112. The at least one training data set may include at least one time series of BG measurement results.

[0073] In some embodiments, the measurement data may include multiple time series of BG measurements. A time series of BG measurements may include multiple timestamps. Each timestamp may be associated with a BG measurement. For example, one BG measurement collected by sensor 110 may be associated with exactly one timestamp. The timestamp may represent the absolute time or relative time when sensor 110 collected the BG measurement. Processor 106 may receive measurement data including a time series of BG measurements as input. A time series of BG measurements may span various amounts of time and may have any of various lengths (e.g., the number of timestamps and the number of BG measurements). For example, at least one time series of BG measurements may include at least 30 minutes of measurement data measured by at least one sensor. In this example, the number of timestamps and the number of BG measurements may depend on the resolution of the BG measurements, or the sampling rate at which sensor 110 collects the BG measurements. In some embodiments, a time series subsequence may span a BG measurement duration of at least 2.5 minutes. In some embodiments, a time series subsequence may be longer or shorter than 2.5 minutes.

[0074] At step 204, method 200 may include determining that the measurement data includes an occurrence of sensor compression. For example, PISA testing system 102 (e.g., via computing device 104 and / or processor 106) may determine that the measurement data received from sensor 110 includes at least one time series subsequence. In some embodiments, the measurement data may include multiple time series subsequences. The time series subsequences may include at least one BG measurement value that is less than a compression estimation threshold. In some embodiments, the compression estimation threshold may be equal to 85 mg / dL (e.g., the BG measurement value).

[0075] In some embodiments, the PISA detection system 102 may determine that the measurement data includes an occurrence of sensor compression based on determining that at least one BG measurement value is less than a compression estimation threshold. The occurrence of sensor compression may appear as a compression artifact in the measurement data. For example, one or more BG measurement results (e.g., within a time series of BG measurements) may form a compression artifact in the measurement data. The one or more BG measurement results may indicate the occurrence of sensor compression (e.g., the sensor 110 was compressed when collecting the one or more BG measurement results).

[0076] In some embodiments, the PISA testing system 102 can determine that the measurement data received from the sensor 110 includes an occurrence of sensor compression based on determining that the measurement data (e.g., a time-series subsequence of the measurement data) includes at least one compression artifact. A compression artifact can include a time series of BG measurements, wherein each BG measurement in the time series is below a compression estimation threshold, such that the BG measurement is outside a normal range (e.g., outside a range of equilibrium BG values ​​indicative of normal BG levels in a subject).

[0077] In some embodiments, the PISA testing system 102 can determine that the measurement data includes an occurrence of sensor stress based on determining that the measurement data includes at least one falling time window. The falling time window can include a time series of BG measurement results, wherein the BG measurement results decrease from an initial BG measurement value to a lower BG measurement value during the time series, such that the BG measurement value crosses a threshold BG measurement value between the initial BG measurement value and the lower BG measurement value. In some embodiments, the falling time window can be defined by a time series of BG measurement results, wherein the difference between the initial BG measurement result and the lower BG measurement value exceeds a stress threshold during the time series of BG measurement results. The initial BG measurement value and the lower BG measurement value can be separated in time (e.g., in the time series) by any number of timestamps (e.g., any amount of time) and need not be specifically separated in time.

[0078] In some embodiments, the PISA detection system 102 can determine that the measurement data includes an end of sensor compression based on determining that the measurement data includes at least one rise time window. The rise time window can include a time series of BG measurement results, wherein the BG measurement results increase from an initial BG measurement value to a higher BG measurement value during the time series such that the BG measurement value crosses a threshold BG measurement value between the initial BG measurement value and the higher BG measurement value. In some embodiments, the rise time window can be defined by a time series of BG measurement results, wherein the difference between the initial BG measurement result and the higher BG measurement value exceeds a compression threshold during the time series of BG measurement results. The initial BG measurement value and the higher BG measurement value can be separated in time (e.g., in the time series) by any number of timestamps (e.g., any amount of time) and need not be specifically separated in time.

[0079] In some embodiments, when configured to determine that the BG measurement results of the at least one time series are a candidate sequence, the PISA detection system 102 (e.g., via the computing device 104 and / or the processor 106) may determine a falling time window within the at least one time series based on a difference between the first BG measurement result and the second BG measurement result exceeding a falling time threshold. The falling time window may include a series of multiple timestamps and multiple BG measurement results, the BG measurement results starting at a first timestamp associated with the first BG measurement result and ending at a second timestamp associated with the second BG measurement result.

[0080] In some embodiments, when configured to determine that the BG measurement results of the at least one time series are a candidate sequence, the PISA detection system 102 (e.g., via the computing device 104 and / or the processor 106) may determine a rise time window within the at least one time series based on the difference between the third BG measurement result and the fourth BG measurement result exceeding the rise time threshold. The rise time window may include a series of multiple timestamps and multiple BG measurement results, the BG measurement results starting at a third timestamp associated with the third BG measurement result and ending at a fourth timestamp associated with the fourth BG measurement result. The rise time window may be associated with the fall time window because the rise time window appears only after at least one fall time window appears within the BG measurement results of the time series.

[0081] In some embodiments, the PISA testing system 102 can determine a fall time threshold and / or a rise time threshold. Alternatively, the PISA testing system 102 can receive a fall time threshold value and / or a rise time threshold value as input, for example, from a user of the PISA testing system 102 (via one or more input devices and / or one or more interfaces of the computing device 104). In some embodiments, the fall time threshold can be equal to 10 mg / dL and the rise time threshold can be equal to 6 mg / dL, relative to a BG measurement value that can be calculated and / or determined based on the BG measurement.

[0082] At step 206, method 200 may extract features from the measurement data. For example, PISA testing system 102 (e.g., via computing device 104 and / or processor 106) may extract one or more features from at least one time series of BG measurements in the measurement data based on determining that the measurement data (e.g., at least one time series of measurement data) includes one or more BG measurements indicative of the occurrence of sensor compression. In some embodiments, PISA testing system 102 may extract the one or more features from a time series subsequence of the BG measurements in the at least one time series. In some embodiments, PISA testing system 102 may provide the one or more features as input to at least one MLM 112 for use in training, testing, and / or generating a signal output at runtime.

[0083] The time series subsequence may include a shorter time series of BG measurement results associated with a timestamp within the at least one time series of BG measurement results in the measurement data. For example, the BG measurement results of a first time series may be identified based on a predetermined time period for analysis (e.g., the previous 30 minutes of BG measurement results collected by the sensor 110), and the time series subsequence may be identified as a shorter time series of BG measurement results within the BG measurement results of the first time series (e.g., a 2.5-minute sequence of BG measurement results within the previous 30 minutes of BG measurement results).

[0084] In some embodiments, when the at least one processor is configured to determine that the BG measurement results of the at least one time series are a candidate sequence, the at least one processor may be programmed or configured to cause the processor to: determine a rolling average of the BG measurement results of the at least one time series. The rolling average may include one or more new values ​​corresponding to the BG measurement results in the time series, including a smoothed BG value associated with each BG measurement result and timestamp pair.

[0085] In some embodiments, when configured to determine that the BG measurement results of the at least one time series are candidate sequences, the PISA testing system 102 (e.g., via the computing device 104 and / or the processor 106) may calculate an indicator value of the smoothed BG value at each time stamp t, wherein the indicator value is equal to a Boolean true value, where:

[0086] BG t -BG t-滞后 >BG threshold

[0087] Where t is the current timestamp for which the indicator value is determined, BG t is the smoothed BG value at timestamp t, BG t-滞后is the smoothed BG value at the previous timestamp, lag is a measure of time such that t-lag represents the previous timestamp, and BGthreshold represents the BG threshold value. In some embodiments, the PISA testing system 102 may determine a difference between a first smoothed BG value associated with the first timestamp and a second smoothed BG value associated with the second timestamp, the difference being greater than 7.5 mg / dL.

[0088] In some embodiments, the hysteresis may be equal to 5 minutes, and the BG threshold may be equal to 10.0 mg / dL (eg, a BG measurement).

[0089] In some embodiments, when configured to determine that the BG measurement results of the at least one time series are a candidate sequence, the PISA testing system 102 (e.g., via the computing device 104 and / or the processor 106) can be programmed or configured to: identify a time series subsequence in the BG measurement results of the at least one time series, wherein the time series subsequence has a set of indicator values ​​that starts at a first timestamp and ends at a second timestamp.

[0090] In some embodiments, the PISA testing system 102 (e.g., via the computing device 104 and / or the processor 106) may identify one or more features of the at least one time series of BG measurements. The PISA testing system 102 may input the one or more features into at least one machine learning model (e.g., a second machine learning model) for classification and / or for generating a signal output.

[0091] At step 208, the method 200 may input features into the machine learning model. For example, the PISA detection system 102 (e.g., via the computing device 104 and / or the processor 106) may input one or more features of the BG measurements from the at least one time series into the at least one MLM 112 for training. In some embodiments, the PISA detection system 102 may input one or more features of at least one time series subsequence within the at least one time series of BG measurements into the at least one MLM 112 for training. In some embodiments, the PISA detection system 102 may input one or more features of the BG measurements from the at least one time series into the at least one MLM 112 for testing and / or for generating a signal output at runtime.

[0092] At step 210, the method 200 can detect sensor stress. For example, the PISA detection system 102 (e.g., via the computing device 104 and / or the processor 106) can detect sensor stress based on providing at least one time series of BG measurements as input to at least one machine learning model. In some embodiments, the PISA detection system 102 can detect sensor stress based on determining that at least one time series of BG measurements is a candidate sequence that includes a stress artifact using a first machine learning model (e.g., MLM 112-1). The PISA detection system 102 can then determine a fall time window in which the candidate series includes the BG measurements. The PISA detection system 102 can provide the candidate series (e.g., one or more features of the candidate series) as input to a second machine learning model (e.g., MLM 112-2).

[0093] The PISA testing system 102 can use a second machine learning model (e.g., MLM 112-2) to generate a signal output indicating that the BG measurement results of the at least one time series (e.g., the candidate sequence) were obtained when at least one sensor (e.g., sensor 110) was compressed. In some embodiments, the PISA testing system 102 can generate the signal output based on determining a probability value (the probability value indicating the probability that the candidate sequence corresponds to the occurrence of sensor compression).

[0094] In some embodiments, when configured to generate a signal output, the PISA detection system 102 (e.g., via the computing device 104 and / or the processor 106) can predict in real time by outputting an indication that at least one sensor was stressed when obtaining a BG measurement. For example, the PISA detection system 102 can generate a prediction based on a probability value generated by at least one machine learning model. The probability value can represent the probability that a time series subsequence includes a BG measurement obtained when at least one sensor was stressed. In this manner, the PISA detection system 102 can use at least one machine learning model to generate a probability that a time series subsequence includes a BG measurement obtained when at least one sensor was stressed, and the probability value can represent a measure of the confidence of the machine learning model in predicting that at least one sensor was stressed when obtaining a BG measurement (e.g., a BG measurement included in a time series subsequence analyzed by the at least one machine learning model). A higher probability can indicate a higher likelihood that the BG measurement in the time series subsequence was collected by the at least one sensor while stressed.

[0095] In some embodiments, when determining the probability value, the PISA detection system 102 may generate (e.g., via the MLM 112-2) a category of "not sensor stressed" for the candidate sequence when the probability is below a probability threshold, or may classify the candidate sequence (e.g., via the MLM 112-2) as "sensor stressed" when the probability value is equal to or greater than the probability threshold. Based on the PISA detection system 102 classifying the candidate sequence as "stressed," the PISA detection system 102 may generate a signal output indicating that the BG measurement results of the at least one time sequence (e.g., the candidate sequence) were obtained under conditions in which at least one sensor was stressed.

[0096] In some embodiments, the PISA testing system 102 (e.g., via the computing device 104 and / or the processor 106) can determine a probability that the time series subsequence includes a BG measurement obtained when at least one sensor is stressed based on a maximum probability value. For example, the maximum probability value can be determined from a plurality of probability values, each of which is associated with at least one timestamp and at least one BG measurement in the time series subsequence. In some other embodiments, the PISA testing system 102 can use an average probability value or other probability and / or statistical measure.

[0097] In some embodiments, the PISA testing system 102 (e.g., via the computing device 104 and / or the processor 106) may determine that the BG measurement results for the at least one time series include a change in the BG measurement results across multiple time stamps (e.g., across two consecutive time stamps, or across multiple time stamps starting from a first time stamp). The change in the BG measurement results may exceed a threshold. For example, the at least one processor may calculate the change in the BG measurement results by determining a difference between a first BG measurement value and a second BG measurement value, thereby determining the change in the BG measurement results. The at least one processor may then determine that the difference between the first BG measurement value and the second BG measurement value exceeds a threshold (e.g., a fall time threshold, etc.).

[0098] In some embodiments, when configured to determine that the BG measurement results of at least one time series are candidate sequences, the PISA testing system 102 (e.g., via the computing device 104 and / or the processor 106) may determine that the BG measurement results of the at least one time series include a time series subsequence, wherein the time series subsequence has a falling time window and a rising time window associated with the falling time window. In some embodiments, the PISA testing system 102 may use at least one machine learning model to determine (e.g., by identifying multiple timestamps within the BG measurement results of at least one time series) the time series subsequence. In some embodiments, the time series subsequence may include a sequence of timestamps corresponding to at least a portion of the falling time window (e.g., at least one timestamp of the time series subsequence is within the falling time window) and at least a portion of the rising time window (e.g., at least one timestamp of the time series subsequence is within the rising time window). The PISA testing system 102 may determine the time series subsequence based on determining that the time series subsequence includes a falling time window and a corresponding rising time window. The presence of the falling time window and the corresponding rising time window may be determined based on inputting the BG measurement results of at least one time series into at least one machine learning model. In some embodiments, the PISA detection system 102 can determine a falling time window and a corresponding rising time window based on determining a difference between a first BG measurement value and a second BG measurement value to determine a change in the BG measurement result (e.g., the change in the BG measurement result occurs at a timestamp in the falling time window and / or a timestamp in the rising time window).

[0099] In some embodiments, the PISA monitoring system 102 (e.g., via the computing device 104 and / or the processor 106) can predict that the sensor 110 is stressed when obtaining at least one BG measurement. For example, the PISA monitoring system 102 can generate the prediction via the MLM 112 executed by the processor 106 based on inputting at least a time series of BG measurements (e.g., characteristics thereof) into the MLM 112. While the sensor 110 is collecting measurement data, the PISA monitoring system 102 can generate the prediction in real time (e.g., in real time relative to the sensor 110 collecting the measurement data and transmitting the measurement data to the processor 106 and / or the memory 108) by outputting an indication based on the measurement data (e.g., the time series of BG measurements) received from the sensor 110.

[0100] In some embodiments, the classification of the candidate sequence generated by the PISA testing system 102 may include a prediction generated by a trained machine learning model (e.g., MLM 112-2) based on a runtime input provided to the trained machine learning model. The runtime input may include measurement data, the measurement data including BG measurements for at least one time series collected in real time by the sensor 110, the measurement data provided to the first machine learning model (e.g., MLM 112-1) to determine whether the BG measurements for the at least one time series include the candidate sequence. In some embodiments, the candidate sequence may include BG measurements for the time series and / or BG measurements for a subsequence of the time series. The PISA testing system 102 may then provide the candidate sequence to a second machine learning model (e.g., MLM 112-2) to generate the classification of the candidate sequence, so that the PISA testing system 102 may generate a signal output indicating that the BG measurements for the at least one time series collected in real time by the sensor 110 include BG measurements collected by the sensor 110 under pressure. In this manner, the PISA detection system 102 may collect measurement data via the sensor 110 , provide the measurement data to at least two machine learning models, and generate a signal output in real time relative to the time at which the measurement data is collected by the sensor 110 , indicating that the sensor 110 is under pressure.

[0101] In some embodiments, "real-time" may include a time instant at which a response (e.g., generation of a signal output) can occur within a specified time relative to the occurrence of an event (e.g., "real-time" relative to the collection of measurement data), typically within a relatively short period of time (e.g., within a few seconds or less) of the occurrence of the event. For example, "real-time" may refer to a time instant at which a signal output is generated by the PISA testing system 102 simultaneously with or shortly after (e.g., within milliseconds or seconds) the sensor 110 collects the measurement data. As another example, a real-time (e.g., runtime) signal output may be generated simultaneously with or shortly after the PISA testing system 102 receives a time series of BG measurement results, and / or simultaneously with or shortly after the PISA testing system 102 inputs the time series of BG measurement results into the at least one machine learning model to generate a runtime prediction and / or signal output, relative to inputting the time series of BG measurement results into the at least one machine learning model.

[0102] In certain embodiments, PISA detection system 102 (e.g., computing device 104 and / or processor 106) can be combined with insulin infusion system. PISA detection system 102 (e.g., by processor 106) can communicate with insulin infusion system (e.g., by wired and / or wireless device). PISA detection system 102 can be transmitted to insulin infusion system by signal output, wherein this signal output indicator sensor 110 is oppressed when collecting BG measurement result. Insulin infusion system can receive this signal output, wherein this signal output makes insulin infusion system perform at least one or more of the following: start insulin infusion, continue insulin infusion, disable alarm and / or its any combination.

[0103] In some embodiments, the PISA testing system 102 may annotate each of the multiple time series subsequences with an indication that the time series subsequence includes a compression artifact, or that the time series subsequence does not include a compression artifact. BG measurement results for one or more time series in the training dataset and / or the test dataset may be labeled.

[0104] The steps of method 200 may be performed in various orders and sequences and are not limited to Figure 2 . For example, before the PISA detection system 102 receives the measurement result from the sensor 110, features can be extracted from the training data and the features can be provided to the machine learning model for training. Similarly, in some cases, the PISA detection system 102 can receive the measurement data from the sensor 110 after detecting the sensor compression. Therefore, the steps of method 200 are not limited to any particular order and can be performed on various components, whether on a single computing device or on multiple distributed computing devices.

[0105] like Figure 3 As shown, embodiments may relate to an exemplary system implementation 300 for detecting sensor compression in continuous glucose monitoring. System 300 may include a glucose monitoring device 302, an insulin device 304, a processor 306, and a subject 308. In some embodiments, system 300 may include glucose monitoring device 302, processor 306, and subject 308 without insulin device 304. For example, system 300 may include a glucose monitoring device 302 (e.g., and at least one sensor included therein) in communication with at least one processor 306 to implement embodiments as disclosed herein.

[0106] In some embodiments, the blood glucose monitoring device 302 and / or the insulin device 304 can be identical or similar to the sensor 110. In some embodiments, the blood glucose monitoring device 302 and / or the insulin device 304 can include the sensor 110. For example, the blood glucose monitoring device 302 can include the sensor 110 as a component of the blood glucose monitoring device 302, or the insulin device 304 can include the sensor 110 as a component of the insulin device 304. In some embodiments, the blood glucose monitoring device 302, the insulin device 304 and / or the sensor 110 can be implemented in a single system. Alternatively, the processor 306 can be implemented on a computing device separate from the blood glucose monitoring device 302 and / or the insulin device 304.

[0107] In some embodiments, blood glucose monitoring device 302 and / or insulin device 304 may include processor 306. For example, blood glucose monitoring device 302 may include processor 306 as a component of blood glucose monitoring device 302, or insulin device 304 may include processor 306 as a component of insulin device 304. In some embodiments, blood glucose monitoring device 302, insulin device 304, processor 306 and / or sensor 110 may be implemented in a single system. Alternatively, processor 306 may be implemented on a computing device separate from blood glucose monitoring device 302, insulin device 304 and / or sensor 110. Processor 306 may be implemented locally in blood glucose monitoring device 302, insulin device 304 or an independent device (e.g., computing device 104) (or in any combination of two or more devices in blood glucose monitoring device 302, insulin device 302 or an independent device). In some embodiments, processor 306 may be identical or similar to processor 106.

[0108] Blood glucose monitoring device 302 may include a device (e.g., as a stand-alone device) that can be used to monitor and / or test the blood glucose level of subject 308. Blood glucose monitoring device 302 may adhere to and / or be attached to subject 308 to monitor blood glucose level. Blood glucose monitoring device 302 may communicate with subject 308 (e.g., through a sensor, such as sensor 110) to monitor the blood glucose level of subject 308. In this way, blood glucose monitoring device 302 may collect measurement data (e.g., BG measurement data) to be transmitted to processor 306 for detecting whether blood glucose monitoring device 302 and / or sensor 110 are compressed by subject 308. Processor 306 may be a component of blood glucose monitoring device 302 or may execute software instructions (e.g., PISA detection system 102) separately from blood glucose monitoring device 302. For example, processor 306 may be locally implemented in blood glucose monitoring device 302. In some embodiments, blood glucose monitoring device 302 and insulin device 304 may each be implemented as a separate device, or blood glucose monitoring device 302 and insulin device 304 may be implemented as a single device.

[0109] In some embodiments, the blood glucose monitoring device 302 can generate outputs, errors, parameters for accuracy improvement, and / or accuracy-related information, which can be transmitted to, for example, a processor 306 for performing various analyses, such as error analysis and / or further improvements to the embodiments of the present invention.

[0110] Insulin device 304 can comprise insulin infusion system, as insulin pump.Insulin device 304 can be communicated with experimenter 308 to carry insulin to experimenter 308.In certain embodiments, processor 306 can be used as the component of insulin device 304 or separately perform software instruction (for example, PISA detection system 102) with insulin device 304.For example, processor 306 can be local realization in insulin device 304.In certain embodiments, insulin device 304 can adhere to and / or be attached to experimenter 308 so that insulin device 304 can be delivered to experimenter 308.The part of processor 306 and / or system 300 can be positioned at a distance so that blood glucose monitoring device 302 and / or insulin device 304 can be used as telemedicine device operation.

[0111] The processor 306 can be implemented in hardware, software, or a combination of hardware and software. For example, the processor 306 may include a common processor (e.g., a CPU, a graphics processing unit (GPU), an accelerated processing unit (APU), etc.), a microprocessor, a digital signal processor (DSP), and / or any processing component that can be programmed with software instructions (e.g., a field programmable gate array (FPGA), an application specific integrated circuit (ASIC), etc.), so that the processor is configured to perform functions when executing software instructions. In some embodiments, the processor 306 may include multiple processors (e.g., a CPU and a GPU) implemented in a single computing device, or the processor 306 may include multiple processors implemented between multiple distributed computing devices. The processor 306 can be coupled to the memory via a data bus to transfer data between the processor 306 and the memory. In some embodiments, the processor 306 can be coupled to the sensor (e.g., sensor 110), the blood glucose monitoring device 302, and / or the insulin device 304 via a wired (e.g., data bus, Ethernet, etc.) or wireless (e.g., Wi-Fi, Bluetooth, etc.) device and / or communication interface.

[0112] Subject 308 can include a patient at home or another desired location. In some embodiments, the subject can include a human or any animal. It should be understood that the animal can be of any suitable type, including but not limited to mammals, veterinary animals, livestock animals, or pet-type animals. As an example, the animal can be a laboratory animal (e.g., a mouse, dog, pig, monkey) that is specifically selected to have certain characteristics similar to those of a human. It should be understood that, for example, the subject can be any suitable human patient.

[0113] Figure 3 The number and arrangement of systems, hardware and / or devices shown in are provided as examples. Figure 3 There may be additional systems, hardware, and / or devices, fewer systems, hardware, and / or devices, different systems, hardware, and / or devices, or differently arranged systems, hardware, and / or devices than those shown in . Figure 3 Two or more systems, hardware and / or devices shown in FIG. 1 may be implemented within a single system, hardware and / or device. Figure 3 The single system, hardware and / or device shown may be implemented as multiple distributed systems, hardware and / or devices. Additionally or alternatively, Figure 3 A set of systems, a set of hardware, and / or a set of devices (e.g., one or more systems, one or more hardware components, one or more devices) may perform the operations described as being performed by Figure 3 One or more functions performed by another set of systems, another set of hardware, or another set of devices.

[0114] Figure 4AAn exemplary graph of sensor measurements in continuous blood glucose monitoring (e.g., BG measurements collected by sensor 110) is shown, along with visualization of sensor measurements for PISA. For example, Figure 4A An example of compression artifacts present in sensor measurements is shown, where the sensor is compressed while collecting BG measurements. Figure 4A A time series subsequence 402 is shown, which begins at the start of the falling time window and ends at the rising end of the first rising time window. The time series subsequence 402 may represent PISA. That is, the BG measurements in the time series subsequence 402 are collected by a sensor (e.g., sensor 110) that is under pressure.

[0115] Figure 4B An exemplary graph of sensor measurements in continuous blood glucose monitoring (e.g., BG measurements collected by sensor 110) is shown, along with a visualization of sensor measurements without PISA. For example, Figure 4B Not shown are the combinations of fall and rise time windows that represent the PISA (eg, compression artifact) of the considered sensor. Figure 4B The BG measurement results shown in (e.g., any one of the time series subsequences) will not cause the processor (e.g., processor 106 and / or processor 306) to generate a signal indicating that at least one of the time series BG measurement results was collected during (collection Figure 4B The signal output obtained when a sensor (e.g., sensor 110) is compressed is obtained when the BG measurement results shown in FIG are compressed. For example, Figure 4B The BG measurements shown in were collected with sensors that were not stressed.

[0116] Figure 5 is a histogram illustrating an example distribution of PISA durations for an example training dataset collected from one or more sensors. Figure 5 The left side of shows an exemplary distribution of PISA durations for multiple PISAs annotated in the training dataset. Figure 5 The right side shows the same distribution based on the time of day when the sensor collected PISA. Figure 5 It is shown that the training data can follow an exponential distribution, where the length of many PISAs is less than 60 minutes. In some embodiments, there may be slight differences in the length distribution of the PISAs based on the time when the PISAs are started. Figure 5 , the duration of PISA, the time of day of PISA, and the duration of PISA associated with the time of day of PISA can all be features extracted from BG measurement data to be input into at least one machine learning model (e.g., for training, testing, and / or running).

[0117] Figure 6A A graph of exemplary BG measurements over time (eg, a time series) is shown, including an exemplary candidate sequence comprising at least a time series of BG measurements. Figure 6A The BG measurement result of at least one time series shown in includes at least one time series subsequence. Figure 6A As shown, the at least one time series of BG measurement results may include a time series of BG measurement results collected by a sensor (eg, sensor 110 ) over a time span (eg, 30 minutes, etc.). Figure 6A The dashed line with circular marks shown in the figure may include a rolling average calculated for at least one BG time series. The BG measurement results of the at least one time series may include at least one time series subsequence for determining whether the BG measurement results of the at least one time series are a candidate sequence. The BG measurement results of the at least one time series may have various lengths including various numbers of BG measurements and are not affected by Figure 6A The limitations of the time series shown in .

[0118] Figure 6B A graph showing BG results for an exemplary time series comprising a plurality of candidate sequences, each candidate sequence comprising a time series subsequence. Figure 6B Multiple time series subsequences of the BG volume results of this time series are shown, where Figure 6B Each time series subsequence identified in is identified as a candidate sequence (eg, by the PISA testing system 102).

[0119] Figure 7A An exemplary graph of BG volume results for a time series including multiple PISAs and multiple fall time windows is shown. Figure 7A A time series subsequence identified as PISA in the time series may have been determined to include a falling time window after being determined as a candidate sequence of BG measurement results. In some embodiments, a portion of candidate sequences in a time series of BG measurement results may be identified as PISA, while some candidate sequences in a time series of BG measurement results may be determined to include a falling time window but may not be determined to include PISA.

[0120] Figure 7B Shown as Figure 7A An exemplary graph of BG volume results for a time series including multiple PISAs and multiple fall time windows is shown. Figure 7B Shown as Figure 7A A portion of the BG measurements during this time series is shown in .

[0121] Figure 8A An exemplary graph of BG volume results for a time series including multiple PISAs and multiple candidate sequences, each candidate sequence having a falling time window, is shown. Figure 8A Each candidate sequence shown in has a predicted probability that the candidate sequence includes PISA occurrence.

[0122] Figure 8B An exemplary graph of BG volume results for a time series including PISA and multiple candidate sequences, each candidate sequence having a falling time window, is shown. Figure 8B Each candidate sequence in is shown with a predicted probability of PISA occurring. Figure 8B As shown, the first candidate sequence is shown as being identified as having a lower probability of including PISA. The second candidate sequence is shown as being identified as having a higher probability of including PISA. For example, the second candidate sequence is determined to be a time series subsequence of BG measurements collected by the sensor under pressure.

[0123] Figure 9 Example plots illustrating receiver operating characteristic (ROC) curves and areas under the precision-recall curves for a classifier model that may be trained and / or used to classify a time series of BG measurements as including occurrences of PISA to detect sensor compression. Figure 9 The present invention illustrates how embodiments can generate at least one machine learning model that can efficiently (e.g., in real time) classify and / or detect PISA in BG measurement data. The classifier model (e.g., a machine learning model) can include a random forest classifier, an adaptive boosting model (e.g., AdaBoost), and / or another machine learning algorithm trained using one or more training data sets.

[0124] Figure 10A An exemplary system configuration 1000A for an exemplary computing device (e.g., computing device 104) is shown. System configuration 1000A may include a processing unit 1006, a memory 1008, a removable storage device 1012, a non-removable storage device 1014, and a communication interface 1016. Processing unit 1006 may be the same as or similar to processor 106 and / or processor 306. Memory 1008 may be the same as or similar to memory 108. System configuration 1000A for a computing device (e.g., computing device 104) may include at least one processing unit 1006 and memory 1008. In some embodiments, memory 1008 may include volatile (e.g., random access memory (RAM)), non-volatile (e.g., read-only memory (ROM), flash memory, etc.), and / or any combination thereof.

[0125] In addition, system configuration 1000A may include other features and / or functionality. For example, system configuration 1000A may include additional removable storage 1012 and / or non-removable storage 1014, including but not limited to magnetic or optical disks or tape, and writable electronic storage media. Computer storage media may include volatile and non-volatile, removable and non-removable media implemented in any method or technology for storing information (such as computer-readable instructions, data structures, program modules and / or other data). Memory 1008, removable storage 1012, and non-removable storage 1014 are all examples of computer storage media. Computer storage media may include but are not limited to RAM, ROM, erasable programmable read-only memory (EEPROM), flash memory or other memory technology, compact disk read-only memory (CDROM), digital versatile disk (DVD) or other optical storage device, magnetic cassette, magnetic tape, magnetic disk storage or other magnetic storage device, or any other medium that can be used to store desired information and can be accessed by a computing device (e.g., computing device 104). Any such computer storage media may be part of or used in conjunction with a computing device (eg, computing device 104 ).

[0126] The system configuration 1000A of the exemplary computing device may include one or more communication interfaces 1016 that allow the computing device (e.g., computing device 104) to communicate with other devices (e.g., other computing devices). The communication interface 1016 can transmit and / or carry information and / or signals in a communication medium. The communication medium can include computer-readable instructions, data structures, program modules and / or other data in a modulated data signal (such as a carrier wave) or other transmission mechanism, and can include any information transport medium. The term "modulated data signal" may refer to a signal in which one or more of its characteristics are set or changed to encode, execute and / or process the information in the signal. By way of example and not limitation, the communication medium may include wired media such as a wired network or a direct wired connection, and wireless media such as radio, RF, infrared and / or other wireless media. As discussed, the term "computer-readable medium" as used herein may include both storage media and / or communication media.

[0127] Figure 10A The number and arrangement of systems, hardware, devices, and / or modules (eg, software instructions) shown in the are provided as examples. Figure 10A There may be fewer systems, hardware, devices, and / or modules, different systems, hardware, devices, and / or modules, or differently arranged systems, hardware, devices, and / or modules than those shown in FIG. Figure 10ATwo or more systems, hardware, devices and / or modules shown in the drawings may be implemented within a single system, hardware, device and / or module. Figure 10A The single system, hardware, device and / or module shown in can be implemented as multiple distributed systems, hardware, devices and / or modules. Additionally or alternatively, Figure 10A A set of systems, a set of hardware, a set of devices and / or a set of modules (e.g., one or more systems, one or more hardware devices, one or more devices, one or more modules) may perform the operations described as being performed by Figure 10A One or more functions performed by another set of systems, another set of hardware, another set of devices, or another set of modules.

[0128] Figure 10B An exemplary system environment 1000B is shown in which systems, methods, devices, and / or computer-readable media may be implemented. System environment 1000B may include at least one server 1004 (e.g., a network server), at least one client device 1018, a mobile device 1020, and a communication network 1022. In some embodiments, server 1004 may be the same as or similar to computing device 104. Client device 1018 may be the same as or similar to computing device 104.

[0129] Figure 10B A network system may be included that includes multiple computing devices (e.g., computing device 104, server 1004, and / or client device 1018) communicating with a networking means (e.g., communication network 1022), such as a network with an infrastructure or an ad hoc network. The network connection may be a wired connection and / or a wireless connection to the multiple computing devices. As an example, Figure 10B A system environment including a network system in which an embodiment can be implemented is shown. In this example, the network system may include a server 1004 (e.g., a network server), a communication network 1022 (e.g., a wired connection and / or a wireless connection), a client device 1018, and a mobile device (e.g., a smart phone) 1020 (or other handheld or portable device, such as a cellular phone, a laptop computer, a tablet computer, a GPS receiver, an mp3 player, a handheld video player, a pocket projector, etc., or a handheld device (or non-portable device) with a combination of such features). In some embodiments, it should be understood that the server 1004, the client device 1018, and / or the mobile device 1020 may include a blood glucose monitoring device (e.g., a blood glucose monitoring device 302). In some embodiments, it should be understood that the server 1004, the client device 1018, and / or the mobile device 1020 may include a blood glucose monitoring device (e.g., a blood glucose monitoring device 302), an artificial pancreas, and / or an insulin device (e.g., an insulin device 304), or other invasive devices or diagnostic devices. Figure 10B Any component shown or discussed may be plural in number. Some embodiments may be Figure 10B For example, the execution of instructions or other desired processing may be performed on the same computing device that is any one of the server 1004, the client device 1018, and / or the mobile device 1020. Alternatively, some embodiments may be implemented on Figure 10B 1004, client device 1018, mobile device 1020, and / or blood glucose monitoring device) of the network system, while other processing and execution may be performed at another computing device of the network system (e.g., server 1004, client device 1018, and / or mobile device 1020), and vice versa. In some embodiments, certain processing and / or execution may be performed at one computing device (e.g., server 1004, client device 1018, mobile device 1020, and / or insulin device, artificial pancreas, or blood glucose monitoring device (or other invasive device or diagnostic device)); and other processing and / or execution (e.g., software instructions, PISA testing system 102, etc.) may be performed at different computing devices, which may or may not be part of the network system. For example, certain processing can be performed at the client device 1018, while other processing and / or instructions are passed to the server 1004 and / or mobile device 1020 that can execute a portion of the software instructions (e.g., PISA testing system 102). This scenario may be suitable when the mobile device 1020 accesses the communication network 1022, for example, through the client device 1018 (or an access point in an ad hoc network). For another example, one or more embodiments can be utilized to execute, encode and / or process software instructions to be protected. The processed, encoded and / or executed software can then be distributed to one or more customers (e.g., the client device 1018, mobile device 1020 and / or blood glucose monitoring device 302 of a customer and / or subject). The distribution of software instructions (e.g., software modules and / or software packages) can be in the form of a storage medium (e.g., a disk) or an electronic copy.

[0130] Figure 10B The number and arrangement of systems, hardware, devices, and / or modules (eg, software instructions) shown in the are provided as examples. Figure 10B There may be fewer systems, hardware, devices, and / or modules, different systems, hardware, devices, and / or modules, or differently arranged systems, hardware, devices, and / or modules than those shown in FIG. Figure 10BTwo or more systems, hardware, devices and / or modules shown in the drawings may be implemented within a single system, hardware, device and / or module. Figure 10B The single system, hardware, device and / or module shown in can be implemented as multiple distributed systems, hardware, devices and / or modules. Additionally or alternatively, Figure 10B A set of systems, a set of hardware, a set of devices and / or a set of modules (e.g., one or more systems, one or more hardware devices, one or more devices, one or more modules) may perform the operations described as being performed by Figure 10B One or more functions performed by another set of systems, another set of hardware, another set of devices, or another set of modules.

[0131] Figure 11 is a block diagram illustrating a system 1100 including a computer system 140 and an associated Internet 11 connection on which embodiments may be implemented. This configuration is typically used for computers (hosts) to connect to the Internet 11 and execute server or client (or a combination) software. For example, a source computer (such as a laptop), a final destination computer and a relay server, as well as any computer or processor described herein, may use Figure 11 , and an Internet connection. In some embodiments, computer system 140 can be the same as or similar to computing device 104. System 1100 can be used as a portable electronic device such as a notebook / laptop computer, a media player (e.g., an MP3-based player or video player), a cellular phone, a personal digital assistant (PDA), a blood glucose monitoring device, an artificial pancreas, an insulin infusion device (or other invasive device or diagnostic device), an image processing device (e.g., a digital camera or video recorder), and / or any other handheld computing device, or a combination of any of these devices. Note that although Figure 11 Various components of the computer system are shown, but they are not intended to represent any particular architecture or manner of interconnecting these components; as such details are not germane to the present disclosure. It should also be understood that network computers, handheld computers, cellular phones, and other data processing systems having fewer or possibly more components may also be used. Figure 11The computer system 140 may be, for example, an Apple Macintosh computer or an Apple PowerBook, or an IBM-compatible personal computer. The computer system 140 includes a bus 137, an interconnect, or other communication mechanism for transmitting information, and a processor 138 (typically in the form of an integrated circuit) coupled to the bus 137 to process information and execute computer-executable instructions. The computer system 140 also includes a main memory 134, such as a RAM or other dynamic storage device, coupled to the bus 137 to store information and instructions to be executed by the processor 138. In some embodiments, the processor 138 may be the same as or similar to the processor 106 and / or the processor 306.

[0132] Main memory 134 can also be used to store temporary variables or other intermediate information during the execution of instructions to be executed by processor 138. Computer system 140 also includes a read-only memory (ROM) 136 (or other non-volatile memory) or other static storage device coupled to bus 137 for storing static information and instructions for processor 138. Storage devices 135 (such as magnetic disks or optical disks), hard disk drives for reading from and writing to a hard disk, magnetic disk drives for reading from and writing to a hard disk, and / or optical disk drives (such as DVDs) for reading from and writing to a removable optical disk are coupled to bus 137 to store information and instructions. The hard disk drive, magnetic disk drive, and optical disk drive can be connected to the system bus via a hard disk drive interface, a magnetic disk drive interface, and an optical disk drive interface, respectively. The drives and their associated computer-readable media provide non-volatile storage of computer-readable instructions, data structures, program modules, and other data for general-purpose computing devices. Typically, computer system 140 includes an operating system (OS) stored in non-volatile storage for managing computer resources and providing access to computer resources and interfaces to applications and programs. An operating system typically processes system data and user input and responds by allocating and managing tasks and internal system resources, such as controlling and allocating memory, prioritizing system requests, controlling input and output devices, facilitating networking, and managing files. Non-limiting examples of operating systems are Microsoft Windows, Mac OS X, and Linux.

[0133] The term "processor" is intended to include any integrated circuit or other electronic device (or collection of devices) capable of performing an operation on at least one instruction, including but not limited to reduced instruction set core (RISC) processors, CISC microprocessors, microcontroller units (MCUs), CISC-based central processing units (CPUs), and digital signal processors (DSPs). The hardware of such devices may be integrated onto a single substrate (e.g., a silicon "die") or distributed across two or more substrates. In addition, various functional aspects of a processor may be implemented separately as software or firmware associated with the processor.

[0134] Computer system 140 can be coupled to a display 131 via bus 137, such as a cathode ray tube (CRT), liquid crystal display (LCD), flat-screen monitor, touch screen monitor, or similar device for displaying text and graphical data to a user. The display can be connected via a video adapter for supporting the display. The display allows a user to view, input, and / or edit information related to the operation of the system. Input devices 132 (including alphanumeric and other keys) are coupled to bus 137 for communicating information and command selections to processor 138. Another type of user input device is cursor control 133, such as a mouse, trackball, or cursor direction keys, for communicating direction information and command selections to processor 138 and for controlling cursor movement on display 131. 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 specify a position in a plane.

[0135] The computer system 140 can be used to implement the methods and techniques described herein. According to one embodiment, those methods and techniques are performed by the computer system 140 in response to the processor 138 executing one or more sequences of one or more instructions contained in the main memory 134. Such instructions can be read into the main memory 134 from another computer-readable medium (such as the storage device 135). Execution of the sequence of instructions contained in the main memory 134 causes the processor 138 to perform the process steps described herein. In alternative embodiments, hard-wired circuitry can be used in place of or in combination with software instructions to implement such an arrangement. Thus, the embodiments are not limited to any specific combination of hardware circuitry and software.

[0136] As used herein, the term "computer-readable medium (or machine-readable medium)" is an extensible term that refers to any medium or any memory that participates in providing instructions to a processor (such as processor 138) for execution, or any mechanism for storing or transmitting information in a form readable by a machine (e.g., a computer). Such media can store computer-executable instructions to be executed by processing elements and / or control logic, as well as data manipulated by processing elements and / or control logic, and can take a variety of forms, including but not limited to non-volatile media, volatile media, and transmission media. Transmission media include coaxial cables, copper wire, and optical fiber, including wires (including bus 137). Transmission media can also take the form of sound or light waves (such as the transmission media generated during radio wave and infrared data communications), or other forms of propagated signals (e.g., carrier waves, infrared signals, digital signals, etc.). Common forms of computer readable media include, for example, a floppy disk, a flexible disk, a hard disk, magnetic tape or any other magnetic medium, a CD-ROM, any other optical medium, punch cards, paper tape, any other physical medium with a pattern of holes, a RAM, a PROM and EPROM, a Flash-EPROM, any other memory chip or cartridge, a carrier wave as described below, or any other medium from which a computer can read.

[0137] Various forms of computer-readable media may be used to carry one or more sequences of one or more instructions to processor 138 for execution. For example, the instructions may initially be carried on a disk of a remote computer. The remote computer may load the instructions into its dynamic memory and send the instructions over a telephone line using a modem. A modem local to computer system 140 may receive the data on the telephone line and use an infrared transmitter to convert the data to an infrared signal. An infrared detector may receive the data carried in the infrared signal, and appropriate circuitry may place the data on bus 137. Bus 137 carries the data to main memory 134, from which processor 138 retrieves and executes the instructions. The instructions received by main memory 134 may optionally be stored on storage device 135 before or after execution by processor 138.

[0138] The computer system 140 also includes a communication interface 141 coupled to the bus 137. The communication interface 141 provides a two-way data communication connection to the network link 139, which is connected to the local network 111. For example, the communication interface 141 can be an integrated services digital network (ISDN) card or a modem to provide a data communication connection to a corresponding type of telephone line. As another non-limiting example, the communication interface 141 can be a local area network (LAN) card to provide a data communication connection to a compatible LAN. For example, an Ethernet-based connection based on the IEEE 802.3 standard may be used, such as 10 / 100BaseT, 1000BaseT (Gigabit Ethernet), 10 Gigabit Ethernet (10GE or 10GbE or 10GigE as standard in accordance with IEEE standard 802.3AE-2002), 40 Gigabit Ethernet (40GbE), or 100 Gigabit Ethernet (100GbE as standard in accordance with Ethernet standard IEEE P802.3ba), as described in Cisco Systems, Inc. publication No. 1-587005-001-3 (6 / 99), “Internetworking Technologies Handbook,” Chapter 7: “Ethernet Technologies,” pages 7-1 to 7-38, which is incorporated herein by reference for all purposes as if fully set forth herein. In this case, the communication interface 141 typically includes a LAN transceiver or modem, such as the Standard Microsystems Corporation (SMSC) LAN91C111 10 / 100 Ethernet transceiver described in the Standard Microsystems Corporation (SMSC) data sheet “LAN91C111 10 / 100 Non-PCI Ethernet Single Chip MAC+PHY” Data Sheet Revision 15 (02-20-04), which data sheet is incorporated in its entirety for all purposes as if fully set forth herein.

[0139] Wireless links may also be implemented.In any such implementation, communication interface 141 sends and receives electrical, electromagnetic or optical signals that carry digital data streams representing various types of information.

[0140] Network link 139 typically provides data communication through one or more networks to other data devices. For example, network link 139 can provide a connection to a host computer or to data equipment operated by an Internet Service Provider (ISP) 142 through local network 111. ISP 142, in turn, provides data communication services through the Internet 11, a global packet data communication network. Both local network 111 and Internet 11 use electrical, electromagnetic, or optical signals to carry digital data streams. The signals through the various networks, as well as the signals on network link 139 and through communication interface 141, which carry the digital data to and from computer system 140, are exemplary forms of carrier waves transporting the information.

[0141] The received code may be executed by processor 138 as it is received, and / or stored in storage device 135 or other non-volatile storage for later execution. In this manner, computer system 140 may obtain application code in the form of a carrier wave.

[0142] Embodiments of the present disclosure include concepts for a) detecting CGM sensor PISA, b) improving CGM sensor accuracy or sensing accuracy by detecting compression artifacts inherent in devices such as medical devices and pharmaceutical devices, and / or c) improving the behavior of continuous subcutaneous insulin infusion therapies and related systems such as sensor-augmented insulin pumps (SAPs), hypoglycemia pause (LGS), predictive hypoglycemia pause (PLGS), or automated insulin infusion (AID), known as an artificial pancreas. As provided in the embodiments discussed herein, the devices to which the embodiments are applicable are used for the following purposes: a) providing single signal and / or multi-signal detection of CGM sensor PISA, b) improving the accuracy or sensing accuracy of CGM sensors by detecting compression artifacts inherent in devices such as medical devices and pharmaceutical devices, and / or c) improving the behavior of continuous subcutaneous insulin infusion therapy and related systems (such as sensor-enhanced insulin pumps (SAPs), hypoglycemia pause (LGS), predictive hypoglycemia pause (PLGS), or automated insulin infusion (AID) (referred to as "artificial pancreas"), and these devices can be implemented and utilized together with the relevant processors, networks, computer systems, the Internet, and components and functions according to the embodiments disclosed herein.

[0143] Figure 12304) (or other invasive devices or diagnostic devices) can be implemented locally by a subject (or patient) at home or other desired location. However, in alternative embodiments, the blood glucose monitor can be implemented in a clinic setting or an auxiliary setting. For example, referring to Figure 12 The clinic system 158 provides a place for doctors (e.g., 164) or clinicians / assistants to diagnose patients (e.g., 159) with blood glucose-related diseases and related diseases and conditions. The blood glucose monitoring device 10 can be used as a standalone device to monitor and / or test a patient's blood glucose level. In some embodiments, the blood glucose monitoring device 10 can be the same as or similar to the blood glucose monitoring device 302. Figure 12 The system or component (e.g., blood glucose monitoring device 10) can be adhered to the patient or communicate with the patient as desired or required. For example, a combination of the system or its components - including the blood glucose monitoring device 10 (or other related equipment or systems, such as a controller, and / or an artificial pancreas, an insulin pump (or other invasive color plate or diagnostic equipment), or any other desired or required equipment or component) - can be in contact with, connected to, or adhered to the patient by tape or tubing (or other medical devices or components), or can communicate by wired or wireless connection. Such monitoring and / or testing can be short-term (e.g., a clinical visit) or long-term (e.g., clinical hospitalization or family medicine). The doctor (clinician or assistant) can use the blood glucose monitoring device output for appropriate actions (such as injecting insulin or feeding the patient), or other appropriate actions or modeling. Alternatively, the blood glucose monitoring device output can be transmitted to a computer terminal 168 for current or future analysis. This transmission can be performed via a cable or wirelessly or any other suitable medium. The blood glucose monitoring device output from the patient can also be transmitted to a portable device, such as a mobile device 166. The output of the blood glucose monitoring device with improved accuracy can be transmitted to the blood glucose monitoring center 172 for processing and / or analysis. This transmission can be achieved in a variety of ways, such as a network connection 170, which can be wired or wireless.

[0144] In addition to the blood glucose monitoring device output, the error, parameters for accuracy improvement, and any accuracy-related information can be transmitted to, for example, a computer 168 and / or a blood glucose monitoring center 172 to perform error analysis. Due to the importance of blood glucose sensors (or other invasive or diagnostic sensors or devices), this can provide centralized accuracy monitoring, modeling, and / or accuracy improvement for a blood glucose center (or other invasive or diagnostic center).

[0145] Figure 13The block diagram of the example machine 1300 on which one or more aspects of the embodiments can be implemented is shown. The machine 1300 may include, but is not limited to, systems, methods, and computer-readable media that provide: a) single and / or multiple signal detection of CGM sensor PISA, b) improving the accuracy or sensing accuracy of CGM sensors by detecting compression artifacts inherent in devices such as medical devices and pharmaceutical devices, and / or c) improving the behavior of continuous subcutaneous insulin infusion therapy and related systems such as sensor-enhanced insulin pumps (SAPs), hypoglycemia pause (LGS), predictive hypoglycemia pause (PLGS), or automated insulin infusion (AID) (referred to as an "artificial pancreas"), showing a block diagram of an example machine 1300 on which one or more embodiments (e.g., the methods discussed) can be implemented (e.g., run).

[0146] Examples of machine 1300 may include logic, one or more components, circuits (e.g., modules), or mechanisms. A circuit is a tangible entity configured to perform certain operations. In an example, the circuit may be arranged in a specified manner (e.g., within or relative to an external entity (e.g., other circuits)). In an example, one or more computer systems (e.g., stand-alone, client, or server computer systems) or one or more hardware processors (processors) may be configured by software (e.g., instructions, application portions, or applications) to operate as a circuit to perform certain operations as described herein. In an example, the software may reside on (1) a non-transitory machine-readable medium or (2) in a transmission signal. In an example, the software, when executed by the circuit's underlying hardware, causes the circuit to perform certain operations.

[0147] In an example, the circuit can be implemented mechanically or electronically. For example, the circuit can include dedicated circuitry or logic that is specifically configured to perform one or more techniques such as those discussed above, such as including a dedicated processor, a field programmable gate array (FPGA), or an application-specific integrated circuit (ASIC). In an example, the circuit can include programmable logic (e.g., as contained within a general-purpose processor or other programmable processor) that can be temporarily configured (e.g., by software) to perform certain operations. It should be understood that cost and time considerations can drive the decision to implement the circuit mechanically (e.g., in a dedicated and permanently configured circuit) or in a temporarily configured circuit system (e.g., configured by software).

[0148] Thus, the term "circuit" may refer to a tangible entity that is physically constructed, permanently configured (e.g., hardwired), or temporarily (e.g., provisionally) configured (e.g., programmed) to operate in a specified manner or perform a specified operation. In an example, given a plurality of temporarily configured circuits, each circuit need not be configured or instantiated at any one time. For example, where a circuit may include a general-purpose processor configured by software, the general-purpose processor may be configured as correspondingly different circuits at different times. The software may configure the processor accordingly, for example, to configure a particular circuit at one time and to configure a different circuit at a different time.

[0149] In an example, a circuit can provide information to other circuits, and receive information from other circuits. In this example, a circuit can be considered to be communicatively coupled to one or more other circuits. In the case of multiple such circuits being present at the same time, communication can be achieved by the signal transmission (e.g., by appropriate circuits and buses) connecting these circuits. In an embodiment in which multiple circuits are configured or instantiated at different times, communication between such circuits can be achieved, for example, by storing and retrieving information in a memory structure accessible to multiple circuits. For example, a circuit can perform an operation and store the output of the operation in a memory device communicatively coupled thereto. Then, another circuit can access the memory device at a later time to retrieve and process the stored output. In an example, a circuit can be configured to initiate or receive communication with an input or output device, and can operate on a resource (e.g., a collection of information).

[0150] Each operation of the method examples described herein may be performed at least in part by one or more processors that are temporarily configured (e.g., by software) or permanently configured to perform the relevant operations. Whether temporarily configured or permanently configured, such processors may constitute circuits implemented by the processor that operate to perform one or more operations or functions. In an example, the circuits mentioned herein may include circuits implemented by the processor.

[0151] Similarly, the methods described herein can be implemented at least in part by a processor. For example, at least some of the operations of the method can be performed by one or more processors or a circuit implemented by a processor. The execution of certain operations can be distributed between the one or more processors, not only residing in a single machine, but also deployed across multiple machines. In an example, one or more processors can be located in a single location (e.g., in a home environment, an office environment, or as a server group), while in other examples, the processor can be distributed across multiple locations.

[0152] The one or more processors may also be operable to support execution of the related operations in a cloud computing environment or as software as a service (SaaS). For example, at least some operations may be performed by a group of computers (as an example of a machine including a processor), where the operations are accessible via a network (e.g., the Internet) and via one or more appropriate interfaces (e.g., application program interfaces (APIs)).

[0153] Example embodiments (e.g., apparatus, systems, or methods) may be implemented in digital electronic circuitry, computer hardware, firmware, software, or any combination thereof. Example embodiments may be implemented using a computer program product (e.g., a computer program tangibly embodied in an information carrier or machine-readable medium for execution by, or to control the operation of, a data processing apparatus (e.g., a programmable processor, a computer, or multiple computers)).

[0154] A computer program can be written in any form of programming language, including compiled or interpreted languages, and it can be deployed in any form, including as a stand-alone program or as a software module, subroutine, or other unit suitable for use in a computing environment. A computer program can be deployed to be executed on one computer or on multiple computers that are distributed at one site or across multiple sites and interconnected by a communication network.

[0155] In an example, the operations may be performed by one or more programmable processors executing a computer program to perform functions by operating on input data and generating output. Examples of method operations may also be performed by, and example apparatus may be implemented as, special purpose logic circuitry (e.g., a field programmable gate array (FPGA) or an application specific integrated circuit (ASIC)).

[0156] The computing system may include a client and a server. The client and the server are typically remote from each other and typically interact via a communication network. The relationship between the client and the server is generated by computer programs that run on respective computers and have a client-server relationship with each other. In the embodiments of the deployed programmable computing system, it will be understood that both hardware architecture and software architecture need to be considered. Specifically, it will be understood that the choice of implementing certain functions in permanently configured hardware (e.g., ASIC), in temporarily configured hardware (e.g., a combination of software and a programmable processor), or in a combination of permanently and temporarily configured hardware can be a design choice. The hardware (e.g., machine 1300) architecture and software architecture that can be deployed in an example embodiment are described below.

[0157] In some examples, the machine 1300 may operate as a standalone device. In some examples, the machine 1300 may be connected (e.g., using a network) to other machines.

[0158] In a networked deployment, the machine 1300 may operate in the capacity of a server or a client user machine in server-client user network environment. In an example, the machine 1300 may function as a peer machine in a peer-to-peer (or other distributed) network environment. The machine 1300 may be a personal computer (PC), a tablet PC, a set-top box (STB), a personal digital assistant (PDA), a mobile phone, a network appliance, a network router, a switch, or a bridge, or any other machine capable of executing (sequentially or otherwise) instructions that specify actions to be taken (e.g., performed) by the machine 1300. While a single machine 1300 is illustrated, the term “machine” may include any collection of machines that individually or jointly execute a set (or multiple sets) of instructions to perform any one or more of the methodologies discussed herein.

[0159] Example machine (e.g., computer system) 1300 may include a processor 1302 (e.g., a central processing unit (CPU), a graphics processing unit (GPU), or both), main memory 1304, and static memory 1306, some or all of which may communicate with each other via a bus 1308. Machine 1300 may also include a display unit 1310, an alphanumeric input device 1312 (e.g., a keyboard), and a user interface (UI) navigation device 1311 (e.g., a mouse). In an example, display unit 1310, input device 1312, and UI navigation device 1314 may be touch screen displays. Machine 1300 may also include a storage device (e.g., a drive unit) 1316, a signal generating device 1318 (e.g., a speaker), a network interface device 1320, and one or more sensors 1321 (e.g., a global positioning system (GPS) sensor, a compass, an accelerometer, or other sensors). In some embodiments, sensor 1321 may be the same as or similar to sensor 110.

[0160] The storage device 1316 may include a machine-readable medium 1322 having stored thereon one or more sets of data structures or instructions 1324 (e.g., software) that embody or are utilized by any one or more of the methodologies or functionality described herein. The instructions 1324 may also reside, completely or at least partially, within the main memory 1304, within the static memory 1306, or within the processor 1302 during execution by the machine 1300. In an example, one or any combination of the processor 1302, the main memory 1304, the static memory 1306, or the storage device 1316 may constitute a machine-readable medium.

[0161] Although the machine-readable medium 1322 is illustrated as a single medium, the term "machine-readable medium" may include a single medium or multiple media (e.g., a centralized or distributed database, and / or associated caches and servers) configured to store one or more instructions 1324. The term "machine-readable medium" may also include any tangible medium that can store, encode, or carry instructions for execution by a machine and cause the machine to perform any one or more of the methods disclosed herein, or any tangible medium that can store, encode, or carry data structures used by or associated with such instructions. Thus, the term "machine-readable medium" may be considered to include, but is not limited to, solid-state memory, and optical and magnetic media. Specific examples of machine-readable media may include non-volatile memory, such as semiconductor memory devices (e.g., electrically programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM)) and flash memory devices, magnetic disks (such as internal hard disks and removable disks), magneto-optical disks, and CD-ROM and DVD-ROM disks.

[0162] Instructions 1324 may also be sent or received over a communication network 1326 using a transmission medium via the network interface device 1320 using any of a number of transmission protocols (e.g., Frame Relay, IP, TCP, UDP, HTTP, etc.). Example communication networks may include a local area network (LAN), a wide area network (WAN), a packet data network (e.g., the Internet), a mobile telephone network (e.g., a cellular network), a plain old telephone (POTS) network, and a wireless data network (e.g., a wireless network known as a cellular network). The IEEE 802.11 series of standards, known as The term "transmission medium" may include any intangible medium that can store, encode, or carry instructions for execution by the machine, and includes digital or analog communication signals or other intangible media to facilitate communication of such software.

[0163] Any processor disclosed herein may be part of or in communication with a machine (e.g., a computer device, a logic device, a circuit, an operating module (hardware, software, and / or firmware), etc.). A processor may be hardware (e.g., a processor, an integrated circuit, a central processing unit, a microprocessor, a core processor, a computer device, etc.), firmware, software, etc., configured to perform operations by executing instructions contained in computer program code, algorithms, program logic, control, logic, data processing program logic, artificial intelligence programming, machine learning programming, artificial neural network programming, automated reasoning programming, etc. The processor may receive, process, and / or store data.

[0164] Any processor disclosed herein may be an extensible processor, a parallelizable processor, a multithreaded processing processor, etc. The processor may be a computer in which processing power is selected according to expected network traffic (e.g., data flow). The processor may include an integrated circuit or other electronic device (or device collection) capable of performing operations on at least one instruction, which may include a reduced instruction set core (RISC) processor, a complex instruction set computer (CISC) microprocessor, a microcontroller unit (MCU), a CISC-based central processing unit (CPU), a digital signal processor (DSP), a graphics processing unit (GPU), a field programmable gate array (FPGA), etc. The hardware of such devices may be integrated onto a single substrate (e.g., a silicon "die"), distributed between two or more substrates, etc. Each functional aspect of the processor may be implemented separately as software or firmware associated with the processor.

[0165] The processor may include one or more processing modules or operating modules. The processing modules or operating modules may be software operating modules or firmware operating modules configured to implement any of the functions disclosed herein. The processing modules or operating modules may be embodied as software and stored in a memory operatively associated with the processor. The processing modules may be embodied as web applications, desktop applications, console applications, etc.

[0166] The processor may include, or be associated with, a computer or machine-readable medium. The computer or machine-readable medium may include a memory. Any memory discussed herein may be a computer-readable memory configured to store data. The memory may include volatile or non-volatile memory, temporary or non-transient memory, and may be embodied as internal memory, active memory, cloud storage, etc. Examples of memory may include flash memory, random access memory (RAM), read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), flash-EPROM, compact disc (CD)-ROM, digital optical disc (DVD), optical storage device, optical medium, carrier wave, cassette tape, magnetic tape, magnetic disk storage device or other magnetic storage device, or any other medium that may be used to store desired information and may be accessed by the processor.

[0167] The memory can be a non-transient computer-readable medium. As used herein, the term "computer-readable medium (or machine-readable medium)" is an extensible term and refers to any medium or any memory that participates in providing instructions to the processor for execution, or any mechanism for storing or transmitting information in a machine (e.g., computer) readable form. This medium can store computer-executable instructions to be executed by processing elements and / or control logic, and data manipulated by processing elements and / or control logic, and can take various forms, including but not limited to non-volatile media, volatile media, transmission media, etc. A computer or machine-readable medium can be configured to store one or more instructions or computer programs thereon. An instruction or computer program can be in the form of an algorithm, program logic, etc. that causes a processor to perform any function disclosed herein.

[0168] Embodiments of the memory may include processor modules and other circuitry to allow data to be transferred to and from the memory, including data to and from other components of the communication system. This transfer may be performed via hardwired or wireless transmission. The communication system may include a transceiver, which may be used in combination with switches, receivers, transmitters, routers, gateways, waveguides, etc., to communicate via a communication method or protocol for controlled and coordinated signal transmission and processing to any other component or combination of components of the communication system. This transfer may be performed via a communication link. The communication link may be electronic, optical, optoelectronic, quantum, etc. Communication may be via Bluetooth, near-field communication, cellular communication, telemetry communication, Internet communication, etc.

[0169] The transmission of data and signals can be via a transmission medium. Transmission media can include coaxial cables, copper wires, optical fibers, etc. Transmission media can also take the form of sound waves or light waves (such as those generated during radio wave and infrared data communications), or other forms of propagated signals (e.g., carrier waves, digital signals, etc.).

[0170] Any processor can communicate with other processors of other devices (e.g., computer devices, computer systems, laptop computers, desktop computers, etc.). For example, the processor of system configuration 100 can communicate with the processor of another computing device 104, and the processor of computing device 104 can communicate with the processor of a display, sensor 110, etc. Any processor can have a transceiver or other communication device / circuitry to facilitate the transmission and reception of wireless signals. Any processor can include an application programming interface (API) as a software intermediary that allows two or more applications to talk to each other. The use of an API can allow software on one processor to communicate with software on another processor of another (one or more) device.

[0171] Any data transfer or communication between two components may be a push operation and / or a pull operation. For example, data transfer between the processor 106 and the memory 108 or the processor 106 and the sensor 110 may be a push operation (e.g., data may be pushed from the memory) and / or a pull operation (e.g., the processor may pull data from the memory), and data transfer between another system and the computing device 104 may be a push and / or pull operation.

[0172] As the data is received by the component, it can be processed in real time, stored in memory for later processing, or some combination of the two. After being processed by the component, the processed data can be used in real time, stored in memory for later use, or some combination of the two. The pre-processed data and / or the processed data can be encoded, tagged, or marked before, during, or after being stored in memory.

[0173] As described herein, the system configuration 100 may include a memory 108 containing a computer program (eg, software instructions for the PISA testing system 102 ) that, when executed, may cause the processor 106 to perform any of the functions / operations disclosed herein.

[0174] The computer program can cause the processor to execute one or more machine learning models (e.g., linear regression model, tree-based model, perceptron-based model, Gaussian-based model, etc.) It is contemplated that at least one of these machine learning models is a random forest model or an AdaBoost machine learning model.

[0175] Examples

[0176] The following describes the developed exemplary methods and systems, as well as the testing results of the exemplary methods and systems.

[0177] One aspect of embodiments of the methods, systems, and computer-readable media of the present disclosure provides, among other things, the ability to detect low points in a CGM sensor in real time, thereby preventing low point effects that negatively impact diabetes treatment, such as false hypoglycemia alarms or insulin withdrawal in an insulin infusion system. For purposes of one aspect of the embodiments, the insulin infusion system can be: (i) a sensor-augmented insulin pump (SAP) therapy; (ii) a hypoglycemia pause (LGS) system or a predictive hypoglycemia pause (PLGS) system, or (iii) an automated insulin infusion (AID) (referred to as an "artificial pancreas").

[0178] One aspect of the embodiment of method, system and computer-readable medium of the present disclosure especially comprises two kinds of algorithms, and these two kinds of algorithms work in collaboration and fully identify PISA in a forward-looking manner.The first algorithm is a forward-looking single sensor algorithm for detecting that PISA occurs.The second algorithm is a retrospective single sensor algorithm for detecting that PISA ends.Two kinds of algorithms all utilize machine learning techniques to learn from input data, and in the present embodiment, they use random forest model and AdaBoost model.In other alternative embodiments, machine learning algorithm can be but not limited to gradient boosting tree (Gradient Boosted Trees), neural network, support vector machine etc., or its any combination.

[0179] In an embodiment, internally, the methods, systems, and computer-readable media use one or more signals available from a CGM sensor, including but not limited to: raw glucose estimates (before calibration and temperature correction), filtered glucose, temperature, time of day, sensor life, and / or any combination thereof. These signals (when available) are provided to a machine learning technique and / or a machine learning model. Externally, the methods may utilize additional information from other PISA detection technologies, considerations regarding glucose events (e.g., hypoglycemia), or data from anticipated future sensors (e.g., a pressure sensor added to a CGM sensor). In an embodiment, external updating of the methods, systems, and computer-readable media using the additional information / signals is accomplished through an iterative Bayesian update process.

[0180] In an embodiment, to develop the method, system, and computer-readable medium, the algorithm in the embodiment was trained on CGM data traces from 67 individuals containing 58,403 hours of sensor data and 1,089 PISA events, and then tested on an independent test dataset with data from 44 individuals (36,206 hours of CGM data and 534 PISA events).

[0181] Data Overview

[0182] The exemplary dataset includes 407 files generated by 113 subjects. Examples may include two subjects with only one sensor, and 111 subjects with available data for concurrent CGM data from two or more sensors. Examples may include 78 subjects with four sensors, 27 subjects with three sensors, and six subjects with two sensors. The data may include less than 1% of sensors being in a warm-up state, 93.6% of sensors reporting blood glucose to the user, less than 1% of sensors experiencing some sensor signal transient issues, and 5.5% of sensors experiencing malfunctions.

[0183] Each subject can have two different sets of data. The data in the "Display" table can be sampled every 5 minutes, while the data in the "Intermediate" table can be sampled every 30 seconds. The data in the "Display" table can include a subset of the data in the "Intermediate" table, so the data from the "Intermediate" table can be used in this work.

[0184] The data from the "middle" table can be organized so that all sensor data from all subjects is placed in a single CSV file with 12,039,945 rows and 19 columns. For a given subject, two or more sensors may have different start times, resulting in BG values ​​being recorded at different timestamps. To compare BG values ​​across multiple sensors, the Python pandas resample function can be used to resample the data into 30-second time buckets (starting at midnight each day). Under this resampling scheme, the timestamp of any BG value recorded during a 30-second time bucket is set to the start of the time bucket. For example, a BG value with a timestamp of 11:37:23 will have a timestamp of 11:37:00 after resampling. In this way, BG values ​​between sensors at any given timestamp can be directly compared.

[0185] For model building purposes, the dataset can be divided into a training dataset and a test dataset. The data can be divided by subject, so that all sensor data from a single subject is placed in the training dataset or the test dataset. In one embodiment, 67 subjects (60.4%) can be included in the training dataset and 44 subjects (39.6%) can be included in the test dataset.

[0186] The training dataset can be used to train and cross-validate the model (to set model hyperparameters, etc.), while the testing dataset can be used to test the model once it is finalized and fixed.

[0187] Algorithm can be used to generate visualization, makes each visualization contain enough information to determine whether the time series subsequence of highlighting comprises PISA for individual (subjectively).Algorithm can check BG time series, and can identify that potential PISA begins and all potential PISAs subsequently end.In some cases, potential PISA begins and last potential PISA ends and can define time series subsequence.Algorithm can use this time series subsequence information to generate visualization, and this visualization highlights the sensor track considered and indicates that potential PISA begins and all potential PISAs end.In certain embodiments, the time series subsequence that begins at the starting point of the falling time window and ends at the rising end point of first rising time window can be PISA.

[0188] A manual review of 8002 visualizations generated using BG time series from all sensors for 111 subjects was used to annotate each time series with a PISA with a minimum BG value less than 85 mg / dL (e.g., sub-PISA or near sub-PISA). This review yielded 1623 sub-PISA or near sub-PISA annotations from 94,609.5 hours of sensor data. Of these 1623 annotations, approximately 1089 annotations were available in the training dataset (67 subjects) from 59,122 hours of sensor data. Analysis was performed on only these 1089 PISA annotations in the training dataset.

[0189] If daytime is defined as the 16-hour period from 7:00 am to 11:00 pm, and nighttime is defined as the 8-hour period from 11:00 pm to 7:00 am, then 613 of the 1,089 PISAs occurred during the daytime, while 476 began at night.

[0190] Furthermore, 591 of the 1,089 PISAs occurred with sensors worn on the abdomen, while 498 occurred with sensors worn on the arm. Of the 591 PISAs with sensors worn on the abdomen, 381 began during the day and 210 began at night; of the 498 PISAs with sensors worn on the arm, 232 began during the day and 266 began at night.

[0191] The distribution of PISAs appears to follow an exponential distribution, with the vast majority of PISAs being less than 60 minutes in length. The first three rows of Table 1 provide descriptive statistics for these distributions. The distribution of PISA lengths appears to differ slightly depending on when the PISA was administered.

[0192] Table 1

[0193]

[0194] These data seem to indicate that there are times of day when PISA is more likely to begin (e.g., between 9:30 PM and 6:00 AM). This is even more pronounced when considering where the sensor is worn (e.g., on the arm or abdomen). For example, PISA may be more likely to occur during the first 12 hours of a sensor's life. Many of these observations can be used to generate features (e.g., time of day, starting BG value, starting temperature, etc.) as input to a machine learning model using the presented distribution.

[0195] In one embodiment, the algorithm for identifying a PISA occurrence outputs a probability that a 2.5-minute interval corresponds to a PISA occurrence. In this embodiment, the output of the algorithm is a time series of probability values ​​(one probability value every 2.5 minutes), where the probability is the probability that the 2.5-minute interval is part of a PISA occurrence. In other embodiments, the time interval can be of different lengths (e.g., 30 seconds, 1 minute, 5 minutes), depending on the sensor sampling resolution.

[0196] In one embodiment, the algorithm takes a CGM time series and constructs a time series subsequence every 2.5 minutes with a starting timestamp equal to 31 minutes before the latest timestamp and an ending timestamp equal to the current timestamp (e.g., the latest available blood glucose value). In other embodiments, the starting timestamp may vary. The algorithm then calculates a rolling average over the original time series subsequence with a lag of approximately 1.5 minutes, thereby generating a 30-minute time series subsequence. This lag depends on the sensor sampling resolution and may be different in other embodiments. In one embodiment, this generated time series subsequence is then used to generate indicator (e.g., true / false) values ​​for a 25-minute time series subsequence that indicates whether the difference in BG value between each timestamp and the timestamp 5 minutes prior exceeds a predetermined threshold.

[0197] A time series subsequence is a candidate for evaluation if the set of timestamps that are "true" is such that (1) the indicator value at the most recent timestamp is "true" and the set of consecutive indicator values ​​that are "true" (including the indicator value at the most recent timestamp) spans at least 2.5 minutes, or (2) the indicator value at the most recent timestamp is "true" and the change in BG value is greater than 7.5 mg / dL (in this embodiment). In other embodiments, different pre-specified thresholds may be used. If the time series subsequence is not a candidate for evaluation, the 2.5 minute time interval is assigned a probability of 0 (e.g., a probability of 0 for PISA to occur). If the time series subsequence is a candidate for evaluation, the 2.5 minute time interval is assigned a probability value from the classifier used to classify the time series subsequence.

[0198] If the time series subsequence is the candidate sequence for assessment (for example, having reason to believe that it can represent PISA and start), then in one embodiment, use classifier to provide PISA probability of occurrence for this 2.5 minute time interval.For given time series subsequence, in one embodiment, use all time series signals (blood sugar, original [for example, without temperature correction] blood sugar, temperature) recorded by CGM sensor to generate feature groups, and these feature groups are used as the input of machine learning model. Outlined the feature that can generate for each time series subsequence, described each time series subsequence is the candidate sequence for further assessment.In other embodiments, any subset of described feature can be generated and used as the input of model.

[0199] feature

[0200] Start time

[0201] SL_Start_Time_Idx: Indicates the index of the sensor life interval that the PISA start time falls into, where, in one embodiment, the intervals are {0:(2,7.5), 1:(7.5,11), 2:(0,2)}.

[0202] SL_Start_Time_Prob: PISA start probability derived from the distribution of sensor lifetime start times.

[0203] ToD_Start_Time_Idx: Index indicating the time interval within a day that the PISA start time falls into, where, in one embodiment, the intervals are {0:(19,24), 1:(6,19), and 2:(0,6)}.

[0204] ToD_Start_Time_Prob: PISA start probability derived from the distribution of time-of-day start times.

[0205] blood sugar

[0206] BG_Start: BG value when the decline starts.

[0207] BG_End: The BG value at the end of the time series subsequence.

[0208] BG_Drop_Delta: The difference in BG value between the start of the drop and the end of the time series subsequence.

[0209] BG_Drop_LRSlope: The slope of the linear regression (without fixed intercept) fitted to the BG values ​​recorded between the start of the drop and the end of the time series subsequence.

[0210] BG_Drop_SD: standard deviation of the BG values ​​recorded between the start of the drop and the end of the time series subsequence.

[0211] BG_Prev5min_SD: standard deviation of the BG values ​​recorded within 5 minutes before the start of descent.

[0212] BG_Prev10min_SD: standard deviation of the BG values ​​recorded within 10 minutes before the start of the descent.

[0213] Raw blood sugar

[0214] BGRaw_Drop_Delta: The difference in raw BG value between the start of the drop and the end of the time series subsequence.

[0215] BGRaw_Drop_LRSlope: The slope of the linear regression (without fixed intercept) fitted to the raw BG values ​​recorded between the start of the drop and the end of the time series subsequence.

[0216] BGRaw_Drop_SD: standard deviation of the raw BG values ​​recorded between the start of the drop and the end of the time series subsequence.

[0217] BGRaw_Prev5min_SD: standard deviation of the raw BG values ​​recorded within 5 minutes before the start of the descent.

[0218] BGRaw_Prev10min_SD: standard deviation of the raw BG values ​​recorded within 10 minutes before the start of the descent.

[0219] temperature

[0220] Temp_Drop_Delta: The difference in temperature between the start of a drop and the end of a time series subsequence.

[0221] Temp_Prev5min_Delta (Temperature_Prev5min_Delta): The difference between the temperature value 5 minutes before the start of the descent and the temperature value at the start of the descent.

[0222] Temp_Prev10min_Delta (Temperature_Prev10min_Delta): The difference between the temperature 10 minutes before the start of the descent and the temperature at the start of the descent.

[0223] Temp_Drop_LRSlope: The slope of the linear regression (without fixed intercept) fitted to the temperature values ​​recorded between the start of the drop and the end of the time series subsequence.

[0224] Temp_Drop_SD: standard deviation of the temperature values ​​recorded between the start of the drop and the end of the time series subsequence.

[0225] Temp_Prev5min_SD (Temperature_first 5 minutes_SD): standard deviation of the temperature values ​​recorded within 5 minutes before the start of the descent.

[0226] Temp_Prev10min_SD: standard deviation of the temperature values ​​recorded within 10 minutes before the start of the descent.

[0227] Temp_Prev5min_DropEnd_Delta: The difference in temperature between 10 minutes before the start of the drop and the end of the time series subsequence.

[0228] Blood glucose compared to raw blood glucose

[0229] BGComp_Drop: The value of the norm_bg_bgraw_delta function (see below) calculated using the BG values ​​recorded between the start of the drop and the end of the time series subsequence.

[0230] BGComp_Prev5min: value of the norm_bg_bgraw_delta function (see below) calculated using the BG values ​​recorded 5 minutes before the start of the descent.

[0231] BGComp_Prev10min: value of the norm_bg_bgraw_delta function (see below) calculated using the BG values ​​recorded 10 minutes before the start of the descent.

[0232] In one embodiment, sensor data from 67 subjects in the training dataset can be used to generate a training input feature dataset with 53,025 rows of data. This training input feature dataset is used to train a random forest model and an AdaBoost learning model using the scikit-learn Python package. In alternative embodiments, this training input feature dataset (or a training input feature dataset consisting of a subset of the described features) can be used to train other machine learning algorithms including, but not limited to, linear regression, neural networks, or support vector machines.

[0233] result

[0234] An embodiment may include two different performance evaluations.The first performance evaluation is an evaluation of a classifier model that classifies whether a 2.5 minute time interval corresponds to an occurrence of PISA.

[0235] Thus, in one embodiment: a positive event is that the 2.5 minute time interval overlaps in any way with the falling time window of PISA, and a negative event is that the 2.5 minute time interval does not overlap in any way with the falling time window of PISA.

[0236] In other embodiments, the time intervals may be of different lengths. In one embodiment, machine learning classifier models may be trained on a training input feature dataset and grid search (with 5-fold cross validation) may be performed to identify the optimal hyperparameter settings for each model (Table 2 lists the hyperparameters and, in one embodiment, the possible values).

[0237] Table 2

[0238]

[0239] In one embodiment, the scoring criterion used is the F1 score, which can address both the precision and recall performance of a binary classifier model. In one embodiment, the identified random forest model has n_estimators = 150, max_depth = 15, max_features = sqrt, and class_weight = {0:1, 1:5}, while the identified AdaBoost model has n_estimators = 450 and learning_rate = 0.5. In other embodiments, the training input feature dataset can be used in conjunction with cross-validation to train the model and identify improved hyperparameter settings, and the area under the ROC curve and the precision-recall curve can be used to evaluate model performance using a test input feature dataset.

[0240] A second performance evaluation can include an evaluation of the entire single-sensor look-ahead algorithm to classify whether the falling time window was correctly classified as a PISA occurrence. Thus, in one embodiment, a positive event is that the falling time window is a PISA falling time window, and a negative event is that the falling time window is not a PISA falling time window.

[0241] This second evaluation considers the entire process and includes evaluating the performance of the initial screening process (wherein, in one embodiment, each 2.5 minute time interval is assigned a probability of 0 for a PISA occurrence, or is sent to a classifier to determine the probability of a PISA occurrence). During the BG time series process, each falling time window is a potential PISA occurrence. Therefore, the set of falling time windows is a candidate series set that must be classified (e.g., whether the falling time window is a PISA start). There may be falling time windows that do not have a 2.5 minute time interval for a time series subsequence that needs further evaluation, and all 2.5 minute time intervals may overlap with a portion of the falling time window (e.g., at least one timestamp).

[0242] For each fall time window, in one embodiment, a set of 2.5 minute time intervals that overlap the fall time window in any way may be used to determine the probability of PISA occurring corresponding to the fall time window by taking the maximum probability of PISA occurring over all intervals.

[0243] The algorithm for identifying the end of PISA works retrospectively to identify whether the end of PISA has been reached. The algorithm looks at the BG measurements from the CGM sensor time series and attempts to identify the most recent potential PISA start and the subsequent potential PISA end. Once a time series subsequence is identified, the algorithm generates multiple features that can then be used as input to a machine learning model, which assigns a probability to the time series subsequence, representing the probability that this particular time series is PISA. If the probability is above a certain threshold, τ_PISA, the time series subsequence is classified as PISA, and the end of PISA is identified.

[0244] To identify potential PISA starts and ends, a rough estimate of two different time windows can be obtained: (1) a falling time window: the set of consecutive timestamps t such that (BG_t-BG_(t-lag))<-τ_D, where in one embodiment, τ_D=10 mg / dL is the falling threshold; and (2) a rising time window: the set of consecutive timestamps t such that (BG_t-BG_(t-lag))>τ_R, where in one embodiment, τ_R=6 mg / dL is the rising threshold. The variable "lag" represents the number of 30-second time intervals. For example, lag=10 corresponds to a look back of 5 minutes. It is important to note that both time windows have a start (falling start and rising start) and an end (falling end and rising end).

[0245] The start and end of the fall time window and the rise time window may need to be refined. In one embodiment, in each case, this refinement is achieved by first calculating a rolling average (moving average) of the BG values ​​using the most recent 90 seconds of data, and then calculating the first difference of the rolling averages. In other embodiments, a different amount of recent data may be used to calculate the rolling average.

[0246] The refined start of descent can be defined as the first timestamp at which the first difference is less than the descent threshold δ_D, or if no such timestamp exists, the first timestamp has a negative first difference. Otherwise, the default refined start of descent can be the first timestamp of the descent time window.

[0247] The refined descent end may be defined as the last possible timestamp at which the first difference is greater than δ_D. Otherwise, the default refined descent end may be the last timestamp of the descent time window.

[0248] Similarly, the refined rise start can be defined as the first timestamp at which the first difference is greater than the rising threshold δ_R, or if no such timestamp exists, the first timestamp with a positive first difference. Otherwise, the default refined rise start can be the first timestamp of the rise time window.

[0249] The refined rise end may be defined as the last possible timestamp at which the first difference is less than δ_R. Otherwise, the default refined rise end may be the last timestamp of the rise time window.

[0250] One of the defining characteristics of PISA may include a "sudden" drop of at least 20 mg / dL. Thus, in one embodiment, any falling time window in which the change in BG value between the start of the drop and the end of the drop is at least 20 mg / dL is a potential PISA onset.

[0251] The set of rise time windows that could potentially match a given fall time window are those where (in one embodiment) the rise ends at least 15 minutes and no more than 180 minutes after the fall begins.

[0252] Given a fall time window and a potential matching rise time window (e.g., a PISA candidate), the minimum BG value between the start of the fall and the end of the rise can be calculated. In one embodiment, only PISA candidates with a minimum BG value less than 85 mg / dL are retained.

[0253] For a given time series subsequence, in one embodiment, all time series signals recorded by the CGM sensor (glucose, raw [e.g., not temperature-corrected] glucose, temperature) can be used to generate feature sets and use these feature sets as input to the machine learning model. The following subsections summarize the features generated for each time series subsequence that is a candidate sequence for further evaluation. In other embodiments, any subset of the described features can be generated and used as input to the model.

[0254] Rise_Match_Idx: Index of the rise time window (based on all rise time windows that matched the fall time window).

[0255] Start time

[0256] SL_Start_Time_Idx: Indicates the index of the sensor life interval that the PISA start time falls into, where, in one embodiment, the intervals are {0:(2,7.5), 1:(7.5,11), 2:(0,2)}.

[0257] SL_Start_Time_Prob: PISA start probability derived from the distribution of sensor lifetime start times.

[0258] ToD_Start_Time_Idx: Index indicating the time interval within a day that the PISA start time falls into, where, in one embodiment, the intervals are {0:(19,24), 1:(6,19), and 2:(0,6)}.

[0259] ToD_Start_Time_Prob: PISA start probability derived from the distribution of time-of-day start times.

[0260] Duration

[0261] Duration_Drop_mins: Duration of the drop time window in minutes.

[0262] Duration_Drop_Prob: The probability (according to time of day) that a drop time window has this duration, derived from the distribution of drop time window durations.

[0263] Duration_Rise_mins: Duration of the rise time window in minutes.

[0264] Duration_Rise_Prob: The probability (according to time of day) that a rise time window has this duration, derived from the distribution of rise time window durations.

[0265] Duration_PISA_mins: Duration of PISA in minutes.

[0266] Duration_PISA_Prob: The probability (according to the time of day) that a PISA has this duration, derived from the distribution of PISA durations.

[0267] blood sugar

[0268] BG_Start: BG value when the decline starts.

[0269] BG_Start_Prob: The probability of the starting BG value according to the time of day.

[0270] BG_Minimum: The minimum BG value between the start of the decline and the end of the rise.

[0271] BG_Drop_Delta: The difference in BG value between the start of the drop and the end of the drop.

[0272] BG_Rise_Delta: The difference in BG value between the start and end of a rise.

[0273] BG_PISA_Delta (BG_PISA_Difference): The difference in BG value at the beginning of the decline and the end of the rise.

[0274] BG_Drop_LRSlope: The slope of the linear regression (without fixed intercept) fitted to the BG values ​​recorded between the start of the drop and the end of the drop.

[0275] BG_Rise_LRSlope: The slope of the linear regression (without fixed intercept) fitted to the BG values ​​recorded between the start and end of the rise.

[0276] BG_Drop_SD: standard deviation of the BG values ​​recorded between the start of the drop and the end of the drop.

[0277] BG_Rise_SD: Standard deviation of the BG values ​​recorded between the start of the rise and the end of the rise.

[0278] BG_PISA_SD: Standard deviation of the BG values ​​recorded between the start of the decline and the end of the rise.

[0279] BG_Prev5min_SD: standard deviation of the BG values ​​recorded within 5 minutes before the start of descent.

[0280] BG_Prev10min_SD: standard deviation of the BG values ​​recorded within 10 minutes before the start of the descent.

[0281] BG_ExpRatio_2min: Value of the expected_ratio_BG function (see below) calculated using the BG values ​​recorded for 2 minutes before the start of the descent.

[0282] BG_ExpRatio_5min: Value of the expected_ratio_BG function (see below) calculated using the BG values ​​recorded for 5 minutes before the start of the decline.

[0283] BG_ExpRatio_10min: Value of the expected_ratio_BG function (see below) calculated using the BG values ​​recorded for 10 minutes before the start of the decline.

[0284] Raw blood sugar

[0285] BGRaw_Drop_Delta: The difference in raw BG value between the start of the drop and the end of the drop.

[0286] BGRaw_Rise_Delta: The difference in raw BG value at the start of the rise and at the end of the rise.

[0287] BGRaw_PISA_Delta: The difference in raw BG values ​​at the start of the descent and the end of the rise.

[0288] BGRaw_Drop_LRSlope: The slope of the linear regression (without fixed intercept) fitted to the raw BG values ​​recorded between the start of the drop and the end of the drop.

[0289] BGRaw_Rise_LRSlope: The slope of the linear regression (without fixed intercept) fitted to the raw BG values ​​recorded between the start and end of the rise.

[0290] BGRaw_Drop_SD: standard deviation of the raw BG values ​​recorded between the start of the drop and the end of the drop.

[0291] BGRaw_Rise_SD: standard deviation of the raw BG values ​​recorded between the start of the rise and the end of the rise.

[0292] BG_PISA_SD: standard deviation of the raw BG values ​​recorded between the start of the decline and the end of the rise.

[0293] BGRaw_Prev5min_SD: standard deviation of the raw BG values ​​recorded within 5 minutes before the start of the descent.

[0294] BGRaw_Prev10min_SD: standard deviation of the raw BG values ​​recorded within 10 minutes before the start of the descent.

[0295] temperature

[0296] Temp_Drop_Delta: The difference in temperature between the start and end of a drop.

[0297] Temp_Rise_Delta: The difference in temperature between the start and end of a rise.

[0298] Temp_PISA_Delta (Temperature_PISA_Difference): The difference in temperature between the start of the descent and the end of the ascent.

[0299] Temp_Prev5min_Delta (Temperature_Prev5min_Delta): The difference between the temperature value 5 minutes before the start of the descent and the temperature value at the start of the descent.

[0300] Temp_Prev10min_Delta (Temperature_Prev10min_Delta): The difference between the temperature 10 minutes before the start of the descent and the temperature at the start of the descent.

[0301] Temp_Drop_LRSlope: The slope of the linear regression (without fixed intercept) fitted to the temperature values ​​recorded between the start and end of the drop.

[0302] Temp_Rise_LRSlope: The slope of the linear regression (without fixed intercept) fitted to the temperature values ​​recorded between the start and end of the rise.

[0303] Temp_PISA_LRSlope: The slope of the linear regression (without fixed intercept) fitted to the temperature values ​​recorded between the start of the decline and the end of the rise.

[0304] Temp_Drop_SD: standard deviation of the temperature values ​​recorded between the start of the drop and the end of the drop.

[0305] Temp_Rise_SD: Standard deviation of the temperature values ​​recorded between the start and end of the rise.

[0306] Temp_PISA_SD: Standard deviation of the temperature values ​​recorded between the start of the descent and the end of the ascent.

[0307] Temp_Prev5min_SD (Temperature_first 5 minutes_SD): standard deviation of the temperature values ​​recorded within 5 minutes before the start of the descent.

[0308] Temp_Prev10min_SD: standard deviation of the temperature values ​​recorded within 10 minutes before the start of the descent.

[0309] Temp_DropEnd_MinBGIdx_Delta: The difference in temperature value at the time stamp of the end of the drop from the minimum BG value during PISA.

[0310] Temp_Prev5min_DropEnd_Delta (Temperature_Prev5min_DropEnd_Delta): The difference in temperature 5 minutes before the start of the drop and the end of the drop.

[0311] Temp_Prev5min_RiseStart_Delta: The difference between the temperature 5 minutes before the start of the descent and the temperature at the start of the rise.

[0312] Temp_DropEnd_RiseEnd_Delta (Temperature_DropEnd_RiseEnd_Delta): The difference in temperature between the end of the drop and the end of the rise.

[0313] Blood glucose compared to raw blood glucose

[0314] BGComp_Drop: The value of the norm_bg_bgraw_delta function (see below) calculated using the BG values ​​recorded between the start of the drop and the end of the drop.

[0315] BGComp_Rise: The value of the norm_bg_bgraw_delta function (see below) calculated using the BG values ​​recorded between the start of rise and the end of rise.

[0316] BGComp_PISA: The value of the norm_bg_bgraw_delta function (see below) calculated using the BG values ​​recorded between the start of the descent and the end of the ascent.

[0317] BGComp_Prev5min: value of the norm_bg_bgraw_delta function (see below) calculated using the BG values ​​recorded 5 minutes before the start of the descent.

[0318] BGComp_Prev10min: value of the norm_bg_bgraw_delta function (see below) calculated using the BG values ​​recorded 10 minutes before the start of the descent.

[0319] In one embodiment, sensor data from 67 subjects in a training dataset can be used to generate a training input feature dataset having many rows of data (e.g., 18,948 rows of data). The training input feature dataset can be used to train a random forest model and an AdaBoost learning model using the scikit-learn Python package. In alternative embodiments, the training input feature dataset (or a training input feature dataset including a subset of the described features) can be used to train other machine learning algorithms including, but not limited to, linear regression, neural networks, or support vector machines.

[0320] The performance evaluation of the retrospective single-sensor algorithm evaluates a classifier model that classifies whether a time series subsequence defined by a falling time window and a matching rising time window corresponds to PISA. Thus, in one embodiment, a positive event is that the time series subsequence defined by the falling time window and the matching rising time window is PISA, and a negative event is that the time series subsequence defined by the falling time window and the matching rising time window is not PISA.

[0321] In one embodiment, machine learning classifier models can be trained on a training input feature dataset and grid search (accompanied by 5-fold cross validation) to identify the best hyperparameter settings for each model (Table 2 lists the hyperparameters and, in one embodiment, the possible values). In one embodiment, the scoring criteria can include an F1 score, which addresses both precision and recall performance of a binary classifier model. In one embodiment, the identified random forest model has n_estimators=150, max_depth=15, max_features=sqrt, and class_weight={0:1,1:15}, while the identified AdaBoost model has n_estimators=100 and learning_rate=1. In other embodiments, the training input feature dataset can be used in conjunction with cross validation to train the model and identify improved hyperparameter settings, and the area under the ROC curve and the precision-recall curve can be used to evaluate model performance on a test input feature dataset.

[0322] Embodiments may use signals typically available from CGM sensors, such as raw glucose estimates, filtered glucose, temperature, and corrections for time of day and / or sensor age. Because more than one machine learning technique may be used to retrieve this data, and because other signals / considerations may influence the decision to detect and / or not flag a PISA event (e.g., probability of impending hypoglycemia), embodiments may provide the following scheme for utilizing external data and considerations.

[0323] A Bayesian combination of the probabilistic outputs from multiple models (when this information is available or relevant) can be used. In one embodiment, a Bayesian combination is constructed from a probabilistic time series from a random forest model and a probabilistic time series from an AdaBoost model. In alternative embodiments, the outputs of models that utilize other time series signals can be combined, such as data from anticipated future sensors (such as a pressure sensor added to a CGM), or considerations about the risk of impending hypoglycemia.

[0324] To retrieve the different signals, the methods, systems, and computer-readable media: (1) convert / normalize the output of each model into a probabilistic time series over a common time interval (e.g., 2.5 minutes or 5 minutes), where the probabilistic time series tracks the probability of an event of interest (in this case, PISA) with varying degrees of accuracy based on the signal's correlation with PISA. For example, the output of a random forest model or an AdaBoost model is strongly correlated with PISA, while the output from a pressure sensor may have a weaker relationship, and the output from a model predicting hypoglycemia may be only an additional consideration intended to focus the embodiment on detecting PISA events that have a higher chance of triggering a false hypoglycemia alarm; and (2) combine the time series using the described iterative Bayesian updating process.

[0325] Applying a predefined threshold (e.g., 0.75 or 0.9) to the final time series of posterior probabilities enables detection of events with probabilities exceeding the predefined threshold. Adjustment of the predefined threshold results can provide a balance between true detections and false positive calls.

[0326] In alternative embodiments, other signals or external information can be used for the detection method. For example, a separate model that tracks the probability of hypoglycemia can be added to make the method more sensitive to PISA, which may trigger false hypoglycemia alarms. Such a model can be obtained from other devices (e.g., insulin pumps) that communicate with the blood glucose sensor in a closed-loop control application. Therefore, an iterative Bayesian update process is proposed to combine different signals and considerations in a single output, as long as these signals and considerations are normalized into a probabilistic time series compatible with the event of interest. The iterative Bayesian update process works as follows for each time interval.

[0327] Initialize the process using the output of model 1:

[0328] P 1 =P1(Model 1)

[0329] Update this estimate using the output from Model 2:

[0330]

[0331] This estimate can be further updated using the output of another model (Model 3):

[0332]

[0333] This process can continue as long as there are other models with information to incorporate, and once the information from all models has been incorporated, the final posterior probability can be achieved.

[0334] It should be understood that the embodiments disclosed herein can be modified to meet a specific set of design criteria. For example, any component discussed herein can be of any suitable number or type to meet a specific purpose. Therefore, while certain exemplary embodiments of the systems and methods of making and using the systems disclosed herein have been discussed and illustrated, it should be clearly understood that the present disclosure is not limited thereto, but may be embodied and practiced in other ways within the scope of the appended claims.

[0335] It should be understood that some components, features, and / or configurations may be described in conjunction with only one particular embodiment, but these same components, features, and / or configurations may be applied or used with many other embodiments and should be considered applicable to the other embodiments unless otherwise stated or unless such components, features, and / or configurations are technically impossible to use with the other embodiments. Therefore, the components, features, and / or configurations of the various embodiments may be combined together in any manner, and this statement expressly contemplates and discloses such combinations.

[0336] Those skilled in the art will appreciate that the present disclosure may be implemented in other specific forms without departing from its spirit or essential characteristics. Therefore, the presently disclosed embodiments are considered to be illustrative rather than restrictive in all respects. The scope of the present disclosure is indicated by the appended claims rather than the foregoing description, and all variations and equivalents falling within its meaning and scope are intended to be included therein. In addition, the disclosure of a range of values ​​is the disclosure of each numerical value within the range, including endpoints.

Claims

1. A system for automatically detecting sensor compression in continuous glucose monitoring, the system comprising: at least one sensor; and at least one processor in communication with the at least one sensor, the at least one processor executing at least two machine learning models, wherein the at least one processor is programmed or configured to: receiving measurement data from the at least one sensor, the measurement data comprising at least a time series of blood glucose (BG) measurements measured by the at least one sensor; determining, using a first machine learning model, that the BG measurements for the at least one time series are a candidate sequence for including a compression artifact; and A second machine learning model is used to generate a signal output indicating that the BG measurements for the at least one time series were obtained while the at least one sensor was compressed.

2. The system of claim 1, wherein: The at least one time series of BG measurement results includes a plurality of time stamps, each time stamp being associated with a BG measurement result.

3. The system of claim 1, wherein: When configured to determine that the BG measurement result of the at least one time sequence is a candidate sequence, the at least one processor is programmed or configured to cause the processor to: Determining the BG measurement results for the at least one time series includes a change in the BG measurement results across a plurality of time stamps, wherein the change in the BG measurement results exceeds a threshold.

4. The system of claim 1, wherein: When configured to determine that the BG measurement result of the at least one time sequence is a candidate sequence, the at least one processor is programmed or configured to cause the processor to: Determining, using the first machine learning model, that the BG measurement results of the at least one time series include a time series subsequence, the time series subsequence having a falling time window and a rising time window associated with the falling time window, wherein the time series subsequence includes a timestamp sequence corresponding to at least a portion of the falling time window and at least a portion of the rising time window.

5. The system of claim 1, wherein: The at least one processor is programmed or configured to cause the processor to: identifying one or more features of the BG measurements for the at least one time series; and The one or more features are input into the second machine learning model.

6. The system of claim 1, wherein: When configured to generate a signal output, the at least one processor is programmed or configured to cause the processor to: The output indicates a real-time prediction that the at least one sensor is stressed when obtaining the BG measurement.

7. The system of claim 1 , further comprising: an insulin infusion system in communication with the at least one processor, wherein the at least one processor is programmed or configured to cause the processor to: transmitting the signal output to the insulin infusion system to indicate that the at least one sensor is compressed, wherein the signal output causes the insulin infusion system to perform at least one or more of the following: Initiate insulin infusion, continue insulin infusion, disable alarm, and / or any combination thereof.

8. The system of claim 2, wherein: The multiple timestamps are separated by one or more of: 30 second intervals, 1 minute intervals, 2.5 minute intervals, and / or 5 minute intervals.

9. The system of claim 1, wherein: The at least one processor is programmed or configured to cause the processor to: Execute the first machine learning model and the second machine learning model simultaneously.

10. The system of claim 1, wherein: The at least one processor is programmed or configured to cause the processor to: The rise time window associated with the fall time window is identified using the first machine learning model as occurring within a range of 15 minutes to 180 minutes later than the fall time window in the at least one time series.

11. The system of claim 1, wherein: When configured to determine that the BG measurement result of the at least one time sequence is a candidate sequence, the at least one processor is programmed or configured to cause the processor to: determining a fall time window within the at least one time series based on a difference between the first BG measurement and the second BG measurement exceeding a fall time threshold, wherein the fall time window begins at a first timestamp associated with the first BG measurement and ends at a second timestamp associated with the second BG measurement; and A rise time window within the at least one time sequence is determined based on a difference between a third BG measurement result and a fourth BG measurement result exceeding a rise time threshold, wherein the rise time window starts at a third timestamp associated with the third BG measurement result and ends at a fourth timestamp associated with the fourth BG measurement result.

12. The system of claim 11, wherein: The fall time threshold is 10 mg / dL, and the rise time threshold is 6 mg / dL.

13. A system for automatically detecting sensor compression in continuous blood glucose monitoring, the system comprising: at least one sensor; and at least one processor in communication with the at least one sensor, the at least one processor executing program code of at least one machine learning model, wherein the at least one processor is programmed or configured to: receiving measurement data from the at least one sensor, the measurement data comprising at least a time series of blood glucose (BG) measurements measured by the at least one sensor; determining that the at least one time sequence of BG measurements is a candidate sequence that includes a BG measurement indicating an occurrence of sensor compression; inputting a time series subsequence of the at least one time series of BG measurements into the at least one machine learning model; as well as Using the at least one machine learning model, a signal output is generated, the signal output indicating that at least one BG measurement was obtained while the at least one sensor was compressed.

14. The system of claim 13, wherein: The at least one time series of BG measurement results includes a plurality of time stamps, each time stamp being associated with a BG measurement result.

15. The system of claim 13, wherein: When configured to determine that the BG measurement result of the at least one time sequence is a candidate sequence, the at least one processor is programmed or configured to cause the processor to: Determining the BG measurement result of the at least one time series includes a falling time window, wherein the time series subsequence includes a plurality of time stamps within the falling time window.

16. The system of claim 13, wherein: When configured to generate the signal output, the at least one processor is programmed or configured to cause the processor to: The method further comprises predicting in real time by outputting an indication that the at least one sensor is stressed when obtaining a BG measurement, wherein the prediction is based on a probability value representing a probability that the time series subsequence includes a BG measurement obtained when the at least one sensor is stressed.

17. The system of claim 16, wherein: The at least one processor is programmed or configured to cause the processor to: determining a maximum probability value among a plurality of probability values ​​associated with a plurality of time stamps included in a falling time window in the time series subsequence; and A probability that the time series subsequence includes BG measurements obtained when the at least one sensor is compressed is determined based on the maximum probability value.

18. The system of claim 13, further comprising: an insulin infusion system in communication with the at least one processor, wherein the at least one processor is programmed or configured to cause the processor to: transmitting the signal output to the insulin infusion system to indicate that the at least one sensor is compressed, wherein the signal output causes the insulin infusion system to perform at least one or more of the following: Initiate insulin infusion, continue insulin infusion, disable alarm, and / or any combination thereof.

19. The system of claim 13, wherein: The at least one time series of BG measurement results covers 30 minutes of measurement data measured by the at least one sensor.

20. The system of claim 13, wherein: When configured to input the time series subsequence of the at least one time series of BG measurements into the at least one machine learning model, the at least one processor is programmed or configured to cause the processor to: identifying one or more features of the time series subsequence of the at least one time series of BG measurements; and The one or more features are input into the at least one machine learning model.

21. The system of claim 20, wherein: The one or more features include at least one or more of the following: a raw BG measurement result, a starting BG value at a first timestamp of the decline time window, an ending BG value at a last timestamp of the decline time window, a difference between the starting BG value and the ending BG value, a slope of the BG values ​​of the decline time window, a standard deviation of the BG values ​​of the decline time window, a time of day, a temperature value, a comparison value between a BG measurement result and a raw BG measurement result, and / or any combination thereof.

22. The system of claim 13, wherein: When configured to determine that the BG measurement result of the at least one time sequence is a candidate sequence, the at least one processor is programmed or configured to cause the processor to: determining a rolling average of the BG measurements for the at least one time series, the rolling average comprising a smoothed BG value associated with each BG measurement and timestamp pair; as well as An indicator value for the smoothed BG value at each timestamp t is calculated, where the indicator value is equal to a Boolean true value, where: BG t -BG t-滞后 >BG threshold Where t is the current timestamp for which the indicator value is determined, BG t is the smoothed BG value at timestamp t, BG t-滞后 is the smoothed BG value at the previous timestamp, lag is a measure of time such that t-lag represents the previous timestamp, and BGthreshold represents the BG threshold value; and A time series subsequence in the at least one time series of BG measurements is identified, wherein the time series subsequence has a set of indicator values ​​that starts at a first timestamp and ends at a second timestamp.

23. The system of claim 22, wherein: Hysteresis equals 5 minutes, and BG threshold equals 10.0 mg / dL.

24. The system of claim 22, wherein: The time series subsequence covers BG measurements with a duration of at least 2.5 minutes.

25. The system of claim 22, wherein: A difference between a first smoothed BG value associated with the first time stamp and a second smoothed BG value associated with the second time stamp is greater than 7.5 mg / dL.

26. A computer-implemented method for generating at least one machine learning model to accurately detect sensor compression in continuous glucose monitoring, the method comprising: receiving as input to a processor at least one training data set, the at least one training data set comprising a plurality of time series of blood glucose (BG) measurements; determining a plurality of time series subsequences based on the training data set, wherein at least one time series subsequence includes at least one BG measurement value that is less than a compression estimation threshold; extracting one or more features from each of the plurality of time series subsequences; inputting the one or more features from the plurality of time series subsequences into at least one machine learning model for training; and Sensor compression is detected based on providing at least a time series of BG measurements as input to the at least one machine learning model.

27. The computer-implemented method of claim 26, wherein: The compression estimation threshold is equal to 85 mg / dL.

28. The computer-implemented method of claim 26, comprising: Each of the multiple time series subsequences is marked with the following indication: The time series subsequence includes compression artifacts, or the time series subsequence does not include compression artifacts.

29. The computer-implemented method of claim 26, comprising: transmitting a signal output to an insulin infusion system indicating detection of sensor compression, wherein the signal output causes the insulin infusion system to perform one or more of the following: Initiate insulin infusion, continue insulin infusion, disable alarm, and / or any combination thereof.