Encoding of time series values of patient physiological indicators
Patent Information
- Application Number
- JP2026024224
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2025-02-20
- Filing Date
- 2026-02-18
- Publication Date
- 2026-09-01
Smart Images

Figure 2026139610000053 
Figure 2026139610000054 
Figure 2026139610000055
Abstract
Description
[Technical Field]
[0001] This disclosure relates to the field of computer programs and systems, and more specifically to methods, systems, and programs for encoding time series of values of physiological indicators of patients. [Background technology]
[0002] In situations where we are trying to predict the progression of a patient's disease, it is beneficial to employ mathematical models that can estimate the probability of clinical events occurring over time. These events may include disease relapse, progression to a more severe stage, complications, hospitalization, or death of the patient. The primary purpose of using such models is to predict, as accurately as possible, the occurrence of clinical events, such as death.
[0003] The mathematical models used for these predictions include a variety of approaches, such as statistical models and machine learning algorithms. The input data for these models typically consists of longitudinal patient information collected at multiple points in time during ongoing visits to healthcare professionals. This data may include laboratory results, imaging findings, and vital signs. By leveraging such data, models can identify patterns and trends that are not immediately apparent, thereby improving the accuracy of predictions. Therefore, these models can perform indirect measurements of medical / physiological characteristics based on measured physiological data of patients. [Overview of the project] [Problems that the invention aims to solve]
[0004] Some models used to solve such prediction problems may only be able to process input in the form of a series of spikes. Prior art methods used to encode input data into a series of spikes may not encode the input data properly and may overrepresent noise present in the input data.
[0005] Against this backdrop, there is still a need for improved solutions to encode time series values of patients' physiological indicators. [Means for solving the problem]
[0006] Therefore, a computer implementation method for encoding a time series of values of a patient's physiological indicators is provided. In this disclosure, this method may be referred to as the “encoding method”.
[0007] The encoding method includes obtaining a time series of values for a patient's physiological indicators. The encoding method further includes obtaining the slope coefficient of the time series of values at each point in time, based on the current point in time, a predetermined number of previous points in time, and a predetermined number of subsequent points in time. The encoding method further includes comparing the slope coefficient at each point in time of the time series of values with a reference slope coefficient, the comparison including encoding the point in time as a spike if the calculated slope coefficient is greater than the reference slope coefficient in absolute value, and encoding the point in time as no spike if the calculated slope coefficient is less than the reference slope coefficient in absolute value.
[0008] This encoding method may include one or more of the following: Obtaining the slope coefficient of the time series of the value at the aforementioned time is done at the aforementioned time, the predetermined This includes calculating a linear regression on the values of the time series, including the time point before the predetermined number and the time point after the predetermined number. The reference slope coefficient is either 1 or the quotient between the maximum amplitude of the time series value and the maximum time amplitude. Each of the aforementioned spikes is either a positive or negative spike, and comparing the slope coefficient to the reference slope coefficient further includes the following: If the calculated slope coefficient exceeds the reference slope coefficient in absolute value, encode that point in time as a positive spike. Encoding the time point as a negative spike when the absolute value of the calculated slope coefficient is less than the value obtained by inverting the sign of the reference slope coefficient. Providing a time series of encoded values of a patient's physiological indicators to a neural network including a Spiking Neural Network (SNN) for predicting the occurrence time of a clinical / medical event, for provision as an input to said neural network.
[0009] There is further provided a computer program comprising instructions for carrying out the encoding method.
[0010] There is further provided a computer-readable storage medium having the computer program recorded thereon.
[0011] There is further provided a system comprising a processor coupled to a memory and a graphical user interface, wherein the computer program is stored in the memory. BRIEF DESCRIPTION OF THE DRAWINGS
[0012] [Figure 1] Shows an implementation example of the method. [Figure 2] Shows an implementation example of the method. [Figure 3] Shows an implementation example of the method. [Figure 4] Shows an implementation example of the method. [Figure 5] Shows an implementation example of the method. [Figure 6] Shows an implementation example of the method. [Figure 7] Shows an implementation example of the method. [Figure 8] Shows an implementation example of the method. [Figure 9] Shows an implementation example of the method. [Figure 10] Shows an implementation example of the method. [Figure 11] Shows an example of the system. [Modes for carrying out the invention]
[0013] A computer implementation method has been proposed for machine learning neural networks, including spike neural networks (SNNs), to predict the timing of clinical events. In this disclosure, this method may be referred to as the “learning method.”
[0014] This learning method includes obtaining a training dataset of training samples. Each training sample includes a time series of one or more values of each physiological indicator for a patient (the same patient for each of the time series of the one or more values) over a past period (e.g., a time series of measurements) (i.e., each time series of values is a time series of the respective physiological indicator), and the corresponding ground truth of when clinical events occurred. This learning method further includes training a neural network based on the training dataset. This neural network is trained to study each patient over a past period It is trained to take one or more time series of physiological indicator values as input and output predictions of the probability of a clinical event occurring over a given period.
[0015] In this disclosure, physiological indicators are any patient-related characteristics that can be obtained and / or measured, for example, by a healthcare professional, for example, using a medical measuring device. Physiological indicators are indicators that change over time, and non-limiting examples include blood pressure, heart rate, body temperature, blood tests, urine tests, radiographs, or combinations thereof. Physiological indicators are sometimes also called longitudinal measures. Physiological indicators can be obtained, for example, using medical measuring devices and / or in a laboratory.
[0016] In this disclosure, a clinical event is any event that is observable and / or measurable and significant to the patient's health. A clinical event is associated with a time of occurrence, which is the point in time (e.g., hour, day, or month) when the clinical event first appeared. A clinical event may be any measurable or observable change in the patient's overall health, including death. Additionally or alternatively, a clinical event may be associated with a specific disease, which includes, but is not limited to, the onset, recurrence, or subsequent recovery of the disease.
[0017] In this disclosure, a prediction of the probability of a clinical event occurring over a period of time may be a set of probabilities over that period (e.g., probabilities for each day or month of that period, e.g., probabilities for 300 days or each day of next year), and may represent the likelihood of the clinical event occurring at each specified point in time within that period. These points in time may be regularly distributed within that period (e.g., daily / monthly within that period). This probability may represent the confidence level of the method in predicting the occurrence of a clinical event. The period may, for example, coincide with the period of training data, or it may be a future period (e.g., the period may begin immediately after the method is used). Thus, the method of this disclosure may be used to predict future clinical events or to obtain information about the first occurrence of a clinical event that has already occurred (e.g., the first occurrence of cancer recurrence in the past). The period (span) may be days, months, or years (e.g., 300 days or 3 years).
[0018] In implementing the method of this disclosure, a clinical event may be associated with cancer, and an example of a clinical event may be a recurrence of cancer characterized by the reappearance or progression of malignant cells (e.g., following a period of remission). The prediction of the timing of recurrence may be the timing when cancer is expected to recur, and the associated probability may be the confidence level of the method in that prediction.
[0019] In this disclosure, a time series of values for each physiological indicator consists of one or more values (e.g., measured values) of a patient's physiological indicator, each value associated with a time point (also called a time step). Each time point can represent a specific time (e.g., hour, day, or month) that can indicate when its value was obtained (e.g., when the measurement was made). For example, each of the one or more time series of values for each physiological indicator of a patient may contain one or more time series, each time series containing entries, each entry containing the value and / or measured value of the patient's respective physiological indicator and the date and time (e.g., hour, day, or month) when the measurement was performed. For example, each time series can be represented as a vector, where the index of the vector corresponds to a time point, and the value at each index corresponds to the value and / or measured value of the patient's respective physiological indicator at each time point. In formulas, each time series is a sequence
number
[0020] The methods of this disclosure may include obtaining one or more time series of values for each of a patient's physiological indicators by collecting measurements of a patient's physiological indicators at different points in time, for example, by collecting one or more values each time the patient visits a healthcare professional. Thus, one or more values of physiological indicators may be obtained, for example, by a healthcare professional, for example, by using a medical measuring device. For example, a patient may visit a healthcare professional regularly and undergo blood / urine tests at each appointment. Thus, each time series of each of a patient's physiological indicators may consist of values of each physiological indicator obtained at irregular intervals, for example, corresponding to the patient's visits to a healthcare professional. The irregularity of these intervals presents a significant challenge in training neural networks and deep learning algorithms. In fact, many models used in prior art methods do not take these irregularities into account, nor can they take them into account.
[0021] The method disclosed herein may include normalizing the time-series values of each physiological indicator obtained for each patient. In the formula, the value X t This can be normalized using any method known in the art (e.g., taking into account the mean and / or standard deviation).
[0022] Figure 1 shows an example of two patients visiting the doctor at irregular intervals.
[0023] Furthermore, training datasets containing one or more time series of values for each physiological indicator of a patient over a past period, along with the corresponding ground truth for the timing of clinical events, may be incomplete. This is because patient data may become unavailable after a certain period, for example, due to patient transfer to another hospital (e.g., another city) or the end of a clinical study / trial. This creates further difficulties when training deep learning models based on such data.
[0024] Figure 2 shows examples of visit and clinical event histories for four different patients.
[0025] Analyzing the time series of values for each physiological indicator (e.g., the evolution of longitudinal characteristics) can be important for understanding disease progression, evaluating responses to treatment, and assessing the overall impact of pathology on patients. For example, certain physiological indicators, or their changes / evolutions over time, may correlate with specific diseases. Specifically, the presence and / or evolution of certain proteins may be important for understanding cancer progression. In a particular example, prostate-specific antigen (PSA) and its evolution over time. This may be important in prostate cancer because it has been shown to be an indicator of prostate cancer recurrence.
[0026] However, in most cases, the correlation between the time series of values of each physiological indicator and clinical events (e.g., disease-related) can be complex. For example, a combination of the trends of several different physiological indicators (combinations involving different weights and complex mathematical functions) may be the best predictor of a given clinical event (e.g., disease-related). Such combinations are very complex and may depend on the specific disease, so it may not be practical to prepare a mathematical model (e.g., different or specific) for each clinical event associated with each disease. Healthcare professionals often When making these predictions, healthcare professionals may rely on their own (biased) personal experience by comparing the patient's specific situation to other cases they are familiar with. Such predictions are often inaccurate and can be highly dependent on the healthcare professional's judgment.
[0027] This learning method is an improved solution for training a neural network to predict the timing of clinical events.
[0028] In fact, this learning method provides a method that can be used for any possible clinical events, such as disease-related clinical events. A neural network trained by this learning method can automatically learn to predict the occurrence of clinical events from a training dataset. As an example that is not intended to be limiting, this dataset may be a clinical study for a given clinical event and / or disease. Thus, this learning method can train a neural network that can output predictions of the probability of a clinical event occurring over a certain period, starting from data obtained from a clinical study. Therefore, this learning method eliminates the need to prepare a specific (individual) mathematical model for each different clinical event and provides a unified framework.
[0029] In implementing this learning method, the clinical events may be cancer-related, for example, cancer recurrence or death from cancer. Each physiological indicator may be an indicator that is particularly highly associated with cancer. As an example that is not intended to be limiting, the physiological indicator may be the concentration of a specific molecule (e.g., protein) in the body (e.g., detected by a blood or urine test). Alternatively, the physiological indicator may be the size of a tumor (e.g., diagonal, volume) measured by radiography. The data may be obtained from clinical cancer research. Thus, this learning method can machine-learn / train a neural network to predict cancer recurrence and / or death from cancer, starting from the above measurements.
[0030] Neural networks trained using this learning method can be used by medical professionals. Medical professionals can provide the trained neural network with longitudinal data accumulated over a long period regarding patients (i.e., one or more time series of values for each of the patient's physiological indicators). Thus, medical professionals can use this neural network to measure and / or predict the occurrence of clinical events (e.g., future events) (such as patient death from cancer) with an accuracy unattainable by expert experience-based estimations. Such measurements can be used to obtain indirect measures (indicators) of treatment effectiveness or disease progression. Furthermore, as will be demonstrated in the implementation below, this method can be used to obtain indirect measures (indicators) of tumor size.
[0031] In one implementation, this learning method was tested with a dataset containing time series of values for various physiological indicators in patients with metastatic prostate cancer. Metastatic prostate cancer is an advanced stage of the disease. In this stage, the tumor has spread beyond the tissue surrounding the prostate to other parts of the body. The 5-year survival rate for patients with metastatic prostate cancer is approximately 50%. The data used in the implementation comes from four different studies of patients with metastatic prostate cancer. This data includes both longitudinal variables (such as PSA) and general patient information variables (such as BMI and medical history). Prostate-specific antigen (PSA) is produced by prostate cells. It is a protein that is involved in this process. Fluctuations in blood PSA concentration are important indicators of changes (trends) in tumor size. This is a useful indicator. The dataset used included data on more than 1,000 prostate cancer patients. For each patient, this data included longitudinal data obtained during multiple visits to healthcare professionals, discretized on a daily basis, and initially included data from clinical research. This corresponds to the start of the study. The clinical event under study is patient death over time. This implementation was able to accurately predict the probability of patient death over time.
[0032] Furthermore, in contrast to prior art algorithms that did not consider the irregularity of the intervals between patient visits in the prediction task, the neural network of this learning method, by its structure, takes into account the temporal (timing) irregularity of the values of each physiological indicator in each time series. This is achieved by a spike neural network. As will be described in detail below in this disclosure, the spike neural network has a temporal dimension and can appropriately process data acquired at irregular time intervals.
[0033] Therefore, neural networks trained using this learning method can predict clinical events more accurately compared to methods of prior art.
[0034] Furthermore, a computer implementation method using a neural network trained according to this learning method is proposed. In this disclosure, this method may be referred to as the “usage method.”
[0035] This method of use involves obtaining one or more time series values of each physiological indicator of a patient over a past period. This method of use further involves applying a neural network to the one or more time series to predict the probability of a clinical event occurring over a given period.
[0036] In implementation, this learning method and this usage method may be combined with each other. In implementation, one of the methods may include steps of the other method (for example, all of the steps of the other method).
[0037] For the reasons stated above, this method constitutes an improved solution for predicting patient clinical events. This method can be used to accurately predict the timing (occurrence time) of clinical events.
[0038] In implementations, a clinical event may be a recurrence of a disease such as cancer. Cancer recurrence can be characterized and measured, for example, by the reappearance or progression of malignant cells following a period of remission. Thus, this method of use may be used to measure the progression of malignant cells. In other implementations, a clinical event may be the death of a patient.
[0039] Such implementations could be used, for example, by medical professionals. This could allow them to measure the effectiveness of treatment by providing predictive analyses of the impact of treatment on cancer recurrence and / or patient mortality.
[0040] In this disclosure, and as is known in machine learning, a neural network can be defined by its architecture, parameters, and hyperparameters. The architecture consists of multiple layers, beginning with an input layer in which the number of neurons is equal to the dimension of the input data. Following the input layer, there may be multiple hidden layers with a given number of neurons and activation functions. These layers and neurons define the depth and width of the network. The neural network may include, for example, activation functions between layers that can introduce nonlinearity into the model. The output layer may have as many neurons as there are variables in the output data. In implementations, the output layer may contain one neuron for each time point considered in that period. The interconnections between these layers define the topology of the neural network. The parameters of a neural network are learnable weights and biases, which are determined / configured / modified during the training process. In contrast, hyperparameters The parameters are predefined values / settings that are not learned from the training data. These include the number of hidden layers, the number of neurons per layer, etc.
[0041] The main differences between spiking neural networks (SNNs) and conventional neural networks The difference lies in the structure of each artificial neuron cell. A spiking neural network is composed of spiking neurons. Spiking neurons more faithfully model biological neuron cells and can handle temporal data. This learning method and its usage leverage this ability to handle temporal data to account for the irregularities in each time series of values for each physiological indicator of a patient. This ability to handle temporal data allows the neural network trained (according to this learning method) to make more accurate predictions compared to models of prior art. Each spiking neuron receives a signal containing a series of spikes as input and outputs it. Spiking neurons use a membrane potential system that is strongly influenced by the mathematical model of biological neurons. Spiking neurons have thresholds used to determine when and / or whether a spike should be fired.
[0042] In this disclosure, a spiking neural network (SNN) is defined as having the architecture The architecture can be defined by parameters and hyperparameters. The architecture consists of (hidden) layers of spiking neurons that communicate via discrete events (spikes) rather than continuous activations. The number of (hidden) layers and the number of neurons per layer may vary depending on the implementation and may be determined after several benchmarks (e.g., depending on the training dataset or clinical events). The first layer of the spiking neural network may be the input layer, where each neuron may correspond to a dimension or feature of the input data. Following the input layer, one or more hidden layers of spiking neurons process the input signals.
[0043] In this disclosure, each spiking neural network and each spiking neuron constituting the spiking neural network have a temporal dimension. The temporal dimension may be discretized and may depend on multiple time points. The difference between consecutive time points (time intervals, as used herein) may be constant, thereby ensuring that the time points are evenly distributed over a period of time. At each time point, each spiking neuron can receive spikes as input from one or more connected spiking neurons and / or provide spikes as output to connected spiking neurons. Discretization, i.e., the length of the time interval, may depend on the specific implementation.
[0044] In implementation, each method of this disclosure processes past periods before inputting each time series into the SNN. This may include normalizing each time series of acquired values for each physiological indicator of a patient in the time direction. Normalization means that all time intervals, i.e., differences between consecutive time points, can be multiples of a base time interval. Normalization may include approximating each time point to the nearest time point consisting of multiples of the base time interval. The base time interval may be one day or more, or one week or more (e.g., one day or one month). In such implementations, the time series may be provided as input to a neural network trained by this learning method and / or usage method, and as described above, the base time interval is the time interval used in the SNN. This may be the same as the above. Alternatively, in other implementations, the neural network may include normalizing each time series of values for each physiological indicator of the patient over a past period provided as input in the time direction.
[0045] In this disclosure, each given spiking neuron may have a time-dependent internal memory (e.g., membrane potential). The memory may be represented as a real number and may contain information about the number of past spikes received by the spiking neuron. may decay over time, whereby a spike received further in the past may have a smaller contribution to the memory.
[0046] In the implementation of the method of the present disclosure, each given spiking neuron depends on the time variable t membrane potential U t may be provided, and at each time t the value [Math.]] may be output (for example, if S t = 1, the neuron fires a spike, and if S t = 0, it does not fire a spike). The membrane potential U t and the output S t can be updated at each time step as follows. [Math.]] Here, It+1 is the sum of all spikes received at time point t+1 (or equivalently, the sum of all quantities Sj of each spiking neuron t + 1), and this sum is over all spiking neurons connected (in the forward direction) to a given spiking neuron. [Math.]] is the decay coefficient. U th is the threshold.
[0047] Figure 3 shows an illustration of a spiking neuron.
[0048] In the implementation of the method of the present disclosure, each spike can contribute a value of 1. In other words, each spike can be encoded as the emission of a value of 1. For example, when a spiking neuron outputs a spike, the function S defined above t may be 1, otherwise S t may be 0.
[0049] In other implementations of the method of this disclosure, each spike may be a positive or negative spike. A positive spike may contribute a value of 1, while a negative spike may contribute a value of -1. In other words, each positive spike may be encoded as an emission of a value of 1, and each negative spike may be encoded as an emission of a value of -1. In the formula, if the spiking neuron outputs a positive spike at time t, then the function S defined above is used. t It may be 1, and if the spiking neuron outputs a negative spike at time t, S t It may be -1, otherwise S t It may be 0. In such an implementation, each given spiking neuron has a positive threshold
number
number
number
[0050] In yet another implementation of the method of this disclosure, each spike may be associated with a numerical value (e.g., an integer or any other subset of a real number) and contribute to the sum It above with a value equal to the associated numerical value, and the spiking neural network may have a separate threshold for each different numerical value that may be associated with a spike.
[0051] Therefore, in this disclosure, a spiking neuron can receive a signal as input and provide it as output. The signal is a sequence indexed by time t. These may be intervals, and their length may be the number of time points, recording at each time point whether the associated spiking neuron outputted a spike (and if so, what kind).
[0052] Figure 4 illustrates a signal that includes several spikes.
[0053] In some implementations, a signal may be represented by a binary sequence, for example, where each value in the sequence is either "0" or "1". In such an implementation, the value 0 may correspond to the absence of a spike, and 1 to the presence of a spike. In other implementations, a signal may be represented by a sequence of values, where each value is one of a list containing "0", "-1", and "1". These values may correspond to the absence of a spike, a negative spike, and a positive spike, respectively. In yet another implementation, a signal may be a sequence of numbers identifying the associated spike.
[0054] The learning method includes obtaining a training dataset of training samples. The training dataset is used to train a neural network using machine learning, as described below in this disclosure. Each training sample includes one or more time series of values for each physiological indicator of a patient over a past period. Each training sample is associated with a patient and may be associated with one or more physiological indicators, and includes a time series of values for each physiological indicator of the patient. The time series of values may be obtained by repeatedly measuring the patient's physiological indicators over time, as described above, and this time series also includes the time point in time when each value was obtained. These values were obtained over a past period, i.e., each time point is within the past period. These values may be obtained, for example, by a medical professional, for example, by measuring them using a medical measuring device. Any training dataset in this specification may include a large number, for example, more than 10,000 or more than 50,000 training samples.
[0055] Each training sample further includes the corresponding ground truth regarding the timing of a clinical event. That is, each training sample includes information on whether a clinical event occurred for the patient associated with that training sample (e.g., whether there was a cancer recurrence or whether the patient died). If the clinical event occurred, the training sample includes the timing of the clinical event. During training, the results of providing one or more time series to the neural network are compared with the ground truth, so the ground truth is used in training the neural network. It is important.
[0056] In implementation, obtaining a training dataset for training samples may involve data preparation and / or data preprocessing. In fact, different clinical studies may involve different physiological indicators, and large amounts of data may be missing.
[0057] In implementation, the past period may be a time window (e.g., the duration of a clinical trial / research study) and may be fixed. The time window may include two dates, a start date and an end date, separated by a certain period (span). This period may be longer than one year, for example, longer than one year, or five years.
[0058] Acquisition of a training sample training dataset may include reading at least a portion of the training dataset from memory (e.g., local or remote) or receiving at least a portion of the training dataset thus acquired (e.g., from a remote system). This acquisition may include acquiring at least a portion of the training dataset by measuring physiological indicators of a patient and recording the occurrence of clinical events in that patient. This acquisition may include acquiring at least a portion of the training dataset from a clinical trial / study.
[0059] The training dataset obtained using this learning method consists of training samples, each containing one or more time series of values for each of a patient's physiological indicators. Each physiological indicator may be associated with a clinical event (for example, each physiological indicator may be appropriate for the clinical event being predicted). That is, the values of the physiological indicators (e.g., measured values) may be correlated with clinical events, and may not be independent, for example. Since a machine learning / trained neural network using the training dataset can learn its correlations, it may be important to use only physiological indicators related to clinical events. Therefore, predictions made by the machine learning-trained neural network may be based on these correlations. In fact, using irrelevant indicators may lead to learning purely random correlations, potentially biasing the neural network in an undesirable way.
[0060] In implementation, the training dataset obtained by this learning method may include an ID for each training sample, where this ID corresponds to a patient. This may enable the neural network to associate different values of physiological indicators for the same patient and predict the same clinical event. Each training sample of this learning method may further include baseline data for the patient. Baseline data may include any patient-dependent data that can be used to predict clinical events, which may remain relatively constant over time or change over time independently of a particular patient (e.g., patient age). For example, baseline data may be data that changes similarly for each patient (e.g., linearly for each patient, such as patient age). Non-limiting examples of baseline data include age, sex, BMI, height, and genetics. This may include a patient profile, medical history, and / or other (Boolean) values related to the patient's condition prior to the clinical study. Baseline data is patient-dependent and not dependent on a specific point in time. Baseline data may enable neural networks to predict clinical events more accurately.
[0061] This method was implemented and a training dataset was obtained. This training dataset can be visualized in tabular format and consists of the following table. [Table 1]
[0062] This learning method involves training a neural network based on a training dataset. Training the neural network (or equivalently, machine learning) involves providing entries (e.g., training samples) from the training dataset (obtained by this learning method) as input to the neural network. Each entry in the training dataset contains one or more time series of values for each physiological indicator of a patient over a past period (e.g., each time series is part of the columns corresponding to patients in the table above). Each time series of values is processed through the neural network by multiplying the values by weights, applying an activation function, and combining the results across layers. Since the neural network includes a SNN, this processing may include a temporal dimension. In the implementation, each entry may also include baseline data of the patient, and the baseline data may also be processed through the network as described above. The input layer for baseline data may be different from the input layer for time series data. Training may then involve comparing the output of the neural network to the ground truth of the timing of clinical events included in the training samples. This comparison may involve calculating / incorporating an error. This comparison may involve outputting an error based on a loss function. The loss function can quantify the difference between the prediction and the expected outcome. This error (e.g., the output error) is then used for backpropagation through the network, leading to adjustments of the weights to minimize the error. To efficiently converge toward the optimal set of parameters, various optimization solvers, each with its own set of hyperparameters, may be employed during the training process. Thus, as is known from the field of machine learning, training a neural network (e.g., the neural network in this learning method) involves adjusting the network's weights, biases, and other parameters so that the processing of the input accurately predicts the occurrence of a clinical event.
[0063] The neural network in this learning method is trained to accept the same type of input used during training, namely one or more time series of values for each physiological indicator of a patient over a past period. If baseline data was used during training, the trained neural network may further accept the baseline data as input.
[0064] The neural network in this learning method uses ground to during training It is trained to output predictions of the same type as Ruth, namely, predictions of the occurrence of a clinical event over a period (e.g., future events). This prediction includes the probability (e.g., confidence level) of the clinical event occurring over a given period. This period may be equal to (e.g., the same as) the period used for each time series (e.g., time window, length of clinical trial / study), or it may be shorter. In an implementation, training the neural network may involve setting a certain period (e.g., a number of days or years, e.g., less than 3 years or 5 years). This period may correspond to or be shorter than the time window for the time series. In such an implementation, the trained neural network may output the probability of a clinical event occurring at each point in time (e.g., each day or each month) within that period. The sum of all probabilities across all points in time may be 1 (this indicates that a clinical event is expected to occur within that period).
[0065] Training this learning method may involve minimizing a loss (e.g., a loss function). This loss may penalize each training sample for the difference between the prediction output by the neural network for that training sample and the ground truth for that training sample. The loss function may be a distance, or any function that computes the difference and / or comparison between the output and the ground truth (e.g., based on mean squared error and / or mean absolute error). In an implementation, the loss (e.g., loss function) that can be minimized by this learning method may be of the following type (i.e., given by the following formula):
number
number
number
number
number
number
number
number
number
[0066] In the implementation of this learning method and / or this usage, the neural network may consist of several modules (e.g., a spike neural network, additional modules, and / or additional layers to the spike neural network). In such an implementation, training the neural network may involve training each of the modules, for example, adjusting the weights, biases, and other parameters of each of the modules. These modules may all be trained together simultaneously during the training of the neural network.
[0067] Figure 5 shows an example implementation of the neural network trained in this learning method and usage method. The neural network in this implementation consists of several modules, including an encoding layer 50, a longitudinal data processing module 51 which may be an SNN, a baseline data insertion module 52, and a final processing module 53.
[0068] In the implementation of this learning method and / or usage, the neural network may include, in addition to the SNN, one or more functions and / or one or more layers that may form additional modules, for example. The SNN outputs one or more signals, each containing a series of spikes. It can be configured in such a way. The additional module outputs a series of spikes from the SNN. It can be configured to accept signals as input. The additional module can output predictions, i.e., predictions of the probability of a clinical event occurring over a certain period. The additional module can be trained concurrently with the SNN.
[0069] The additional module includes transformation functions for each spiking neuron in the final layer of the SNN. Often, each transformation function takes the output of the corresponding spiking neuron as input and gives a scalar as its output. This transformation function can be important because the output of each spiking neuron (i.e., a signal containing a series of spikes) may not be directly processed by later layers of the neural network (e.g., layers of additional modules). These later layers may assume a scalar (e.g., a vector of scalars) as input. In implementation, the transformation function may also be a frequency function. A frequency function may take a signal as input that contains N spikes occurring within a total of T time points and return the frequency of the spikes, i.e., N / T. For example, if a signal contains 20 time points and 15 spikes occur within these time points, the transformation / frequency function may give an output of 15 / 20 = 0.75. Figure 4 shows an example of a signal with 10 spikes over 20 time points. In this case, the transformation / frequency function may give an output of 10 / 20 = 0.5. Therefore, the frequency function can take values in the range [0,1], but variations of the transform / frequency function may be used in other implementations. The additional module may include a fully connected layer, which takes the output of the transform function as input. Additionally or alternatively, the additional module may include a survivor neural network (e.g., the survivor neural network described in EP4057297A1, which is incorporated herein by reference).
[0070] Additional modules that may be included in the neural network of this method and / or that can be learned by this learning method may apply a softmax function to output predictions. That is, an additional module may include a softmax function that takes the output of the previous layer as input and gives a prediction as output. In the implementation, the softmax function may be applied in the last step (e.g., the last layer) within the additional module. The output of the softmax function is a probability distribution. In the implementation, such a probability distribution may also be the output of the neural network, that is, this probability distribution may be the probability of a clinical event occurring over a period of time. In the implementation, the output of the softmax function may, for each time point, show the probability of a clinical event occurring at that time. For example, an additional module may include a fully connected layer and / or a survival network, and the output of the fully connected layer and / or the survival network may be used as input to the softmax function.
[0071] In one example, this learning method could be used to machine-learn / train a neural network to predict the occurrence of clinical events (e.g., death) over a 300-day period. The SNN may have, for example, two hidden layers, each containing 100 neurons. The module may have a final layer, which has 300 neurons, each corresponding to one day out of 300. An additional module may include a softmax function that can output the probability of a clinical event occurring on each of the 300 days. In the implementation, the hyperparameters and training parameters of the neural network may be as follows: [Table 2] Such an implementation was used in the aforementioned implementation for a dataset containing time series values of physiological indicators in patients with metastatic prostate cancer.
[0072] Therefore, the additional module is output by the spiking neuron (that is, The signals (output by the SNN) are converted, and these scalars are converted. By processing the data and applying the softmax function, a probability distribution over time can be created. Therefore, the additional module can interpret the output of the SNN and make it understandable to the user. It can be converted to an output.
[0073] The additional module may also be configured to accept baseline data as input. The baseline data may be received as input by the last layer of the additional module, as shown in module 52 in Figure 5. In the implementation, the fully connected layers and / or survivor neural network that may be included in the additional module may take the baseline data as input, in addition to the output of the SNN (which may have been processed with the transformation function discussed above). You may accept it as is. The additional module consists of the output of the SNN made up of spikes and the base layer This can be beneficial because it allows for the actual prediction of clinical events when combined with in-data. The ability to consider both longitudinal and baseline data within the same algorithm is an improvement over prior art models. Most prior art models do not, and cannot, consider both longitudinal and baseline data simultaneously.
[0074] The neural networks used in this method of use and / or trained using this method of learning may include an encoding layer configured to take as input one or more time series of values for each physiological indicator of a patient over a past period and encode each time series into a corresponding signal, i.e., a sequence of spikes. The encoding layer may be important because, while the time series of values for each physiological indicator included in the training dataset and / or provided as input to the trained neural network may include continuous real values, the SNN included in the neural network may assume a signal as input, i.e., a sequence of spikes (which may be encoded as a binary / ternary signal) as input.
[0075] The encoding layer has a significant advantage in breaking the convention that "spiking neurons always receive spike sequences as input," and the fact that spiking neurons are used to encode data for other spiking neurons.
[0076] In implementations of this learning method and / or usage, the encoding layer may include a layer that is trained concurrently with the neural network. That is, the training of the neural network included in this learning method may additionally include training of the encoding layer (i.e., tuning of weights and other parameters). Training the encoding layer concurrently with other parts of the neural network may have the advantage that the weights and parameters are automatically determined by training and do not need to be configured manually. The training process may automatically find the optimal weights and parameters to be used in the encoding layer. During the training process, the weights of the encoding layer may be adjusted to improve the encoding.
[0077] Alternatively, in this learning method and / or other implementations of this usage, the encoding layer may consist of pre-trained modules that are trained independently of (and before) the neural network. The encoding layer may be trained using a training dataset, which includes time series of values for each physiological indicator of a patient and the ground truth of the encoded spikes. Training the encoding layer independently may have the additional advantage of allowing the same encoding layer to be used with different neural networks.
[0078] Alternatively, in other implementations of this learning method and / or this usage, the encoding layer may be a deterministic layer, i.e., a layer that is not learned during the training process.
[0079] In the implementation of this learning method and / or usage, the encoding layer may include delta modulation. Delta modulation may be a technique inspired by how the retina senses changes in the field of view and transmits a signal only when a change is perceived. If no change is detected, no signal is transmitted. Delta modulation is based on this premise and may be designed to analyze time-series variations to create a binary signal.
[0080] In implementations of this learning method and / or usage, delta modulation may involve calculating the difference between the value at each time point and the value at the previous time point, given a time series of values for a patient's physiological indicators over a past period. If the difference (or the absolute value of the difference) is greater than a given threshold, a spike is output at that time point. Otherwise, no spike is output. In implementations, each spike may be a positive or negative spike. In such implementations, a positive spike is output at a time point if the difference is greater than a given positive threshold, and a negative spike is output at a time point if the difference is lower than a given negative threshold. In implementations, the given threshold may be determined in various ways, for example, by using the mean and standard deviation of the difference.
[0081] The neural network trained using this method, and the encoding layer including delta modulation that may be included in the neural network used in this method, can be implemented as follows: The time series is a sequence of real values.
number
number
number
[0082] The encoding layer is sequence
number
number
number
number
number
number
[0083] In the implementation, the above threshold t is
number
number
number
number
number
[0084] Figure 6 shows delta modulation applied to a time series consisting of a Gaussian function with noise (e.g., the sum of a Gaussian function and a white noise function) and a time series consisting of a white noise function. As can be seen, delta modulation successfully extracts the trend of fluctuations in both positive and negative spikes in the case of the Gaussian function, with very few spikes due to noise. However, delta modulation is not very suitable when the time series is a white noise function. In the latter case, the time series as a whole is stationary, but it is encoded with some spikes. This encoding with some spikes is due to threshold bias. In fact, the threshold is determined using the mean and standard deviation of the difference sequence.
[0085] Alternatively, the encoding layer may be a deterministic layer, i.e., a layer that is not learned during the training process. The encoding layer may be obtained according to the encoding method described later in this disclosure. That is, in the implementation, the learning method and / or the usage method may include an encoder according to the encoding method.
[0086] Further computer implementations for encoding time series of values of physiological indicators of patients are provided. In this disclosure, these methods may be referred to as “encoding methods.”
[0087] This encoding method includes obtaining a time series of values for a patient's physiological indicators. The encoding method further includes obtaining the slope coefficient of the value time series at each point in time. The slope coefficient is obtained based on (e.g., calculated using) the current point in time (e.g., based on the value of the physiological indicator associated with that point in time), a predetermined number of previous point in time (e.g., based on the value of the physiological indicator associated with a predetermined number of previous point in time), and a predetermined number of subsequent point in time (e.g., based on the value of the physiological indicator associated with a predetermined number of subsequent point in time). The encoding method further includes comparing the slope coefficient at each point in the value time series with a reference slope coefficient. The comparison of slope coefficients includes encoding the point in time as a spike if the calculated slope coefficient is greater than the reference slope coefficient in absolute value. The comparison of slope coefficients further includes encoding the point in time as no spike if the calculated slope is less than the reference slope in absolute value.
[0088] Therefore, this encoding method takes a time series of values of a patient's physiological indicators (which can be represented, for example, as a vector of real numbers where the index of the vector corresponds to a time point) as input and outputs an encoded sequence (e.g., a signal), the encoded sequence consisting of a series of spikes. Thus, this encoding method can be used to implement an encoding layer in a neural network, for example, the encoding layer described above. In this way, this encoding method may further include providing a time series of encoded values of the patient's physiological indicators to a neural network (e.g., encoding one or more time series of values for each of the patient's physiological indicators and providing each encoded time series as input to the neural network). The neural network may include a spike neural network, which predicts the timing of clinical / medical events (clinical events). The neural network may be a neural network trained in this learning method and / or a neural network of this usage method. Therefore, in an implementation, the encoding method may be combined with the learning method and / or the usage method (or a step of either method), thereby the encoding method may include or be included in either method. In such an implementation, each time series of the respective physiological metrics of the learning method and / or the usage method may be preprocessed by the encoding method. In other implementations, the encoding method may be used to implement an encoding layer in another neural network (which may or may not include a SNN) that requires a series of spikes as input.
[0089] This encoding method is an improved solution for encoding time series values of patient physiological indicators.
[0090] In fact, unlike prior art encoding methods such as the delta modulation method described above, this encoding method mitigates the effects of unwanted noise in the data. Unwanted noise in the data may be caused by the medical measuring device used to obtain values of the patient's physiological indicators, or by the measurement process itself. This mitigation was not achieved by prior art methods, such as delta modulation. Instead of simply examining the difference in time series values between two consecutive points in time, this encoding method includes obtaining a slope coefficient based on the point in time, a predetermined number of previous points in time, and a predetermined number of next points in time. In this way, this encoding method can analyze the progression of time series through the slope using data that is close in time.
[0091] This mitigation is particularly effective, as shown in Figures 8, 9, and 10, which will be discussed later. These figures demonstrate the effectiveness of this encoding method in encoding time series without encoding unwanted noise fluctuations.
[0092] The slope coefficient can be the best indicator of data variability, capturing local trends in the data (for example, whether the data changes significantly over time or remains nearly constant). The slope coefficient is calculated based on the current point in time, a predetermined number of previous points in time, and a predetermined number of subsequent points in time. Therefore, the slope coefficient encodes the trend between preceding and succeeding points in time.
[0093] Furthermore, flexibility in the selection of methodological parameters (selection of criteria, selection of time windows to consider) can enable a more appropriate interpretation of data encoding.
[0094] Acquisition of time series values of patient physiological indicators using this encoding method may include reading at least a portion of the time series from memory (e.g., local or remote) or receiving at least a portion of the time series thus acquired (e.g., from a remote system). This acquisition may include directly acquiring at least a portion of the time series by measuring patient physiological indicators and recording the occurrence of clinical events in the patient. This acquisition may include acquiring at least a portion of the time series from clinical trials / studies.
[0095] This encoding method includes obtaining the slope coefficient of the time series of values at each point in time based on that point in time. That is, this encoding method includes calculating a slope coefficient, such as the slope coefficient of a straight line, at each point in time of the time series. The slope coefficient is based on the current point in time, a predetermined number of previous points in time, and a predetermined number of subsequent points in time.
[0096] The time points preceding / following a predetermined number may be the time points immediately preceding / following the predetermined number, that is, the set of time points located immediately preceding / following that time point, and whose number of elements (cardinality) is the predetermined number (for example, a positive integer).
[0097] The time points before and after a given number may each be non-negative integers. The time points before and after a given number may be equal to or different from each other. In the implementation, The previous / next time point of a given number does not have to depend on the base time point (reference point), and may, for example, always be the same integer (for all time points, this integer may depend only on the "previous" or "next," or it may be independent of the "previous" or "next"). In other implementations, the previous / next time point of a given number may depend on that time point. In such implementations, the previous time point of a given number may, if possible (i.e., at least k p (Always if there is a previous point in time) several k p (For example, k p(where is a non-negative integer) may be, otherwise, it may be the number of a previous time point. Similarly, in such an implementation, the next time point of a given number is, if possible (i.e., at least k n (If there is a next point in time, then always) several k n (For example, k n (wherein it may be a non-negative integer), or if not, it may be the number of the next existing time point. In mathematical formulas, the time series is, as already mentioned above, a sequence.
number
number
number
number
[0098] Therefore, in implementation, the slope coefficient may be based on / calculated on a set of time points including a given time point and the time points immediately preceding and following it. In the formula, the time series is, as already mentioned above, a sequence.
number
number
[0099] In the implementation, the slope coefficient may be the slope coefficient of a straight line. This straight line may be the optimal straight line that describes a set of time points including the current time point, a predetermined number of previous time points, and a predetermined number of next time points (for example, consisting of ). Therefore, in the implementation, this encoding method is a set of time points
number
[0100] Figure 7 shows a two-dimensional space containing points (indicated by crosses) representing time-series values, where each point has a time point and a value as coordinates. Figure 7 also shows line segments at each time point, which represent the straight lines discussed above based on each time point and show the slope coefficient.
[0101] In this encoding method, obtaining the slope coefficient of the time series of the value at a given time may involve calculating a linear regression on the time series values including the current time, a predetermined number of previous time points, and a predetermined number of next time points. The linear regression may be a linear least-squares regression, that is, the linear regression may be a straight line that best approximates the data with respect to the mean squared error. Therefore, in the implementation, for each time point t0, this encoding method may involve calculating the slope coefficient of the time series t0
number
[0102] Since linear regression can be the best possible straight line describing the data (and the indicators / errors) considered, calculating linear regression at each point in time can be advantageous. Therefore, the slope of the linear regression can be the best descriptor of the local trend in the time series.
[0103] This encoding method further includes comparing the slope coefficient with a reference slope coefficient at each point in the time series of values. The comparison includes the following: • If the calculated slope coefficient exceeds the reference slope coefficient in absolute value, encode that point in time as a spike, and If the calculated slope is lower than the reference slope in absolute value, encode that point in time as having no spike.
[0104] In other words, this encoding method may include comparing the fluctuation trend, given by the slope coefficient, with a baseline fluctuation trend at each point in the time series of values. This encoding method may further include encoding with spikes if the fluctuation trend is greater than the baseline fluctuation.
[0105] In mathematical formulas, time series are sequences as already mentioned above.
number
number
number
number
[0106] Each spike in this encoding method may be either a positive or negative spike. The comparison between the slope coefficient and the reference coefficient in this encoding method may further include the following: • If the calculated slope coefficient exceeds the positive reference slope coefficient (for example, the reference slope coefficient in absolute value), encode that point in time as a positive spike, and, If the calculated slope coefficient falls below the negative reference slope coefficient (for example, the reference slope coefficient with its sign reversed in absolute value), encode that point in time as a negative spike.
[0107] In other words, this encoding method may further include comparing the fluctuation trend, given by the slope coefficient, with the baseline fluctuation at each point in the time series of values. This comparison may take into account whether the fluctuation trend is increasing or decreasing. This encoding method may further include encoding with spikes if the fluctuation trend is higher than the baseline fluctuation.
[0108] In mathematical formulas, time series are sequences as already mentioned above.
number
number
number
number
[0109] The reference slope of this encoding method (for example, m above) refThe quantity referred to as can be 1, or it can be the quotient of the maximum amplitude of the time series value and the maximum time amplitude. That is, the reference slope coefficient can be adapted to the variation of the time series of data. In implementations, the time series of data may not be normalized, and in such implementations, it may be beneficial to consider the maximum variation of the time series in order to define the reference slope coefficient.
[0110] In the above formula, the reference slope coefficient is m ref = 1 is also acceptable. Alternatively, the patient's physiology Time series of values of academic indicators
number
number
number
number
[0111] Figure 8 shows the results of implementing this encoding method. Figure 8 considers the same time series as Figure 6. Figure 8 shows the encoded spikes generated by the implementation of this encoding method. The encoded spikes shown in Figure 8 better describe the curve's fluctuations than those shown in Figure 6. For example, in Figure 8, the increasing and decreasing trends of the Gaussian function with noise are correctly encoded. Furthermore, in contrast to Figure 6, i.e., in contrast to prior art methods, specifically delta modulation, there are no noise-encoded spikes in Figure 8. This is an advantage over delta modulation, which may not correctly encode spike data due to data instability caused by noise.
[0112] Furthermore, this encoding method can accurately encode the trend of changes in time-series values, even when localized fluctuations with relatively high amplitudes occur frequently. See Figure 9 for an example.
[0113] Figure 9 shows another example of a comparison between this encoding method and prior art methods, specifically delta modulation. Figure 9 shows a time series containing multiple oscillations. The fluctuation trend of the time series is well captured in the spikes generated using this encoding method, with positive spikes indicating an increasing trend followed by negative spikes indicating a negative trend (decreasing trend). In contrast, delta modulation generates an output that includes alternating positive and negative spikes, and a clear trend cannot be obtained from that output.
[0114] Figure 10 shows the results of the implementation of this method. This implementation used publicly available data from patients with primary biliary cirrhosis. This data was collected by the Mayo Clinic (a US university hospital and research consortium) between January 1974 and May 1984. o Clinic conducted a randomized, double-blind trial on primary biliary cirrhosis (PBC), and D-P The effects of Nishiramine were compared to placebo. PBC is an autoimmune progressive disease, and subsequently The subsequent inflammatory process ultimately leads to cirrhosis and destruction of the bile ducts in the liver. The acquired data includes longitudinal data (1945 rows of data) from 312 patients. Some patients visited the hospital multiple times. Figure 10 shows the encoding of the albumin variable, which corresponds to serum albumin concentration (mg / dl). Albumin is the most abundant plasma protein. In patients with advanced cirrhosis, albumin levels are lower due to a decrease in hepatocyte volume caused by the disease itself. In Figure 10, this encoding method was used with a predetermined number of previous and next time points set to 4. The (positive) baseline slope coefficient is 1, and the negative baseline slope coefficient is -1. As seen in Figure 10, this encoding method allows for a better description of the overall variation (i.e., decrease) of the patient variable than the prior art delta modulation method. In fact, delta modulation cannot correctly encode trends in the variation of the variable.
[0115] This method (e.g., learning method, usage method, and encoding method) is computer-implemented. This means that each step (or substantially all steps) of each method is performed by at least one computer, or any similar system. Thus, each step of each method is performed by the computer, possibly fully automatically or semi-automatically. In the examples, the triggering (starting) of at least some steps of any method may be performed through user-computer interaction. The required level of user-computer interaction depends on the expected level of automation and can be determined in balance with the need to implement the user's wishes. In the examples, this level may be user-defined and / or predefined.
[0116] A typical computer implementation of the method is to perform the method using a system suited to this purpose. This system may include a processor coupled with memory and a graphical user interface (GUI), and the memory contains the necessary components for performing the method. Computer programs containing instructions are recorded in memory. Memory may also store databases. Memory is any hardware adapted to such storage and may consist of several physically separate components (for example, one for programs and possibly one for databases).
[0117] Figure 11 shows an example of a system, which is a client computer system, such as a user's workstation. This example client computer includes a central processing unit (CPU) 1010 connected to an internal communication bus (BUS) 1000, and random access memory (RAM) 1070 also connected to the bus. The system further includes a graphics processing unit (GPU) 1110 associated with a video random access memory 1100 connected to the bus. The video RAM 1100 is also known in the art as a frame buffer. A mass storage controller 1020 manages access to mass memory devices such as a hard drive 1030. Mass memory devices suitable for materializing computer program instructions and data include all forms of non-volatile memory, such as semiconductor memory devices including EPROMs, EEPROMs, and flash memory devices, magnetic disks such as internal hard disks and removable disks, and magneto-optical disks. Any of the above may be complemented by or incorporated into a specially designed ASIC (Application-Specific Integrated Circuit). A network adapter 1050 manages access to the network 1060. The client computer may also include a cursor control device and tactile devices 1090 such as a keyboard. A cursor control device is used in the client computer to allow the user to selectively position the cursor at any desired position on the display 1080. Furthermore, the cursor control device allows the user to select various commands and input control signals. A cursor control device includes multiple signal generating devices for inputting control signals to the system. Typically, the cursor control device may be a mouse, and the mouse buttons are used to generate signals. Alternatively or additionally, the client computer system may be configured to include a sensitive pad (touchpad) and / or a sensitive screen (touchscreen).
[0118] A computer program may consist of instructions that can be executed by a computer, and these instructions include means for causing the system to perform any of the methods described above. The program may be recordable on any data storage medium, including the system's memory. The program may be implemented, for example, in a digital electronic circuit, or in computer hardware, firmware, software, or a combination thereof. The program may be implemented as a device, for example, a product embodied in a machine-readable storage device for execution by a programmable processor. The steps of the method may be executed by a programmable processor that executes a program of instructions for performing the function of the method by manipulating input data to produce an output. Thus, the processor is programmable and may be coupled to receive and transmit data and instructions from a data storage system, at least one input device, and at least one output device. The application program may be implemented in a high-level procedural or object-oriented programming language, and may be implemented in assembly language or machine code as needed. In any case, the language may be a compiled language or an interpreted language. The program may be a complete installation program or an update program. The application of the program on the system in any case results in instructions for performing the method. Alternatively, the computer program may be stored and executed on a server in a cloud computing environment, which communicates with one or more clients over a network. In such a case, a processing unit executes instructions contained in the program, thereby causing this method to be executed on the cloud computing environment.
Claims
1. A computer implementation method for encoding a time series of values of physiological indicators of a patient, Obtaining a time series of values for the physiological indicators of the aforementioned patient, For each point in time of the aforementioned value, the slope coefficient of the time series of the aforementioned value at that point in time is obtained based on that point in time, a predetermined number of points prior to that point in time, and a predetermined number of points after that point in time. This includes comparing the slope coefficient with a reference slope coefficient for each point in the time series of the aforementioned value, and the comparison is performed as follows: If the calculated slope coefficient exceeds the reference slope coefficient in absolute value, that point in time is encoded as a spike. A method comprising: encoding a point in time as having no spikes if the calculated slope coefficient is less than a reference slope coefficient in absolute value.
2. The method according to claim 1, wherein obtaining the slope coefficient includes calculating a linear regression on the values of the time series, which include the time point, a predetermined number of time points prior to the time point, and a predetermined number of time points following the time point.
3. The method according to claim 1 or 2, wherein the reference slope coefficient is 1, or the quotient between the maximum amplitude of the time series value and the maximum time amplitude.
4. Each of the aforementioned spikes is either a positive or negative spike, and comparing the slope coefficient with the reference slope coefficient further, If the calculated slope coefficient exceeds the reference slope coefficient in absolute value, that point in time is encoded as a positive spike, The method according to any one of claims 1 to 3, comprising: encoding a point in time as a negative spike if the calculated slope coefficient is less than the reference slope coefficient with its sign reversed in absolute value.
5. The method according to any one of claims 1 to 4, further comprising providing a neural network, including a spike neural network (SNN), with a time series of encoded values of a patient's physiological indicators for use in predicting the timing of clinical / medical events.
6. A computer program that, when executed by a computer system, includes instructions causing the system to perform the method described in any one of claims 1 to 5.
7. A computer-readable data storage medium recording the computer program described in claim 6.
8. A computer system comprising a processor coupled to memory, wherein the memory stores the computer program described in claim 6.