Method for determining blood pressure of wearable device user, methods of training and retraining neural network for determining blood pressure
A neural network-based method for wearable devices reconstructs pulse waves and accounts for user-specific variations to provide accurate, continuous blood pressure monitoring without calibration, addressing the limitations of existing wearable technologies.
Patent Information
- Authority / Receiving Office
- RU · RU
- Patent Type
- Patents
- Current Assignee / Owner
- SAMSUNG ELECTRONICS CO LTD
- Filing Date
- 2025-11-26
- Publication Date
- 2026-07-09
AI Technical Summary
Existing wearable devices for blood pressure monitoring require periodic calibration and additional devices for accurate blood pressure measurements, and they struggle with varying PPG signal shapes among individuals, leading to inconsistent accuracy.
A neural network is trained to predict blood pressure using PPG signal features, reconstructing pulse waves and incorporating user-specific statistical distributions to provide continuous, accurate blood pressure readings without additional calibration.
Enables continuous, non-invasive blood pressure monitoring with high precision and user customization, eliminating the need for periodic calibration and additional devices.
Smart Images

Figure 00000022 
Figure 00000023 
Figure 00000024
Abstract
Description
[0001] Technical field
[0002] The present invention relates to the field of medicine and medical technology and can be used to determine the blood pressure indicator based on the parameters of the photoplethysmographic signal (PPG signal).
[0003] Prior Art
[0004] According to statistics, approximately 1.28 billion adults worldwide suffer from high blood pressure, and only 21% of them have it under control. Delayed diagnosis and treatment of blood pressure abnormalities increases the risk of developing cardiovascular disease, the leading cause of death worldwide.
[0005] Primary cardiovascular monitoring systems with photoplethysmography (PPG) are convenient, non-invasive, safe, and well-established technologies. However, there are currently no solutions capable of providing stable, regular blood pressure (BP) measurements without additional calibration of the wearable device and without the use of additional devices. Additional calibration involves periodically measuring the user's blood pressure using a tonometer (using the Korotkoff method) or an electronic tonometer and storing the measured pressure in the wearable device's memory.
[0006] Modern wearable devices (such as the Samsung Electronics Galaxy Watch) can provide relatively convenient and easy-to-use methods for continuously monitoring blood pressure, storing statistics, generating recommendations, and so on. However, for stable operation, such devices require additional systematic calibration, as mentioned above, or the use of additional devices, such as a smart ring. However, the accuracy of blood pressure determination still falls short of the desired level. Furthermore, it should be noted that the PPG signal shape may vary among different users, even with identical physiological parameters and blood pressure values.
[0007] The main problem with modern wearable devices is the difficulty of organizing continuous monitoring of blood pressure in any person in real time without periodic calibration and without the use of additional devices.
[0008] The main requirements for devices that determine blood pressure (BP) are currently as follows:
[0009] - Easy to use and wearable technology,
[0010] - high precision and good reliability,
[0011] - no need for periodic calibration,
[0012] - the ability to customize for each user, since the same PPG signal shape can correspond to different pressure values in different people, and different PPG signal shapes taken from two different people can correspond to the same pressure value in each of these people.
[0013] A non-invasive method for measuring blood pressure is known from prior art (document US 11357413 B2, published October 10, 2019). In this prior art solution, an electronic ECG circuit is generated using two electrodes, with the first electrode touching the user's temple and the second electrode touching the user's finger. Blood pressure is predicted using regression analysis based on the pulse wave transit time (PWTT) between the sensors. Disadvantages of this prior art device include a bulky design, inconvenient use, and the need for periodic calibration.
[0014] A neural network is known from the prior art (Kaan Sel, Amirmohammad Mohammadi, Roderic I. Pettigrew & Roozbeh Jafari "Physics-informed neural networks for modeling physiological time series for cuffless blood pressure estimation" Digital Medicine volume 6, Article number: 110, June 9, 2023) that estimates blood pressure taking into account the PPG signal. To train the neural network, namely to take into account the relationship between the PPG signal shape and the blood pressure value, specific features of the PPG signal that have the greatest influence on the blood pressure value were used, namely the value of the systolic peak amplitude (pulse wave peak), the value of the systolic phase duration of the cardiac cycle, that is, the relative time difference between the forward (i.e. systolic) wave and the reflected wave, the value of the duration of one heartbeat.This well-known approach eliminates the need for the traditional Korotkov method for calibration, while enabling continuous and non-invasive blood pressure monitoring. A drawback of this known solution is the use of only three specific features, which results in low accuracy due to the vast diversity of signal waveform and blood pressure values among individuals.
[0015] Therefore, a compact wearable device with the function of determining blood pressure in real time without the need for systematic calibration, that is, without periodically entering pressure values taken by a tonometer into the memory of the wearable device, and without the need for additional devices that take into account the shape of the PPG signal of each new user.
[0016] Essence of the invention
[0017] A method for training a neural network to determine the value of a blood pressure indicator is proposed, the method contains the following steps:
[0018] a) feed the following training data into the neural network being trained:
[0019] - the subject's pulse wave, characterized by a discretized set of PPG signal values for one heartbeat,
[0020] - the value of the blood pressure indicator corresponding to the subject's pulse wave;
[0021] initialize the parameters of the discretized set of PPG signal values for one heartbeat, obtaining the extracted features characterizing the subject's pulse wave;
[0022] b) predict the parameters for the anacrotic component of the subject's pulse wave and the parameters for the dicrotic component of the subject's pulse wave based on the extracted features, wherein the parameters are for each of the anacrotic and dicrotic components of the subject's pulse wave:
[0023] - the time when the peak value of the component was reached;
[0024] - half-width of the peak component,
[0025] - the amplitude of the peak value of the component;
[0026] c) based on the predicted parameters, the subject’s pulse wave is reconstructed,
[0027] calculate a loss function for predicting the pulse wave based on the predicted pulse wave of the subject and the pulse wave of the subject supplied as training data, and perform backpropagation of the error;
[0028] In parallel with steps (b)-(c), a step is carried out in which:
[0029] g) predict the blood pressure value based on the extracted features,
[0030] Calculate a loss function for predicting the blood pressure value based on the predicted blood pressure value and the blood pressure value supplied as training data, and perform backpropagation of the error;
[0031] steps (a) to (d) are carried out until the value of each of the loss function for predicting the pulse wave of the subject and the loss function for predicting the blood pressure value is less than or equal to a predetermined threshold value or becomes zero.
[0032] In one embodiment, the following steps are performed to restore the pulse wave:
[0033] - based on the predicted parameters, the anacrotic component of the pulse wave and the dicrotic component of the pulse wave are restored,
[0034] - the reconstructed anacrotic component of the pulse wave and the dicrotic component of the pulse wave are added point by point, obtaining a reconstructed pulse wave characterized by a set of PPG signal values for one heartbeat.
[0035] The mentioned loss function for pulse wave prediction is as follows:
[0036]
[0037] PPG_signal - a set of PPG signal values for one heartbeat from the training data,
[0038] x - the value of the time component,
[0039] μ1- the time when the peak value for the anacrotic component was reached,
[0040] μ2- the time when the peak value for the dicrotic component was reached,
[0041] σ1- half-width of the peak of the anacrotic component,
[0042] σ2- half-width of the peak of the dicrotic component,
[0043] A1- amplitude of the peak value of the anacrotic component,
[0044] A2- amplitude of the peak value of the dicrotic component.
[0045] In one embodiment, the blood pressure value is a systolic blood pressure value.
[0046] In one embodiment, the blood pressure value is a diastolic blood pressure value.
[0047] A method for further training of a neural network trained by the proposed method is also proposed, containing the following stages:
[0048] a) feed the following training data into the trained neural network:
[0049] the subject's pulse wave, characterized by a discretized set of PPG signal values for one heartbeat,
[0050] The blood pressure value corresponding to the subject's pulse wave,
[0051] a random set of other pulse waves of the same subject, each pulse wave of which is characterized by a discretized set of PPG signal values for one heartbeat,
[0052] The average value of the blood pressure indicator corresponding to a random set of other pulse waves of the same subject;
[0053] b) initialize the parameters of the subject's pulse wave and a random set of other pulse waves of the same subject, obtaining
[0054] - extracted features characterizing the subject's pulse wave,
[0055] - extracted features characterizing each pulse wave from a random set;
[0056] c) predict the parameters for the anacrotic component of the pulse wave and the parameters for the dicrotic component of the pulse wave based on the extracted features characterizing each pulse wave from the random set;
[0057] d) calculate statistics for each of the predicted parameters;
[0058] d) construct discretized distribution functions based on the calculated statistics;
[0059] e) predict, on the basis of the said discretized functions, the average value of the blood pressure indicator, as well as a set of features carrying information about how the pulse wave of the subject and the average pulse wave of the random set are related;
[0060] g) calculate a loss function based on the predicted mean value of the blood pressure indicator and the mean value of the blood pressure indicator supplied as training data, and perform backpropagation of the error;
[0061] z) concatenate the predicted mean value of the blood pressure indicator, the mentioned set of features, the extracted features characterizing each pulse wave from the random set;
[0062] i) predict the value of the blood pressure indicator based on the result of concatenation and the extracted features characterizing the pulse wave of the subject;
[0063] k) calculate a loss function based on the predicted blood pressure value and the blood pressure value supplied as training data, and perform backpropagation of the error;
[0064] steps (a) to (k) are carried out until the value of each of the loss function for predicting the mean value of the blood pressure indicator and the loss function for predicting the value of the blood pressure indicator is less than or equal to a predetermined threshold value or becomes zero.
[0065] A method for determining the blood pressure indicator of a wearable device user using a neural network further trained by the proposed method is also proposed. The method for determining the blood pressure indicator of a user comprises the following steps:
[0066] Implement a neural network in a wearable device;
[0067] is fed to the input of the neural network:
[0068] - a discretized set of PPG signal values for one heartbeat, characterizing the user's current pulse wave,
[0069] - a discretized set of PPG signal values for one heartbeat, characterizing a retrospective set of the user's pulse waves;
[0070] implement parameter initialization, receiving:
[0071] - extracted features characterizing the user's pulse wave,
[0072] - extracted features characterizing each pulse wave from the retrospective set;
[0073] predict the parameters for the anacrotic component of the pulse wave and the parameters for the dicrotic component of the pulse wave for each pulse wave from the retrospective set;
[0074] Calculate statistics for each of the predicted parameters;
[0075] construct discretized distribution functions based on the calculated statistics;
[0076] predict, based on the said discretized distribution functions, the average value of the user's blood pressure indicator, as well as a set of features characterizing the relationship of the user's pulse wave with the average pulse wave of the retrospective set;
[0077] - concatenate the predicted mean value of the user's blood pressure indicator, the said set of features, and the extracted features characterizing each pulse wave from the retrospective set;
[0078] - predict the blood pressure value based on the concatenation result and the extracted features characterizing the user's pulse wave;
[0079] - displays the user's blood pressure value on the screen.
[0080] At least one of the plurality of units can be implemented by an AI (artificial intelligence) model. The AI-related function can be performed via non-volatile memory, volatile memory, and a processor. The processor can include one or more processors. In this case, one or more processors can be general-purpose processors, such as a central processing unit (CPU), an application processor (AP), etc., processors designed only for graphics processing, such as a graphics processing unit (GPU), a visual processing unit (VPU), and / or specialized processors for AI, such as a neural processor. The methods can be implemented, for example, via hardware (a computer, a computer-readable medium, a smartphone connected to a wearable device, etc.) using software.
[0081] One or more processors control the processing of input data according to a predefined operating rule or artificial intelligence (AI) model stored in non-volatile and volatile memory. The predefined operating rule or AI model is implemented through training, i.e., by applying a learning algorithm to a set of training data, a predefined operating rule or AI model with the desired characteristics is created. Training may be performed directly on the device implementing the AI according to an embodiment and / or may be implemented through a separate server / system.
[0082] An AI model can consist of multiple neural network layers. Each layer has multiple weight values and performs the layer's operation by computing the previous layer and performing the operation on the multiple weight values. Examples of neural networks include, but are not limited to, convolutional neural networks (CNNs), deep neural networks (DNNs), recurrent neural networks (RNNs), restricted Boltzmann machines (RBMs), deep belief networks (DBNs), bidirectional recurrent deep neural networks (BRDNNs), generative adversarial networks (GANs), and deep Q-networks.
[0083] A learning algorithm is a method for training a predetermined target device (e.g., a robot) using a set of training data to force the target device to make a decision or prediction. Examples of learning algorithms include, but are not limited to, supervised learning, unsupervised learning, semi-supervised learning, and reinforcement learning. The method described above, implemented by an electronic device, can be implemented using an artificial intelligence model.
[0084] Brief description of drawings
[0085] The above and other features and advantages of the present invention will become clear from the following description taken in conjunction with the accompanying drawings, in which:
[0086] Fig. 1(a) and (b) illustrates 2 different PPG signals of the same person.
[0087] Fig. 2 schematically illustrates the training scheme of a neural network for determining the blood pressure value.
[0088] Fig. 3 schematically illustrates the decomposition of the PPG signal into two Gaussian functions.
[0089] Fig. 4 illustrates the Gaussian function corresponding to the anacrotic period.
[0090] Fig. 5 schematically illustrates the scheme of additional training of the neural network that determines the value of the blood pressure indicator.
[0091] Fig. 6 schematically illustrates the operation of a retrained neural network that determines the blood pressure value.
[0092] Fig. 7 schematically illustrates the training scheme of the neural network for the subject's pulse wave recorded by the photoplethysmograph and the subject's pulse wave recorded by the additional device.
[0093] Fig. 8 schematically illustrates the scheme for further training of the neural network for the subject's pulse wave recorded by a photoplethysmograph and the subject's pulse wave recorded by an additional device.
[0094] Fig. 9 schematically illustrates the operation of the retrained neural network for the user's pulse wave recorded by the photoplethysmograph and the user's pulse wave recorded by an additional device.
[0095] Detailed description of the invention
[0096] A method for determining the blood pressure of a wearable device user using a trained neural network and a method for training the neural network to determine the blood pressure are proposed. The proposed invention enables the wearable device to determine the user's systolic or diastolic blood pressure at any time, without requiring the user to systematically recalibrate the blood pressure value using a tonometer.
[0097] The following definitions are used in this application.
[0098] The PPG signal is a signal representing the blood flow amplitude versus time, recorded by a photoplethysmograph. For each heartbeat, the photoplethysmograph records one pulse wave of the PPG signal (hereinafter, pulse wave), which, for the purposes of the present invention, must be sampled to obtain a set of PPG signal values for one heartbeat. For the present invention, a sampling frequency of no more than, for example, 500 Hz is sufficient.
[0099] Blood pressure detection - predicts the systolic or diastolic value of the user's blood pressure based on the user's pulse wave when the user wears the wearable device.
[0100] Fig. 1(a) and (b) show two pulse waves of the same subject. The blood pressure value of the subject in case (a) is different from the blood pressure value of the subject in case (b). The areas that distinguish the pulse wave shown in Fig. 1(a) from the pulse wave shown in Fig. 1(b) are circled. Such a difference may not be obvious to human visual inspection, but can be detected by computer means, including a neural network designed to predict the blood pressure value, if the neural network is trained on a set of training data and can correlate the blood pressure value and the pulse wave shape (the coordinates of the points in the coordinate system of the pulse wave amplitude versus time).
[0101] To implement the proposed invention, it is possible to use predictive neural networks known from the prior art, designed to predict blood pressure.
[0102] Fig. 2 schematically illustrates the neural network training scheme. In the present invention, one neural network is trained to determine one of the blood pressure indicators—the systolic indicator or the diastolic indicator.
[0103] With reference to Fig. 2, the training of a neural network is described.
[0104] In the most general case, a neural network for determining the blood pressure value includes:
[0105] 2 feature extractor;
[0106] Block 5 of blood pressure value prediction.
[0107] According to the proposed invention, a pulse wave parameter prediction unit 3 is added to the neural network, which is described in more detail below.
[0108] To train a neural network to determine the blood pressure value at the training stage, the following is used:
[0109] pulse wave prediction loss function calculation unit 4, connected to unit 3;
[0110] block 6 for calculating the loss function for predicting the blood pressure value, connected to block 5.
[0111] It should be noted that from here on, the arrangement of blocks in the figures is given for example purposes only. For example, in Fig. 2, block 3 (along with block 4) and block 5 (along with block 6) can be arranged in any order relative to each other.
[0112] Training is carried out as follows:
[0113] A) Training data 1 is pairs consisting of:
[0114] (a) in Fig. 2 - a discretized set of PPG signal values for one heartbeat (with a discretization of no more than, for example, 500 Hz), characterizing the pulse wave of the subject, and
[0115] (b) in Fig. 2 - the systolic blood pressure value or diastolic blood pressure value (hereinafter referred to as the blood pressure value) corresponding to this pulse wave for the same subject. In all of the presented embodiments of the proposed invention, the trained neural network will be able to determine the value of the blood pressure value (systolic or diastolic), the values of which were used during training. In all of the presented embodiments of the proposed invention, when compiling training data, it is best to use a sample of people whose statistical distribution of characteristics, such as height, age, weight, blood pressure value, gender, etc., is average in the human population.
[0116] The discretized set (a) of PPG signal values for one heartbeat is fed to feature extractor 2 and to block 4. The value (b) of the blood pressure indicator is fed to block 6.
[0117] In Extractor 2, the initialization of parameters is carried out, which is typical for any neural network, that is, the determination of data characteristics (feature extraction) occurs, which the neural network considers important for solving the problem, in this case, the problem of predicting the value of the blood pressure indicator.
[0118] The extracted features characterizing the pulse wave from extractor 2 are fed to block 3 and block 5.
[0119] B) As shown in Fig. 3, the pulse wave (Fig. 3 (a), hereinafter - the x-axis is time, the y-axis is the amplitude of the pulse wave) can be decomposed into two Gaussian functions (Fig. 3 (b) and (c)), namely, the anacrotic (a) component of the pulse wave and the dicrotic (b) component of the pulse wave.
[0120] Let's consider, as an example, the Gaussian function corresponding to the anacrotic component (a). As shown in Fig. 4, this Gaussian function can be characterized by three parameters:
[0121] μ1- the time when the peak value in the anacrotic component was reached,
[0122] σ1- half-width of the peak of the anacrotic component,
[0123] A1 - amplitude of the peak value of the anacrotic component.
[0124] The Gaussian function corresponding to the anacrotic component is:
[0125] (1)
[0126] The Gaussian function corresponding to the dicrotic component is characterized by similar parameters μ2, σ2, A2:
[0127] (2)
[0128] In block 3, the parameters μ1, σ1, A1 are predicted for the anacrotic component and the same parameters μ2, σ2, A2 for the dicrotic component.
[0129] B) The parameters predicted in block 3 are transferred to block 4, where the Gaussian function is restored based on the predicted parameters for each of the components and the entire pulse wave is restored.
[0130] The reconstruction of the Gaussian function in block 4 is carried out point by point for each of the anacrotic and dicrotic components as follows: the part of the Gaussian function to the right of the point with coordinates (μ1; A1) for the anacrotic component (see Fig. 4) and from the point with coordinates (μ2; A2) for the dicrotic component is reconstructed separately, and separately to the left of each of these points, that is, for each of the anacrotic and dicrotic components, two parts are reconstructed, starting from the peak value (μ1; A1) for the anacrotic component and the peak value (μ2; A2) for the dicrotic component.
[0131] An example of calculating point-by-point restoration for the anacrotic component is given; for the dicrotic component, the calculation of point-by-point restoration is carried out similarly.
[0132] The Gaussian function (1) is differentiated to obtain the following differential equation:
[0133] (3)
[0134] The parameter A1 in equation (3) is equal to unity, since the anacrotic component of the pulse wave is normalized to the range from 0 to 1, that is, the maximum value is taken as 1. Below, we describe the numerical solutions of equation (3) for restoring the Gaussian function to the right of the point with coordinates (μ1; A1) (see Fig. 4) and to the left of the point with coordinates (μ1; A1). For example, a well-known iterative method for solving fourth-order Runge-Kutta differential equations is used; any other suitable method can also be used. The solution is carried out in n identical steps Δx, where n=0, 1, 2,… N1.
[0135] The 4th order Runge-Kutta method uses 4 intermediate calculations k1, k2, k3, k4:
[0136] To the right of the point with coordinates (μ1; A1):
[0137] (4)
[0138] - This at step n.
[0139] By solving the system of equations (4), we find the value of the Gaussian function at each point n from 0 to N1. The system is solved N1 times. The values k1, k2, k3, k4 are calculated for each step, and = A1,
[0140] Calculate the values of the Gaussian function and meaning for each subsequent point based on the value of the previous one:
[0141] (5)
[0142] To the left of the point with coordinates (μ1; A1):
[0143] (6)
[0144] Gaussian Function Values and meaning the next point based on the value of the previous one to the left of the point with coordinates (μ1; A1):
[0145] (7)
[0146] G) In block 4, the reconstructed anacrotic and dicrotic components of the pulse wave are added point by point:
[0147] (8)
[0148] The resulting pulse wave is the pointwise sum of the reconstructed anacrotic component of the pulse wave and the reconstructed dicrotic component of the pulse wave.
[0149] D) In block 4, the loss function is calculated.
[0150] Prior art loss functions are standard and can be used to train any neural network. Standard loss functions have the form:
[0151]
[0152] - reference content (data, images, texts, etc.) that the trained neural network should obtain.
[0153] - the content that the neural network predicts during the learning process.
[0154] n - number of training examples.
[0155] However, as can be seen from formulas (9), the known loss functions do not take into account the physical properties of the processes reflected in the data obtained by the neural network, but only take into account the element-by-element comparison of two curves, with all points compared pairwise and independently of all other points.
[0156] Therefore, the present invention uses a loss function that takes into account the shape of the pulse wave, namely, taking into account the amplitude, that is, the force of the “push” during the heartbeat at a certain point in time at each point of the pulse wave, and the position of each point of the pulse wave relative to the other points of the pulse wave (see Fig. 1).
[0157] Such a loss function for pulse wave prediction may, for example, look like:
[0158] (10)
[0159] the “+” sign in this case is the pointwise addition sign,
[0160] PPG_signal - pulse wave from training data,
[0161] - mathematical sign for taking a norm;
[0162] x - value along the x-axis (time component).
[0163] This loss function helps to identify the relationship between the pulse wave shape and the blood pressure value for each user individually, since it takes into account the pulse wave parameters that are individual to each pulse wave.
[0164] After calculating the loss function for pulse wave prediction, backpropagation of the error is performed, and the weights of blocks 3 and 2 are updated.
[0165] In parallel with stages (B)-(D), the following stages are carried out:
[0166] E) Based on the extracted features characterizing the pulse wave, in block 5, the blood pressure value is predicted.
[0167] G) The predicted value of the blood pressure indicator is fed to block 6, where, based on the value of the blood pressure indicator obtained from the input training data and the value of the blood pressure indicator predicted by block 5, a traditional loss function is calculated to predict the value of the blood pressure indicator using one of the formulas (9) or a combination of them.
[0168] After calculating the loss function to predict the blood pressure value, backpropagation of the error is performed, and the weights of blocks 5 and 2 are updated.
[0169] A new training stage, i.e., steps (A) - (G), is performed by feeding a new training pair of pulse wave and blood pressure values to the input. Training stages are repeated until the value of each of the pulse wave prediction loss function and the blood pressure prediction loss function is less than or equal to a predetermined threshold value or becomes zero.
[0170] Thus, the trained neural network is able to determine the value of the blood pressure indicator based on the pulse wave supplied to the input and determine the parameters μ1, σ1, A1, μ2, σ2, A2 for the anacrotic component and dicrotic component of the pulse wave and the shape of the entire pulse wave, reconstructed based on these parameters.
[0171] In one embodiment of the proposed invention, the neural network trained in this manner is implemented in a wearable device having a photoplethysmograph function, and the user can obtain information about the current value of systolic or diastolic pressure indicators at any time.
[0172] In one embodiment of the proposed invention, one neural network is trained to determine systolic blood pressure, and another neural network is trained to determine diastolic blood pressure. Both neural networks are implemented in a wearable device. In this case, the user receives complete information about blood pressure, determined by both systolic and diastolic values.
[0173] It is known that the pulse waveform depends not only on the blood pressure value, but also on the body parameters of a specific user, especially on blood and vascular parameters, weight, age, gender, height, etc., and these vital parameters change over time. In one embodiment of the proposed invention, in order to more accurately determine the blood pressure value, additional training of the neural network is carried out. For this purpose, as shown in Fig. 5, a statistics processing unit 7 is added to the trained neural network, predicting the average blood pressure value of a specific user based on the discretized distribution functions characterizing the statistical histograms for each of the parameters μ1, σ1, A1, μ2, σ2, A2.Block 7 is connected to block 8, which calculates the loss function (using one of formulas (9) or a combination of them) for predicting the mean blood pressure value, and block 9, which constructs statistical histograms. Block 9 is also connected to block 3, and block 7 is connected to block 5.
[0174] Block 5 needs to be trained to predict the blood pressure value based on the features extracted from Extractor 2 and the data obtained from Block 7.
[0175] The further training of the neural network is described with reference to Fig. 5.
[0176] A) The training data is quadruples consisting of:
[0177] (a) in Fig. 5 - a discretized set of values of the PPG signal for one heartbeat (with a discretization of no more than, for example, 500 Hz), characterizing the pulse wave of the subject, which is fed to extractor 2, where the initialization of the parameters is carried out; the extracted features obtained at the output of block 2 characterize the pulse wave of the subject,
[0178] (b) in Fig. 5 - the value of the arterial pressure indicator corresponding to this pulse wave of the subject, which is fed to block 6,
[0179] (c) in Fig. 5 - a discretized set of PPG signal values for one heartbeat (with a discretization of no more than, for example, 500 Hz), each of which characterizes each pulse wave from a random set of other pulse waves of the same subject, the discretized sets are fed to extractor 2, where the parameters are initialized; the extracted features obtained at the output of block 2 characterize each pulse wave from the random set,
[0180] (g) in Fig. 5 - for the mentioned random set - the average value of the systolic blood pressure indicator or the diastolic blood pressure indicator of the same subject (depending on which blood pressure indicator the neural network is trained to determine), which is fed to block 8.
[0181] B) The extracted features characterizing each pulse wave from the random set, obtained at the output of extractor 2, are fed to block 3. In block 3, the parameters μ1, σ1, A1 for the anacrotic component and the parameters μ2, σ2, A2 for the dicrotic component of each pulse wave from the random set are predicted.
[0182] B) The obtained parameters are transferred to block 9, where, using a well-known histogram construction algorithm, statistics are calculated for each of the parameters μ1, σ1, A1, μ2, σ2, A2 (i.e., the number of times each parameter takes on each value in the aforementioned random set). Based on the calculated statistics, discretized distribution functions are constructed (calculated) in block 9, i.e., histograms for each parameter, and the discretized distribution functions are fed to block 7.
[0183] G) Block 7 predicts the mean value of the blood pressure indicator, as well as a set of features that carry information about how the subject's pulse wave relates to the average pulse wave of a random set of other pulse waves of the same subject.
[0184] D) The predicted mean value of the blood pressure indicator is fed to block 8. Based on the mean value of the blood pressure indicator from the training data (g) and the mean value of the blood pressure indicator predicted in block 7, a loss function is calculated to predict the mean value of the blood pressure indicator.
[0185] Error propagation is performed, the weights of block 7 are updated (the weights of blocks 2 and 3 are frozen, block 4 does not participate in further training).
[0186] E) Concatenate the predicted mean value of the blood pressure indicator (P срin Fig. 5), the mentioned set of features (FS in Fig. 5) and the extracted features (output of extractor 2) characterizing each pulse wave from the random set. The result of concatenation and the extracted features characterizing the pulse wave, obtained at the output of extractor 2, are fed to block 5.
[0187] G) Based on the received data, block 5 predicts the blood pressure value. The loss function is calculated in block 6 based on the predicted blood pressure value and the blood pressure value from the training data (b), and error propagation is performed, updating the weights of block 5.
[0188] A new stage of retraining, i.e., steps (A) - (G), is performed by feeding a new set of training data to the input. Training stages are repeated until the value of each of the loss function for predicting the blood pressure value and the loss function for predicting the mean blood pressure value is less than or equal to a predetermined threshold or becomes zero.
[0189] The neural network prepared during the training and retraining stages is implemented in the user's wearable device, which has photoplethysmograph functionality. When the neural network operates in the wearable device, extractor 2 and blocks 3, 5, 7, and 9 are used.
[0190] The operation of the prepared neural network in the wearable device is described with reference to Fig. 6 and is carried out as follows.
[0191] A) The following is fed to the input of the prepared neural network:
[0192] (d) in Fig. 6 is a discretized set of PPG signal values for one heartbeat, characterizing the current pulse wave of the user (fed to extractor 2).
[0193] (e) in Fig. 6 - a retrospective set of user pulse waves (fed to extractor 2), which is a discretized set of PPG signal values for one heartbeat, characterizing each pulse wave from the retrospective set of user pulse waves; wherein the retrospective set of user pulse waves represents the user's pulse waves recorded by a photoplethysmograph either for the entire period of use of the wearable device by the user, or for an arbitrary period of use of the wearable device by the user and stored in the memory of the wearable device, or a random sample is used from the user's pulse waves stored in the memory of the wearable device.
[0194] B) Parameter initialization is performed in extractor 2. The extracted features characterizing each retrospective set, obtained at the output of extractor 2, are fed to block 3. For each pulse wave from the user's retrospective pulse wave set, block 3 predicts the parameters μ1, σ1, A1 for the anacrotic component and the parameters μ2, σ2, A2 for the dicrotic component.
[0195] B) The obtained parameters are transferred to block 9, where statistics are calculated for each of the parameters μ1, σ1, A1, μ2, σ2, A2. Based on the calculated statistics, discretized distribution functions are constructed in block 9, characterizing the histograms for each parameter, and they are fed to block 7.
[0196] G) Block 7 predicts the average value of the blood pressure indicator (P срin Fig. 6) of the user, as well as a set of features (SF in Fig. 6) carrying information about how the user’s pulse wave relates to the average pulse wave of a retrospective set of other pulse waves of the user.
[0197] D) Concatenate the predicted mean value of the blood pressure indicator (P ср in Fig. 6), the mentioned feature set (FS in Fig. 6) and the extracted features (output of extractor 2) characterizing each pulse wave from the retrospective set. The result of the concatenation and the extracted features characterizing the user's pulse wave, obtained at the output of extractor 2, are fed to block 5.
[0198] E) Based on the received data, block 5 predicts the user's blood pressure value.
[0199] The blood pressure value is displayed on the screen for the user.
[0200] In one embodiment of the proposed invention, one neural network is trained and further trained to determine systolic blood pressure, while another neural network is trained and further trained to determine diastolic blood pressure. Both neural networks are implemented in a wearable device with photoplethysmograph functionality. In this case, the user receives complete information about blood pressure, determined by both systolic and diastolic values.
[0201] To refine the user's blood pressure readings, it's possible to use additional devices, such as a smart ring (e.g., the Samsung Galaxy Ring). Such devices are known in the art and can be used to more accurately determine the user's blood pressure reading. To achieve this, a neural network is trained to determine the blood pressure reading using additional pulse wave data received from the wearable device.
[0202] As shown in Fig. 7, to work with an additional device, the neural network contains:
[0203] Extractor 2;
[0204] blood pressure value prediction unit 5, which is connected for training with the blood pressure value prediction loss function calculation unit 6
[0205] - two blocks 3.1, 3.2 for predicting pulse wave parameters, which are connected to blocks 4.1 and 4.2 for calculating the loss function for predicting the pulse wave for training.
[0206] The training data is triples consisting of:
[0207] (a) in Fig. 7 - the pulse wave of the subject, recorded by a photoplethysmograph,
[0208] (g) in Fig. 7 - the pulse wave of the subject, taken by an additional device,
[0209] wherein each pulse wave (a) and (g) is characterized by its own discrete set of PPG signal values for one heartbeat (with a sampling of no more than, for example, 500 Hz) and
[0210] (b) in Fig. 7 - the corresponding value of the blood pressure indicator of this subject.
[0211] The discretized set of PPG signal values for one heartbeat, taken by the photoplethysmograph (a), is fed to block 4.1 for calculating the loss function for predicting the pulse wave.
[0212] The discretized set (g) of PPG signal values for one heartbeat, taken by an additional device, is fed to block 4.2 for calculating the loss function for predicting the pulse wave.
[0213] The discretized set (a) of PPG signal values for one heartbeat, recorded by the photoplethysmograph, is concatenated with the discretized set (g) of PPG signal values for one heartbeat, recorded by an additional device. The resulting data is fed to feature extractor 2, where parameter initialization and feature extraction are performed. The extracted features are fed in parallel to block 3.1, block 3.2, and block 5.
[0214] The value (b) of the blood pressure indicator is supplied to the loss function calculation unit 6 to predict the value of the blood pressure indicator.
[0215] Training of the neural network for operation with an additional device is carried out similarly to the training of the neural network described with reference to Fig. 2, wherein steps (B) - (D) are carried out in parallel:
[0216] - for the pulse wave (a), recorded by the photoplethysmograph (blocks 3.1, 4.1), and
[0217] - for the pulse wave (w), recorded by an additional device (blocks 3.2, 4.2).
[0218] In one embodiment of the present invention, a neural network trained in this manner is implemented in a wearable device with photoplethysmograph functionality, with the wearable device connected to a smart ring for transmitting pulse wave data. The user can obtain information about their current systolic or diastolic blood pressure at any time. If two neural networks are embedded in the wearable device, one trained to determine systolic blood pressure and the other to determine diastolic blood pressure, the user will receive complete information about their blood pressure, determined by both systolic and diastolic values.
[0219] Below, with reference to Fig. 8, the process of further training of the neural network in the presence of an additional device is described.
[0220] As shown in Fig. 8, to work with an additional device, the neural network contains:
[0221] - extractor 2;
[0222] - block 5 for predicting the value of the blood pressure indicator, which is connected to block 6 for calculating the loss function for predicting the value of the blood pressure indicator for additional training,
[0223] - two blocks 3.1 and 3.2 of pulse wave parameter prediction,
[0224] - two blocks 7.1 and 7.2 for processing statistics, connected to block 8.
[0225] The training data is sixes consisting of:
[0226] (a) in Fig. 8 - a discretized set of PPG signal values for one heartbeat (with a discretization of no more than, for example, 500 Hz), characterizing the pulse wave of the subject, recorded by a photoplethysmograph,
[0227] (b) in Fig. 8 - the value of the systolic blood pressure indicator or the diastolic blood pressure indicator of the same subject corresponding to this pulse wave, depending on which blood pressure indicator the neural network is trained to determine,
[0228] (c) in Fig. 8 - discretized sets of PPG signal values for one heartbeat (with a discretization of no more than, for example, 500 Hz), each of which characterizes each pulse wave from a random set of other pulse waves of the same subject, recorded by a photoplethysmograph,
[0229] (g) in Fig. 8 - for the mentioned random set - the average value of the systolic blood pressure indicator or the diastolic blood pressure indicator of the same subject, depending on which specific blood pressure indicator the neural network is trained to determine,
[0230] (g) in Fig. 8 - a discretized set of PPG signal values for one heartbeat (with a discretization of no more than, for example, 500 Hz), characterizing the pulse wave of the subject, recorded by an additional device,
[0231] (z) in Fig. 8 - a discretized set of PPG signal values for one heartbeat (with a discretization of no more than, for example, 500 Hz), each of which characterizes each pulse wave from a random set of other pulse waves of the same subject, recorded by another device.
[0232] The value (b) is supplied to the loss function calculation unit 6 for predicting the blood pressure value.
[0233] The value (g) is supplied to the loss function calculation unit 8 to predict the average value of the blood pressure indicator.
[0234] Blocks 6 and 8 operate using loss functions according to one of the formulas (9) or a combination of them.
[0235] Concatenate data (a) and (g) and feed it into extractor 2. The extracted parameters are fed into block 5.
[0236] Concatenate data (c) and (z) and feed it into extractor 2. The extracted parameters are fed into block 3.1 and block 3.2.
[0237] Parameters μ 11 , σ 11 , A 11 , μ 21, σ 21 , A 21 , calculated in block 3.1, are fed to block 9.1, where discretized distribution functions are constructed and fed to block 7.1.
[0238] Parameters μ 12 , σ 12 , A 12 , μ 22 , σ 22 , A 22 , calculated in block 3.2, are fed to block 9.2, where discretized distribution functions are constructed and fed to block 7.2.
[0239] Blocks 7.1 and 7.2 each predict their own mean value of the subject's pressure (P ср1 , R ср2 in Fig. 8), as well as each of its own sets of features (NP1, NP2 in Fig. 8), carrying information about how the subject’s pulse wave relates to the average pulse wave of a random set of other pulse waves of the same subject, obtained from a photoplethysmograph (block 7.1) and from another device (block 7.2).
[0240] R ср1 and R ср2They are averaged, that is, their half-sum is calculated (in Fig. 8, it is marked "1 / 2"), then the resulting half-sum is fed to block 8, where the loss function is calculated. Error propagation is performed, and the weights of blocks 7.1 and 7.2 are updated.
[0241] The feature sets NP1 and NP2 obtained in blocks 7.1 and 7.2 and the obtained half-sum of the values of the average value of the arterial pressure indicator are concatenated and the result of the concatenation is fed to block 5.
[0242] Block 5, based on the initialized parameters and the concatenation result, predicts the value of the subject's blood pressure indicator corresponding to the subject's input pulse wave.
[0243] Calculate the loss function in block 6. Perform backpropagation of the error, update the weights of block 5.
[0244] Training is carried out until the value of each loss function is less than or equal to a pre-set threshold value or becomes zero.
[0245] The operation of the neural network in the wearable device with data received from the additional device is described with reference to Fig. 9 and is carried out as follows.
[0246] A) Concatenate (d) - a discretized set of PPG signal values for one heartbeat (with a discretization of no more than, for example, 500 Hz), characterizing the current pulse wave of the subject, recorded by a photoplethysmograph (fed to extractor 2) and (i) - a discretized set of PPG signal values for one heartbeat (with a discretization of no more than, for example, 500 Hz), characterizing the current pulse wave of the user, recorded by an additional device. Concatenate the concatenated data to extractor 2. Extracted features are fed to block 5.
[0247] Concatenate (e) - discretized sets of PPG signal values for one heartbeat (with a discretization of no more than, for example, 500 Hz), characterizing a retrospective set of the user's pulse waves obtained by the photoplethysmograph and (k) - discretized sets of PPG signal values for one heartbeat (with a discretization of no more than, for example, 500 Hz), characterizing a retrospective set of the user's pulse waves obtained by the additional device. Moreover, the retrospective set of the user's pulse waves obtained by the additional device represents the user's pulse waves recorded by the additional device over the period of use of the additional device by the user and stored in the memory of the additional device. The concatenated data is fed to extractor 2. The extracted features are fed to block 3.1 and block 3.2.
[0248] Parameters μ 11 , σ 11 , A 11 , μ 21 , σ 21 , A 21, calculated in block 3.1, are fed to block 9.1, where discretized distribution functions are constructed, which are fed to block 7.1.
[0249] Parameters μ 12 , σ 12 , A 12 , μ 22 , σ 22 , A 22 , calculated in block 3.2, are fed to block 9.2, where discretized distribution functions are constructed, which are fed to block 7.2.
[0250] Blocks 7.1 and 7.2 each predict their own average user pressure value, as well as each of their own sets of features that carry information about how the user's pulse wave relates to the average pulse wave of a retrospective set of other pulse waves of the same user obtained from a photoplethysmograph (block 7.1) and from another device (block 7.2).
[0251] These two values of the user's average pressure are averaged (their half-sum is calculated, indicated as “1 / 2” in Fig. 9).
[0252] The feature sets (NP1, NP2) obtained in blocks 7.1 and 7.2 and the obtained half-sum of the values of the average user pressure are concatenated and the result of the concatenation is fed to block 5.
[0253] Block 5, based on the concatenation result and the extracted features characterizing the user's current pulse wave recorded by the photoplethysmograph and the user's current pulse wave recorded by the additional device, predicts the value of the user's blood pressure indicator corresponding to the user's current pulse wave.
[0254] The blood pressure value is displayed on the screen for the user.
[0255] Thus, the proposed invention allows the user to monitor their blood pressure at any time of the day without using a tonometer, using only a compact wearable device or a wearable device and an additional device.
[0256] In one embodiment of the proposed invention, the neural network trained in this manner is implemented in a wearable device having a photoplethysmograph function, wherein the wearable device is connected to a smart ring or other additional device for transmitting pulse wave data. The user can at any time obtain information on the current value of the systolic or diastolic blood pressure indicator, or complete information on the blood pressure determined by both the systolic indicator and the diastolic indicator, if two neural networks are placed in the wearable device, one of which is trained to determine the systolic blood pressure indicator, and the second - the diastolic blood pressure indicator. When the additionally trained neural network is operating in the wearable device, extractor 2, blocks 3.1, 3.2, 5, 7.1, 7.2, 9.1, 9.2 are involved.
[0257] Although the invention has been described in connection with certain illustrative embodiments, it should be understood that the scope of the invention is not limited to these specific embodiments. On the contrary, the scope of the invention is intended to include all alternatives, modifications, and equivalents that may be included within the spirit and scope of the claims.
Claims
1. A method for training a neural network to determine the blood pressure value, the method comprises the following steps: a) feed the following training data into the neural network being trained: - the subject's pulse wave, characterized by a discretized set of PPG signal values for one heartbeat, - the value of the arterial pressure indicator corresponding to the subject’s pulse wave; initialize the parameters of the discretized set of PPG signal values for one heartbeat, obtaining extracted features that characterize the subject’s pulse wave; b) predict the parameters for the anacrotic component of the subject's pulse wave and the parameters for the dicrotic component of the subject's pulse wave based on the extracted features, wherein the parameters are for each of the anacrotic and dicrotic components of the subject's pulse wave: - the time when the peak value of the component was reached; - half-width of the component peak, - the amplitude of the peak value of the component; c) based on the predicted parameters, the subject’s pulse wave is reconstructed, a loss function is calculated for predicting the pulse wave based on the predicted pulse wave of the subject and the pulse wave of the subject supplied as training data, wherein the loss function for predicting the pulse wave is: PPG_signal - a set of PPG signal values for one heartbeat from the training data, x is the value of the time component, μ1 is the time when the peak value for the anacrotic component was reached, μ2 is the time when the peak value for the dicrotic component was reached, σ1 is the half-width of the peak of the anacrotic component, σ2 is the half-width of the peak of the dicrotic component, A1 - the amplitude of the peak value of the anacrotic component, A2 - the amplitude of the peak value of the dicrotic component, perform backpropagation of the error; in parallel with stages b)-c), a stage is carried out in which: d) predict the value of the blood pressure indicator based on the extracted features, calculate a loss function for predicting a blood pressure value based on the predicted blood pressure value and the blood pressure value supplied as training data, and perform backpropagation of the error; steps a)-d) are carried out until the value of each of the loss function for predicting the subject's pulse wave and the loss function for predicting the blood pressure value is less than or equal to a predetermined threshold value or becomes equal to zero.
2. The method according to paragraph 1, in which the following steps are carried out to restore the pulse wave: based on the predicted parameters, the anacrotic component of the pulse wave and the dicrotic component of the pulse wave are restored, The reconstructed anacrotic component of the pulse wave and the dicrotic component of the pulse wave are added point by point, obtaining a reconstructed pulse wave characterized by a set of PPG signal values for one heartbeat.
3. The method according to any one of paragraphs 1, 2, in which the value of the blood pressure indicator corresponding to the pulse wave of the subject is the value of the systolic blood pressure indicator.
4. The method according to any one of paragraphs 1, 2, in which the value of the blood pressure indicator corresponding to the pulse wave of the subject is the value of the diastolic blood pressure indicator.
5. A method for further training a neural network trained by the method according to any of paragraphs 1-4, comprising the steps of: a) feed the following training data into the trained neural network: the subject's pulse wave, characterized by a discretized set of PPG signal values for one heartbeat, the value of the blood pressure indicator corresponding to the subject's pulse wave, a random set of pulse waves of the same subject, each pulse wave of which is characterized by a discretized set of PPG signal values for one heartbeat, the mean value of the arterial pressure indicator corresponding to a random set of pulse waves of the same subject; b) initialize the parameters of the subject's pulse wave and a random set of pulse waves of the same subject, obtaining extracted features characterizing the subject's pulse wave, extracted features characterizing each pulse wave from a random set; c) predict the parameters for the anacrotic component of the pulse wave and the parameters for the dicrotic component of the pulse wave based on the extracted features characterizing each pulse wave from a random set; d) calculate statistics for each of the predicted parameters; d) construct discretized distribution functions based on the calculated statistics; e) predict, on the basis of the said discretized functions, the average value of the arterial pressure indicator, as well as a set of features carrying information about how the subject's pulse wave and the average pulse wave of a random set are related; g) calculate a loss function based on the predicted mean value of the blood pressure indicator and the mean value of the blood pressure indicator supplied as training data, and perform backpropagation of the error; c) concatenate the predicted mean value of the blood pressure indicator, the mentioned set of features, and the extracted features characterizing each pulse wave from the random set; i) predict the value of the blood pressure indicator based on the result of concatenation and the extracted features characterizing the pulse wave of the subject; c) calculate a loss function based on the predicted blood pressure value and the blood pressure value supplied as training data, and perform backpropagation of the error; steps a)-k) are carried out until the value of each of the loss function for predicting the mean value of the blood pressure indicator and the loss function for predicting the value of the blood pressure indicator is less than or equal to a predetermined threshold value or becomes equal to zero.
6. A method for determining the blood pressure indicator of a wearable device user using a neural network further trained by the method according to paragraph 5, the method comprising the steps of: implement a neural network in a wearable device; fed to the input of the neural network: a discretized set of PPG signal values for one heartbeat, characterizing the user's current pulse wave, a discretized set of PPG signal values for one heartbeat, characterizing a retrospective set of the user's pulse waves; initialize the parameters, obtaining: extracted features characterizing the user's current pulse wave, extracted features characterizing each pulse wave from the retrospective set; predict the parameters for the anacrotic component of the pulse wave and the parameters for the dicrotic component of the pulse wave for each pulse wave from the retrospective set; calculate statistics for each of the predicted parameters; construct discretized distribution functions based on the calculated statistics; predict, on the basis of the said discretized distribution functions, the average value of the user's blood pressure indicator, as well as a set of features characterizing the relationship of the user's current pulse wave with the average pulse wave of the retrospective set; concatenate the predicted mean value of the user's blood pressure reading, the said set of features, and the extracted features characterizing each pulse wave from the historical set; predict the blood pressure value based on the concatenation result and the extracted features characterizing the user's current pulse wave; display the user's blood pressure reading on the screen.