Disease progression prediction

A computer-based system analyzes patient clinical characteristics over time to predict disease progression more accurately than conventional methods, providing individualized and timely predictions for improved patient outcomes.

JP2025510769APending Publication Date: 2025-04-15SANOFI SA(FR)
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
JP2024556378
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Priority Date
2022-03-25
Filing Date
2023-03-22
Publication Date
2025-04-15

AI Technical Summary

Technical Problem

Current methods for predicting disease progression in patients are often inaccurate and do not account for individual patient characteristics, leading to delayed diagnosis and ineffective treatment.

Method used

A computer-implemented system and method that analyzes clinical characteristics of patients at multiple time points to predict disease progression using predictive models and cluster analysis, providing individualized predictions based on unique patient features.

Benefits of technology

The system offers more accurate predictions of disease progression compared to conventional methods, including timing and stages of progression, thereby improving patient treatment and survival outcomes.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025510769000001
    Figure 2025510769000001
  • Figure 2025510769000002
    Figure 2025510769000002
  • Figure 2025510769000003
    Figure 2025510769000003
Patent Text Reader

Abstract

An implementation is presented for predicting the likelihood that a patient will progress to a particular condition, e.g., an advanced stage of a known medical disease. The implementation provides a predictive model and a cluster analysis method. The predictive model and the cluster analysis method can be run in parallel or in series. Alternatively, only one of the predictive model and the cluster analysis method may be run, e.g., to increase processing speed and reduce hardware resource usage.
Need to check novelty before this filing date? Find Prior Art

Description

[Background technology]

[0001] The likelihood of progression to advanced stages of the disease may vary from patient to patient. A first patient may take years to progress from stage 1 cancer to stage 4 cancer, a second patient may do so in just a few months, and a third patient's cancer progression may never go beyond stage 2. Depending on the likelihood and extent to which the disease may progress in a particular patient, different medical procedures or treatments may be prescribed to the patient. In any case, early diagnosis of the disease can often increase the chances of recovery and reduce the risk of death resulting from the progression of the disease. Summary of the Invention [Means for solving the problem]

[0002] Implementations of the present disclosure include computer-implemented methods and systems for analyzing and predicting the progression of a pathology, such as a particular disease, in a patient. The analysis and prediction are based on the patient's clinical characteristics measured or observed at multiple time points during the progression of the disease. Thus, the present implementations can predict the likelihood of a patient progressing to an advanced stage of the disease based on the patient's current or past clinical characteristics (also referred to herein as "medical characteristics"). The patient's clinical characteristics may include one or more of demographics (e.g., age, sex, place of birth, and area of ​​life), medical history (e.g., past or current diagnoses, medical prescriptions, and medical treatments), biomarker information (e.g., tumor size), BMI, and information regarding the patient's lifestyle (e.g., smoking and drinking habits).

[0003] In some of the present implementations, the predictive model predicts the likelihood of a patient progressing to an advanced stage of disease based on the patient's clinical characteristics measured at one or more time points. The model is trained by using training data including clinical characteristics of a set of training patients. The clinical characteristics of each patient are measured at multiple time points during the patient's disease progression. Once trained, the model can predict the likelihood of disease progression, for example, to a predetermined advanced stage, for a patient, for example, a test patient.

[0004] In some implementations, cluster analysis is performed to find patterns in medical features and thus identify medical features that correlate with disease progression. The results of the cluster analysis can be used to find clinical features associated with disease progression and the proportion of patients associated with such features. The clinical features can be used in predictive models to improve the accuracy of predictions.

[0005] The present disclosure also provides one or more non-transitory computer-readable storage media coupled to one or more processors and having instructions stored thereon that, when executed by the one or more processors, cause the one or more processors to perform operations in accordance with an implementation of the methods provided herein.

[0006] The present disclosure further provides a system for implementing the methods provided herein, the system including one or more processors and a computer-readable storage medium coupled to the one or more processors and having instructions stored thereon, the instructions, when executed by the one or more processors, causing the one or more processors to perform operations in accordance with an implementation of the methods provided herein.

[0007] Methods according to the present disclosure may include any combination of the aspects and features described herein, i.e., methods according to the present disclosure are not limited to the combinations of the aspects and features specifically described herein, but also include any combination of the aspects and features provided.

[0008] Among other advantages, the present implementations provide the following advantages: Because the present implementations train a predictive model based on the progression of a patient, the present implementations provide a more accurate estimate of disease progression for a particular patient as well as providing outcomes such as survival and recurrence rates compared to traditional methods using single or isolated treatments. Additionally, the predictions provided by the present system may include the timing of progression, stage of progression, or any other parameters in predicting disease progression. For example, the system may indicate the timing and accuracy with which a particular patient will progress from one stage of cancer to another (e.g., from stage 1 cancer to stage 2 cancer, from stage 1 cancer to stage 3 cancer, from stage 1 cancer to stage 4 cancer, from stage 2 cancer to stage 3 cancer, from stage 2 cancer to stage 4 cancer, etc.).

[0009] In addition, the present implementation uses the clinical characteristics of the patient in making the prediction. Compared to conventional methods that only consider treatment characteristics such as survival rate and recurrence rate, the present implementation provides a personalized prediction for the patient. The personalized prediction provides an estimate of the likelihood of progression to an advanced stage or progression course of the disease for a particular patient based on medical characteristics unique to the particular patient. The stage of the disease can be predefined and can be a particular stage of the disease, which can be defined based on how far the disease has spread in the patient's body, based on the size of the tumor in the patient's body, based on the medical treatments the patient has as options to treat the disease, based on the medical treatments or drugs the patient has received, etc. The implementation can predict different stages of disease progression based on respective predefined parameters for each stage.

[0010] Implementations can use the predictive model to estimate the likelihood of disease progression. Implementations can also use cluster-based analysis to complement predictive model building by confirming or rejecting features identified by the predictive model. They can check whether results overlap between the two approaches, detect batch effects, and check whether there is any complementary value added. Thus, the two models can be used to confirm, reject, or modify each other's results.

[0011] The details of one or more implementations of the disclosure are set forth in the accompanying drawings and the description below. Other features and advantages of the disclosure will be apparent from the description and drawings, and from the claims. [Brief description of the drawings]

[0012] [Figure 1] 1 illustrates an example system that can be used to perform implementations of the present disclosure. [Figure 2A] 4 is an example process that may be performed by a system according to an implementation of the present disclosure. [Figure 2B] 4 is an example process that may be performed by a system according to an implementation of the present disclosure. [Diagram 3] 4 is an example process that may be performed by a clustering module according to implementations of the present disclosure. [Figure 4] 1 shows a schematic diagram of an example computing device and an example mobile computing device capable of performing the methods described in this disclosure. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0013] Reference characters in the various drawings indicate like elements.

[0014] The present disclosure provides a method and system for predicting a patient's condition, such as the likelihood of progression to one or more advanced stages of a disease. The disease can be any known disease, such as any type of cancer or tumor. In one example, the disease is cutaneous squamous cell carcinoma (CSCC), which is the second most common type of skin cancer in the United States, currently causing approximately 7,000 deaths per year due to advanced stages of the cancer.

[0015] The present implementations can reduce diagnostic delays, thus reducing the likelihood that a patient will progress to an advanced stage of the disease, and increase the treatment and survival rate of the patient. For example, the common diagnostic and treatment procedure for CSCC is that a dermatologist first diagnoses the patient as cancer, and then, depending on the dermatologist's diagnosis, refers the patient to an oncologist. This process is time-consuming and subjective, i.e., dependent on the dermatologist's findings. The present implementations reduce (or eliminate) the impact of both of these problems. The procedures disclosed herein can be used at an early stage of initial diagnosis of the patient's disease, and are not subject to certain physician misdiagnosis or diagnostic delays.

[0016] In some implementations, cluster analysis is used to find patterns in the data and provide details of the features that are important in those patterns. This can be an unsupervised machine learning approach where the machine does not know if the patient has an advanced form of the disease. Any features obtained from the cluster analysis can be major patterns in the data.

[0017] On the other hand, a predictive model can specifically distinguish between progressive and non-progressive forms of the disease. In some implementations, the features identified by the predictive model are compared to the features identified by the cluster analysis. If the features identified in the predictive model overlap with the features identified by the cluster analysis, the model can be recognized as capturing a major pattern in the data. If there is a discrepancy between the features, the predictive model can be modified to reduce (e.g., minimize or eliminate) the discrepancy.

[0018] 1 illustrates an example system 100 that may be used to perform implementations of the present disclosure. The system 100 receives input data 128 and provides output 130. During the training phase, the input data 128 may be clinical characteristics (i.e., medical features) of a set of training patients 102a-102n, and the output data 130 may be a set of identified predictive features or clusters of features. During the intervention phase, the input data may be medical characteristics (i.e., features) of a particular patient, and the output 130 may be a prediction of disease progression for a particular patient, e.g., an estimate of the likelihood that the patient will progress to an advanced stage of a given disease or a prediction of the course at which the patient will progress to an advanced stage of a disease.

[0019] The system 100 includes a data pre-processor module 124, a predictive model module 110, and a clustering module 116. The system 100 may also include a storage 126 and an evaluation module 122. The system 100 may communicate with external devices, such as an external device 132, to send and receive data, e.g., receive input data, store output data, and / or send output for presentation to a user.

[0020] The data pre-processor 124 performs initial operations on the input data, such as cleaning, classification, identifying particular features of interest, etc. The data pre-processor 124 may have one or more sub-modules, such as the cohort generator 104, the time point mapper 106, the feature identifier 108, etc. Some of these sub-modules may only operate during certain phases of operation of the system 100. For example, the cohort generator 104 may only operate during the training phase. The data pre-processor 124 sends the pre-processed data to one or both of the predictive model module 110 and the clustering module 116.

[0021] When the system 100 is in a training phase, each of the predictive model module 110 and the clustering module 116 can use the input data to identify respective predictive features that can be used to predict the likelihood of progression to an advanced stage of the disease for a particular patient. The identified predictive features can be stored in a data storage, which may be part of the system 100, such as the storage 126, or an external device in communication with the system 100, such as the external device 132. When the system is in an intervention phase, each of the predictive model module 110 and the clustering module 116 can predict the respective likelihood of progression to an advanced stage of the disease for a particular patient based on information of the respective features of the predictive model module 110 or the clustering module 116 identified in the training phase.

[0022] In the training phase, the system 100 receives training data in the form of medical characteristics (e.g., F1, F2, ..., Fn) of a plurality of patients, e.g., patients 102a-102n. The medical characteristics of each patient include information indicating whether the patient has progressed to an advanced stage of a particular disease.

[0023] The data pre-processor 124 divides the training data into multiple cohorts of patients. For example, the cohort generator 104 divides the patients 102a-102n into a progressive cohort and a non-progressive cohort. The progressive cohort includes patients whose disease has progressed to a predetermined progressive stage. The non-progressive cohort includes patients whose disease has not progressed to a predetermined progressive stage.

[0024] Each medical feature (F1, F2, ..., Fn) of a patient is a clinical characteristic of the patient that is measured at multiple time points during the patient's disease progression. In the example training data shown in Figure 1, each of the medical features F1-Fn of patient 102a is measured at three time points t0, t1, and t2 during the patient's disease progression. However, there is no limit to the number of time points used to measure, record, or use the medical features.

[0025] Since each patient may have a different disease progression, the time points at which measurements are taken may also be different for the first and second patient. To compare relevant medical features with each other, the time point mapper 106 of the data pre-processor module 124 identifies the absolute time points of interest t0, t1, and t2 and converts them into relative time points T0, T1, T2 of each process with respect to the start and end of the process.

[0026] For example, a first patient's course may take five years to progress from stage 1 to stage 4 cancer, while a second patient's course may take two years to progress from stage 1 to stage 4 cancer. The number and timing of feature measurements and diagnoses made by a first patient during a first course may differ from the number and timing of feature measurements made by a second patient during a second course. Thus, the time point mapper 106 converts absolute measurement times (t0, t1, t2) to relative time points (T0, T1, T2) to enable the system 100 to compare features measured at relative time points for each course.

[0027] Each relative time point is a predetermined time point during the patient's disease progression process. The patient's disease progression process can begin at a particular time period before or after the patient's initial diagnosis of the disease. For example, T0 can indicate an initial point in the process, which can be one year before the initial diagnosis.

[0028] The course can end at a predefined end point. For patients 102a-102n who have progressed to a particular advanced stage of the disease, the end point can be set as when the patient was diagnosed with the advanced stage. For patients who have not yet progressed to the advanced stage, the end point can be defined, for example, as the median end point of the patients who have progressed to the advanced stage. In the above example, T2 can represent the respective end point of the course for each training patient. T1 can be a predefined value between T0 and T2, for example, six months after the initial diagnosis.

[0029] Alternatively or additionally, the mapping from absolute time points to relative time points may be performed before the training data enters the system 100. For example, each of the time points t0, t1, and t2 for patient 102a may actually be a relative time point with respect to the disease progression course of patient 102a.

[0030] Once the relative time points are obtained, the time point mapper 102 selects a predetermined number (e.g., three) or a specific set of time points for the system to focus on features measured at those time points. For example, the specific set may be T0 as the start of the process, T1 six months after initial diagnosis of the disease, and T2 as the end of the process. Thus, if a medical feature of a patient 102j (who is a patient among the training data patients 102a-102n) is measured at multiple time points mapped to time points T0, T1, T2, and T3, the system skips the feature measured at T3. Depending on the desired processing speed and accuracy, the time point mapper 106 may select more or fewer time points. Selecting fewer time points increases processing speed, and selecting more time points increases accuracy in identifying suitable predictive features and estimating the likelihood of disease progression. Alternatively or additionally, an operator may select or be involved in the selection of one or more of the multiple time points.

[0031] The time point mapper 106 can perform the mapping and selection in any order, map first and then select, select first and then map, or map and select in parallel. For example, the time point mapper 106 can select only certain time points of interest (e.g., start of the process, 6 months after initial diagnosis, and end of the process) and map only those specific time points to their respective time points.

[0032] The data pre-processor 124 may also select one or more features from among a number of features included in the training data. For example, the feature selector 108 may select features F1-Fj from features F1-Fn measured on the patient 102a. The data pre-processor 124 may select the same features (e.g., features F1-Fj) for all training patients 102a-102n at the same time points (e.g., time points T0, T1, T2).

[0033] The data pre-processor 124 provides the generated cohorts, e.g., the progressor and non-progressor cohorts, the time points, e.g., time points T0, T1, T2, and the selected features, e.g., features F1-Fj, to the predictive model module 110 and the clustering module 116, respectively. Continuing with the training phase, the predictive model module 110 trains a predictive model by using the pre-processed training data. Training the predictive model includes identifying predictive features. The predictive features may be features that distinguish patients in the progressor cohort from patients in the non-progressor cohort at various time points.

[0034] To determine whether a particular feature in the selected features F1-Fj is a predictive feature, the model-based (MB) feature identifier 112 can identify a first number of patients in the non-progressing cohort who have the particular feature and a second number of patients in the progressing cohort who have the particular feature at each of the selected time points T0, T1, and T2.

[0035] The MB feature identifier 112 obtains a delta value for each time point by calculating the difference between the first and second numbers at that time point. The MB feature identifier 112 determines whether the feature is identified at a particular time point, e.g., T0 and T1, or when moving from a first time point, e.g., T0, to a second time point that is later than the first time point, e.g., T2.

[0036] In some implementations, the MB feature identifier 112 uses an iterative partitioning procedure to partition the patients, e.g., two sets, based on the features that best distinguish between patients who progressed to an advanced form of the disease and those who did not progress to an advanced form. The partitioning may be based on the feature values ​​of each of one or more features. For example, the MB feature identifier 112 may use the features of antiproliferative use and no medication to partition the patients. This is repeated until separate sets of progressor and non-progressor patients are formed or until the patients can no longer be distinguished based on the feature values ​​of a particular feature. The MB feature identifier 112 may apply this procedure iteratively to all features to obtain various combinations of features for distinguishing between progressor and non-progressor patients. The MB feature identifier 112 may also rank the features with respect to their ability to distinguish between progressor and non-progressor patients.

[0037] In some implementations, the module 112 checks whether a particular feature is associated with a target disease in the presence of other features and performs a statistical measurement of the importance of the particular feature, where the importance is determined based on the frequency with which the particular feature occurs among patients suffering from the target disease, or based on the value or range of values ​​of the particular feature among patients suffering from the particular disease.

[0038] In some implementations, the delta value provides additional information regarding the relative importance of a particular feature between multiple time points (e.g., T0-T2). In some implementations, if both the predictive model and the change in the delta value between multiple time points confirm that the particular feature is an indicator of progression in the target disease, the level of importance of the particular feature with respect to the target disease can be confirmed.

[0039] As a first example, if 1000 patients from the progressor cohort and 500 patients from the non-progressor cohort were using drug X at T0, then the delta value of the feature "using drug X" at T0 is 500. If 1500 patients from the progressor cohort and 800 patients from the non-progressor cohort were using drug X at T2, then the delta value of this feature at T2 will be 700. Assuming that T2 is later than T0, the delta value of this feature increased by 40% from T0 to T2 (i.e., (700-500) / 500). Now, if the threshold is 20%, then the MB feature identifier 112 will identify the "using drug X" feature as a predictive feature since a 40% increase exceeds the 20% threshold. However, as a second example, if only 950 patients from the non-progressor cohort were using drug X at T2, then “drug X use” would not be identified as a predictive feature because the increase in delta value from T0 to T2 would be only 10% (i.e., (550-500) / 500).

[0040] In some implementations, the MB feature identifier 112 determines the respective predictive power of one or more of each predictive feature. In some embodiments, the predictive power of a feature can be calculated as the difference between the values ​​of the feature measured at different time points, e.g., T2 and T0, or T1 and T0. In some embodiments, the predictive power can be calculated as the difference normalized by the value of the feature measured at a reference value, e.g., T0. For example, in the first example described in the previous section, the predictive power of the feature "using drug X" is 40% for predicting the medical feature at T2 based on the feature measured at T0. The predictive model module 110 can use the predictive power of each feature in the intervention phase later when using the features to predict disease progression in new patients.

[0041] In some implementations, the MB feature identifier 112 identifies predictive features by using a tree-based approach on the values ​​of each of the medical features received from the data pre-processor 124 to distinguish patients in the progressor cohort from patients in the non-progressor cohort at various time points, e.g., according to procedures described above. The MB feature identifier 112 iteratively makes the distinction based on the values ​​of each of the medical features.

[0042] The predictive model module 110 may store the information of the predicted features in a data storage, such as storage 126, or may transmit the predicted features for presentation on another device, such as an external device 132. The information of the predicted features may include a respective identifier associated with the predicted feature, a predictive power, a time point at which it was measured, etc.

[0043] In the intervention phase, the system 100 receives medical features of a particular patient, e.g., a new patient, and predicts the likelihood that the patient will progress to an advanced stage of the disease. The data pre-processor 124 can optionally pre-process the medical features of the particular patient, e.g., to select specific time points and features that the predictive model 100 uses to identify predictive features. In some implementations, the pre-processed data includes only predictive features for which the data pre-processor 124 can obtain information from the storage 126 or from the predictive model module 110. In some implementations, the pre-processed data includes only a subset of time points that the predictive model 100 used to identify predictive features.

[0044] In some implementations, the system 100 does not use one or more sub-modules of the data pre-processor 124 in the intervention phase. For example, instead of using the feature selector 108, the predictive model module 110 operates from the medical features of a particular patient received by the system 100 and skips medical features that are not associated with any of the predictive features.

[0045] In the intervention phase, the model-based (MB) estimator 114 of the predictive model module 110 can use the predictive model trained in the training phase to predict a model-based likelihood of disease progression for a particular patient. The model-based likelihood can be predicted as an estimate of the likelihood that the disease will progress to a given stage in a particular patient.

[0046] The input data to the MB Estimator 114 are the pre-processed data from the Data Pre-Processor 124 and the predictive features identified by the MB Feature Identifier 112. The output data of the MB Estimator 114 are the model-based probabilities. The MB Estimator 114 generates the output by retrieving, for example from the Storage 126, the information of the predictive features identified by the MB Feature Identifier 112 in a training phase. The MB Estimator 114 then uses the predictive features in a trained predictive model and applies the model to the medical features of a particular patient to estimate a model-based probabilities.

[0047] In some implementations, the MB estimator 114 uses each of the predictive features according to the predictive power associated with the predictive feature. For example, if the MB feature identifier 112 identifies a first predictive feature with a predictive power of 20% and a second predictive feature with a predictive power of 40% for a particular disease, the MB estimator 114 considers the second predictive feature to be a more decisive factor than the first predictive feature in estimating the likelihood of progressing to an advanced stage of the disease.

[0048] The MB estimator 114 may provide the estimated probabilities to an external device, for example, for presentation or storage.

[0049] The clustering module 116 includes a cluster-based (CB) feature identifier 118 that clusters the patients 102a-102n based on a first subset of features, e.g., features F2, F4, ..., F10, measured at a particular time point, e.g., T0 or T2. In contrast to the training phase with the predictive model, the clustering module 116 does not use information about the progression of the patient's disease. For example, the occurrence of advanced or non-advanced CSCC can be hidden from the clustering algorithm. The resulting clusters represent respective subsets of patients sharing a predefined similarity in the first subset of features. In some examples, the features are measured on a binary basis, where similarity means the presence or absence of the feature in the patient, e.g., the presence or absence of medication in the patient. In some examples, the features are measured continuously, where similarity means how closely the feature is presented in two different patients. For example. As another example, the age of the patient at time T0, e.g., one feature indicates a patient aged 30-40 years at T0, and another feature indicates a patient aged 40-45 years at T0.

[0050] From among the generated clusters, the CB feature identifier 118 identifies one or more subsets of clusters each having more than a threshold number of patients whose disease has progressed to a predetermined advanced stage (e.g., 50 patients or 60% of the patients in the cluster). For each cluster in the identified subset of clusters, the CB feature identifier 118 identifies a second subset of each of the features (also referred to as a subset of "key" features) that are common among the patients in the cluster. In some implementations, a feature may be included in the subset of key features if more than a second threshold number of patients in the cluster have the feature, e.g., more than 70% of the patients. In some implementations, a feature may be in the subset of key features if more than a second threshold number of patients in the cluster who have progressed to an advanced stage of disease have the feature.

[0051] The CB feature identifier 118 outputs a second subset of features (i.e., a subset of the key features), which may be sent to the evaluation module 122, stored in storage 126, or sent to an external device (e.g., 132) for presentation or further processing.

[0052] In some implementations, the clustering module 116 uses the output of the CB feature identifier 118 to determine the importance of each feature in the subset of key features with respect to the progression of the disease. For example, the clustering module 116 can overlay the disease-related information (e.g., disease progression) of each patient in the cluster, calculate a delta value for each feature in each cluster, and identify the relative importance of the feature or the correlation of the feature with the progression of the disease based on the change in delta between multiple time points, e.g., T0 to T2. In effect, the clustering module 116 determines the correlation between features observed or measured in patients with an advanced stage of the disease. In some implementations, the features identified as the most important features are selected by the predictive model module 110, e.g., by the evaluation module 122, to validate or confirm the predictive features identified by the MB feature identifier 112.

[0053] In some implementations, the assessment module 122 compares the primary features output from the CM feature identifier 118 with the predicted features output from the MB feature identifier 112 to identify feature mismatches between the primary features and the predicted features. If the assessment module finds a mismatch, for example, a predicted feature is not included in the primary features or a primary feature is not included in the predicted features, the assessment module can make changes to reduce or minimize the mismatch.

[0054] In some implementations, the modification includes editing the predicted features by, for example, removing extra predicted features that were not matched among the key features, adding key features that were not matched among the predicted features, or modifying the values ​​(e.g., age ranges) corresponding to the predicted features to correspond to the respective key features. The evaluation module 122 can retrieve the predicted features from the MB feature identifier 112 or the storage 126. The evaluation module 122 can send the modified predicted features to the storage 126 to replace the previous predicted features. The evaluation module 122 can send the modified or approved predicted features to the MB estimator 114 for use in the likelihood estimation process.

[0055] In some implementations, the modifications (made by the evaluation module 122 after finding a mismatch between the key features and the predictive features) include modifying parameters of the predictive model such that the model also provides predictive features as identified by 118. In some implementations, the parameters of the predictive model are modified such that the predictive features that the modified model identifies match the key features.

[0056] In some implementations, the assessment module 122 evaluates the predictive features based on all key features identified by the CB feature identifier 118. In some implementations, the assessment module 122 evaluates the predictive features based on key features within one or more particular subsets of the key features identified by the CB feature identifier. For example, the particular subset may include the patient's age at T0, use of a particular medication, and Mohs surgery. When evaluating the predictive feature of age, the assessment module 122 considers whether other key features included in the subset (i.e., use of a particular medication and Mohs surgery) are also among the predictive features.

[0057] In some implementations, the assessment module 122 considers the primary features included in each subset as correlated features and adds correlations between the corresponding predictive features as well. In the above example, if the assessment module 122 adds Mohs surgery and use of specific medications to the predictive features, the assessment module 122 can also assign correlations between the three features, Mohs surgery, use of specific medications, and age, based on each subset of primary features.

[0058] The CB feature identifier 118 may identify one or more subsets of key features from a particular cluster. For example, assuming the second threshold number is 70%, if more than 70% of the patients in a cluster have all three features: male, HIV positive, and actin keratosis, the CB feature identifier 118 may create a subset that includes these three key features. If more than 70% of the patients in the same cluster also have the features of being over 50 years old, using a particular medication (e.g., a topical antiproliferative immunomodulator), undergoing a particular medical procedure (e.g., an incisional biopsy of the ear, lip, or eyelid), and being of a particular race, the CB feature identifier 118 may include these four features in another subset of key features formed from the same particular predictive cluster.

[0059] Each subset of key features can be associated with a particular time point associated with when each feature in that subset was measured or observed. For example, a first subset may include the features HIV positivity and actin keratopathy measured at a time point associated with time T0, while a second subset may include the same features HIV positivity and actin keratopathy measured at a later time point associated with time T1. The CB feature identifier 118 can associate each subset of key features with a respective likelihood of progression to an advanced stage of the disease. The CB feature identifier 118 associates the likelihood with a predictive subset of features by contrasting the number of patients who shared the same value (or shared a particular range of values) for the feature in patient groups who progressed to the advanced form of the disease and in patient groups who did not progress to the advanced form of the disease.

[0060] The CB feature identifier 118 can output information of the subset of key features, which can be stored, for example, in storage 126 or an external data storage, or transmitted for presentation to a user, for example, by external device 132. The CB feature identifier 118 can transmit the subset of key features to an evaluation module 122, which can verify the accuracy of the predictive features identified by the MB feature identifier 112, as described above.

[0061] In some implementations, each of the predictive model module 110 and the clustering module 116 transmits its output to an external device 132, e.g., for presentation to a user or for further processing. The predictive model module 110 can transmit the calculated probabilities or the identified predictive features to the external device. The clustering module 116 can transmit a subset of the key features identified from the created clusters to the external device.

[0062] Although the above description provides a method for predicting the likelihood that a patient will progress to a given disease progression stage, a similar approach can be used to predict a timeline of a patient's disease progression. For example, the patient's disease progression to time points T1 and T2 can be estimated based on data measured before time points t1 and t2 associated with T1 and T2, e.g., at time point t0 (associated with time point T0), and the patient's disease progression to time point T2 can be estimated based on data measured before time point t2 associated with time point T2, e.g., at time points t0 and t1 (associated with time points T0 and T1). The more time points the time point mapper 106 selects, the more time points can be used as a timeline reference in predicting the user's likelihood of disease progression.

[0063] The system 100 can suggest medications or medical procedures for the patient based on one or more of the predicted probabilities. For example, based on the progression of the disease in a particular patient and the patient's clinical characteristics, the system can suggest one or more medications or medical procedures that have been found to be more effective or commonly used among training patients 102a-102n who did not progress to an advanced stage of the disease.

[0064] 2A and 2B show example processes 200 and 220 that may be performed by a computing system, such as system 100, according to an implementation of the present disclosure. Process 200 may be performed to provide a set of predictive features for training a predictive model. Process 220 may be performed to predict the likelihood of a patient having or developing a particular disease, or progressing to an advanced stage of a particular disease, based on the predictive features.

[0065] The system receives input data, e.g., as training data, including a set of medical features associated with a set of patients (202). The system can receive the set of medical features through communication with an external device. Each feature in the set of medical features is measured at multiple time points throughout the course of a disease progression for each patient in the set of patients (e.g., 102a-102n).

[0066] The system pre-processes the input data (204). Pre-processing includes mapping time points to respective time points to form cohorts of patients. Mapping includes associating each time point with a respective time point that represents the time point's relative to the patient's overall disease progression course. The cohorts may include a progressor cohort and a non-progressor cohort. The progressor cohort may include patients whose disease has progressed to a predetermined progression stage. The non-progressor cohort may include patients whose disease has not progressed to a predetermined progression stage.

[0067] The system identifies one or more predictive features from the medical features (206), for example, by applying a predictive model to the set of medical features. The predictive features distinguish between progressor and non-progressor cohorts at various time points. To determine whether a particular feature in the set of medical features is a predictive feature for a particular disease, the system calculates the difference between the number of patients with the particular feature in the progressor cohort (or first cohort) and the number of patients with the particular feature in the non-progressor cohort (or second cohort) (208). The system then determines whether the difference between these numbers increases or decreases when moving from the first time point to the second time point. If the difference increases or decreases by more than a threshold (210), the system identifies the particular feature as a predictive feature (212). The module may transmit (214) the predicted features, for example, to store the predicted features in a storage device or to present the predicted features to another device, for example device 132 of FIG.

[0068] In process 220 shown in FIG. 2B, the system receives (222) a patient's medical characteristics, e.g., as test data. The system extracts (224) predictive characteristic information. The system then applies a predictive model to the patient's medical characteristics to predict (226) the likelihood that the patient will develop or have a particular disease, or progress to an advanced form of the disease. The system transmits (228) the likelihood, e.g., for storage or presentation on another device.

[0069] 3 is an example process that may be performed by a clustering module, e.g., 116, according to an implementation of the present disclosure. The module receives a set of medical features (302), e.g., as training data. The module may receive the set of medical features through communication with an external device. Each feature in the set of medical features is measured at multiple time points (e.g., t0, t1, t2) throughout the disease progression of each patient in the set of patients (e.g., 102a-102n).

[0070] The module pre-processes the input data (303). Pre-processing may include mapping the time points to respective time points. The mapping includes associating each time point with a respective time point (e.g., T0, T1, T2) that represents the time point's relative to the patient's overall disease progression course.

[0071] The module clusters 304 patients in the patient set based on, for example, a first subset of features, which may be measured or observed at a particular point in time, with each cluster representing a respective subset of patients sharing a predetermined similarity in the first subset of features.

[0072] The module identifies clusters in which more than a first threshold number of patients have progressed to a particular progression stage (306). The module identifies a second subset of one or more features that are common among patients in the identified clusters (308). The module sets the identified second subset of features as key features associated with progression to an advanced stage of the disease (i.e., a predetermined progression form) (310). The module can transmit the key features (312), e.g., for storage or presentation.

[0073] FIG. 4 illustrates an example computing device 400 and an example mobile computing device that can be used to implement the techniques described herein. For example, the system 100 of FIG. 1 can be in the form of a computing device 400, a mobile computing device 450, or a combination thereof. The computing device 400 is intended to represent various forms of digital computers, such as laptops, desktops, workstations, personal digital assistants, servers, blade servers, mainframes, and other suitable computers. The mobile computing device is intended to represent various forms of mobile devices, such as personal digital assistants, mobile phones, smartphones, and other similar computing devices. The components, their connections and relationships, and their functions illustrated herein are intended to be merely exemplary and are not intended to limit the implementation of the invention described and / or claimed herein.

[0074] The computing device 400 includes a processor 402, a memory 404, a storage device 406, a high-speed interface 408 that connects to the memory 404 and multiple high-speed expansion ports 410, and a low-speed interface 412 that connects to a low-speed expansion port 414 and the storage device 406. Each of the processor 402, the memory 404, the storage device 406, the high-speed interface 408, the high-speed expansion port 410, and the low-speed interface 412 are interconnected using various buses and may be mounted on a common motherboard or otherwise as appropriate. The processor 402 may process instructions for execution within the computing device 400, including instructions stored in the memory 404 or the storage device 406, to display graphical information for a GUI on an external input / output device, such as a display 416 coupled to the high-speed interface 408. In other implementations, multiple processors and / or multiple buses may be used, along with multiple memories and types of memories, as appropriate. Also, multiple computing devices may be connected, with each device providing a portion of the required operations (e.g., as a server bank, a group of blade servers, or a multiprocessor system).

[0075] The memory 404 stores information within the computing device 400. In some implementations, the memory 404 is one or more volatile memory units. In some implementations, the memory 404 is one or more non-volatile memory units. The memory 404 may also be another form of computer-readable medium, such as a magnetic disk or optical disk.

[0076] The storage device 406 can provide mass storage for the computing device 400. In some implementations, the storage device 406 can be or include a computer-readable medium such as a floppy disk device, a hard disk device, an optical disk device, or an array of devices including a tape device, a flash memory or other similar solid-state memory device, or a storage area network or other configuration of devices. The computer program product can be tangibly embodied in an information carrier. The computer program product can also include instructions that, when executed, perform one or more methods, such as those described above. The computer program product can also be tangibly embodied in a computer-readable or machine-readable medium, such as the memory 404, the storage device 406, or a memory on the processor 402.

[0077] The high-speed interface 408 manages the bandwidth-intensive operations of the computing device 400, while the low-speed interface 412 manages the less bandwidth-intensive operations. Such allocation of functions is merely exemplary. In some implementations, the high-speed interface 408 is coupled to the memory 404, the display 416 (e.g., through a graphics processor or accelerator), and a high-speed expansion port 410 that can accept various expansion cards (not shown). In this implementation, the low-speed interface 412 is coupled to the storage device 406 and the low-speed expansion port 414. The low-speed expansion port 414 may include various communication ports (e.g., USB, Bluetooth, Ethernet, wireless Ethernet), but may also be coupled to one or more input / output devices, such as a keyboard, a pointing device, a scanner, or a networking device, such as a switch or router, via a network adapter, for example.

[0078] Computing device 400 may be implemented in a number of different forms, as shown. For example, it may be implemented multiple times as a standard server 420 or in a cluster of such servers. It may also be implemented in a personal computer, such as a laptop computer 422. It may also be implemented as part of a rack server system 424. Alternatively, components from computing device 400 may be combined with other components in a mobile device (not shown), such as mobile computing device 450. Each such device may include one or more of computing device 400 and mobile computing device 450, and the entire system may be comprised of multiple computing devices in communication with each other.

[0079] The mobile computing device 450 includes, among other components, a processor 452, a memory 464, input / output devices such as a display 454, a communication interface 466, and a transceiver 468. The mobile computing device 450 may also be provided with a storage device such as a microdrive or other device to provide additional storage. Each of the processor 452, memory 464, display 454, communication interface 466, and transceiver 468 are interconnected using various buses, and some of the components may be mounted on a common motherboard or in other suitable manner.

[0080] The processor 452 can execute instructions, including instructions stored in the memory 464 within the mobile computing device 450. The processor 452 can be implemented as a chipset of chips including separate analog and digital processors. The processor 452 can provide coordination of other components of the mobile computing device 450, such as, for example, control of the patient interface, applications run by the mobile computing device 450, and wireless communications by the mobile computing device 450.

[0081] The processor 452 can communicate with the patient via a control interface 458 and a display interface 456 coupled to a display 454. The display 454 can be, for example, a TFT (thin film transistor liquid crystal display) display, an OLED (organic light emitting diode) display, or other suitable display technology. The display interface 456 can include appropriate circuitry for driving the display 454 to present graphical and other information to the patient. The control interface 458 can receive commands from the patient and translate them for transmission to the processor 452. Additionally, an external interface 462 can provide communication with the processor 452 to enable short-range area communication between the mobile computing device 450 and other devices. The external interface 462 can provide, for example, for wired communication in some implementations or wireless communication in other implementations, and multiple interfaces can also be used.

[0082] The memory 464 stores information within the mobile computing device 450. The memory 464 may be embodied as one or more of a computer readable medium or media, a volatile memory unit or units, or a non-volatile memory unit or units. An expansion memory 474 may also be provided and connected to the mobile computing device 450 via an expansion interface 472, which may include, for example, a Single In Line Memory Module (SIMM) card interface. The expansion memory 474 may provide additional storage space for the mobile computing device 450 or may store applications or other information for the mobile computing device 450. In particular, the expansion memory 474 may include instructions for performing or supplementing the above processes and may also include secure information. Thus, for example, the expansion memory 474 may be provided as a security module for the mobile computing device 450 and may be programmed with instructions that enable secure use of the mobile computing device 450. Additionally, secure applications may be provided via a SIMM card along with additional information, such as placing identifying information on the SIMM card in an unhackable manner.

[0083] The memory may include, for example, flash memory and / or NVRAM memory (non-volatile random access memory), as described below. In some implementations, the computer program product is tangibly embodied in an information carrier. The computer program product includes instructions that, when executed, perform one or more methods, such as those described above. The computer program product may be a computer-readable or machine-readable medium, such as memory 464, expansion memory 474, or memory on processor 452. In some implementations, the computer program product may be received in a propagated signal, for example, via transceiver 468 or external interface 462.

[0084] The mobile computing device 450 can communicate wirelessly via a communication interface 466, which may include digital signal processing circuitry as needed. The communication interface 466 can provide for communication under various forms or protocols, such as GSM voice (Global System for Mobile Communications), SMS (Short Message Service), EMS (Enhanced Message Service), or MMS messaging (Multimedia Messaging Service), CDMA (Code Division Multiple Access), TDMA (Time Division Multiple Access), PDC (Personal Digital Cellular), WCDMA (Wideband Code Division Multiple Access), CDMA2000, or GPRS (General Packet Radio Service). Such communication can be via a transceiver 468, for example, using radio frequencies. In addition, short-range communication can be performed, such as using Bluetooth, WiFi, or other such transceivers (not shown). In addition, a Global Positioning System (GPS) receiving module 470 can provide additional navigation and location related wireless data to the mobile computing device 450, which can be used as appropriate by applications executing on the mobile computing device 450.

[0085] The mobile computing device 450 can also communicate audio using an audio codec 460 that can receive audio information from the patient and convert it into usable digital information. The audio codec 460 can also generate audible sounds for the patient, such as through a speaker in the earpiece of the mobile computing device 450. Such sounds may include sounds from a voice telephone call, may include recorded sounds (e.g., voice messages, music files, etc.), and may include sounds generated by applications running on the mobile computing device 450.

[0086] The mobile computing device 450 can be implemented in a number of different forms, as shown in the figure, such as a mobile phone 480, or as part of a smartphone 482, personal digital assistant, or other similar mobile device.

[0087] Various implementations of the systems and techniques described herein may be realized as digital electronic circuitry, integrated circuits, specially designed ASICs (application specific integrated circuits), computer hardware, firmware, software, and / or combinations thereof. These various implementations may include implementation in one or more computer programs executable and / or interpretable by a programmable system including at least one programmable processor, which may be special purpose or general purpose, coupled to receive data and instructions from, and transmit data and instructions to, a storage system, at least one input device, and at least one output device.

[0088] These computer programs (also referred to as programs, software, software applications, or code) include machine instructions for a programmable processor and may be implemented in high-level procedural and / or object-oriented programming languages ​​and / or assembly / machine languages. As used herein, the terms machine-readable medium and computer-readable medium refer to any computer program product, apparatus, and / or device (e.g., magnetic disks, optical disks, memory, programmable logic devices (PLDs)) used to provide machine instructions and / or data to a programmable processor, including a machine-readable medium that receives the machine instructions as a machine-readable signal. The term machine-readable signal refers to any signal used to provide machine instructions and / or data to a programmable processor.

[0089] To provide for patient interaction, the systems and techniques described herein can be implemented on a computer having a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the patient, and a keyboard and pointing device (e.g., a mouse or trackball) that allows the patient to provide input to the computer. Other types of devices can also be used to provide for patient interaction, for example, feedback provided to the patient can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback), and input from the patient can be received in any form, including acoustic, voice, or tactile input.

[0090] The systems and techniques described herein may include back-end components (e.g., as a data server), middleware components (e.g., an application server), or front-end components (e.g., a client computer having a graphical patient interface or a web browser that allows a patient to interact with an implementation of the systems and techniques described herein), or may be implemented with any combination of such back-end, middleware, or front-end components. The components of the system may be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include a local area network (LAN), a wide area network (WAN), and the Internet.

[0091] A computing system may include clients and servers. Clients and servers are generally remote from each other and typically interact through a communication network. The relationship of client and server arises by virtue of computer programs running on the respective computers and having a client-server relationship to each other.

[0092] In some embodiments, the method is performed by one or more computer systems. The method includes receiving a set of medical features, each feature in the set of medical features being measured at multiple time points throughout a disease progression course in each patient in the set of patients, mapping each time point to a respective time point representing the relative position of the time point to the overall disease progression course of the patient, forming a progressor cohort and a non-progressor cohort from the set of patients, the progressor cohort including patients whose disease has progressed to a predetermined progression form and the non-progressor cohort including patients whose disease has not progressed to the predetermined progression form, applying a predictive model to the set of medical features to identify one or more predictive features that distinguish the progressor cohort from the non-progressor cohort at various time points, and storing information of the one or more predictive features in a data storage device.

[0093] The method may further include receiving data regarding medical characteristics of the particular patient from the client device, retrieving information of the one or more predictive characteristics from the storage device, applying a predictive model to the data to predict a likelihood that the particular patient will progress to an advanced form of the disease based on the information of the one or more predictive characteristics, and transmitting the likelihood to the client device for presentation. The method may also include applying a predictive model to the data to predict a timeline of disease progression in the particular patient, and transmitting the timeline to the client device for presentation. The method may include suggesting a medication or medical treatment for the patient based on the likelihood.

[0094] The disease progression course of the patient can start from a predetermined period before the initial diagnosis of the patient's disease.The disease progression course of the first patient in the progression cohort can end at the time point when the patient is diagnosed with an advanced form of the disease.The disease progression course of the second patient in the non-progression cohort can end at a time point calculated based on the median duration of the progression course of the patients in the progression cohort.

[0095] The at least one medical characteristic may include a patient's clinical characteristics, which include one or more of age, sex, geographic place of birth, medical diagnosis, prescription information, the patient's medical treatment, biomarker information, BMI, smoking and drinking habits, and laboratory test results.

[0096] The method may further include clustering patients in the set of patients based on a first subset of features measured at a particular time point, each cluster representing a respective subset of patients sharing a predetermined similarity in the first subset of features, identifying clusters in which a number of patients whose disease has progressed to a predetermined progression exceeds a first threshold, identifying a second subset of features that are common among more than a second threshold number of patients in the identified clusters, and associating the second subset of features with the predetermined progression of the disease. The method may also include comparing the second subset of features to one or more predictive features to identify a feature mismatch between the second subset of features and the predictive features, and in response, modifying the predictive model to reduce the feature mismatch. The predictive model may be modified such that one or more predictive features are consistent with the second subset of features.

[0097] The predictive model can identify predictive features using a tree-based approach for each value of the medical features in the set of medical features and distinguish between patients in the progressor cohort and patients in the non-progressor cohort at various time points based on the respective values ​​of the medical features.

[0098] The predictive model can identify a particular feature as a predictive feature by: identifying, at each time point of a plurality of time points, a first number of patients in the non-progressive cohort having the particular feature and a second number of patients in the progressive cohort having the particular feature; calculating, for each time point, a respective delta value between the first and second numbers at that time point; determining that the first delta value calculated for the first time point is greater than the second delta value calculated for the second time point by more than a particular threshold; and in response, identifying the particular feature as a predictive feature.

[0099] Although several implementations of the present disclosure have been described, it should be understood that various modifications may be made without departing from the spirit and scope of the present disclosure. Accordingly, other implementations are within the scope of the following claims.

Claims

1. receiving, by one or more computerized systems, a set of medical features, each feature of the set of medical features being measured at a plurality of time points throughout a disease progression in each patient of a set of patients; Mapping each time point to a respective time point that represents the time point relative to the overall disease progression course of the patient; forming a progressor cohort and a non-progressor cohort from the set of patients, the progressor cohort including patients whose disease has progressed to a predetermined progression form and the non-progressor cohort including patients whose disease has not progressed to a predetermined progression form; applying a predictive model to the set of medical features to identify one or more predictive features that distinguish between the progressor and non-progressor cohorts at various time points; storing information of the one or more prediction features in a data storage device; The method includes:

2. Receiving data from a client device regarding a medical characteristic of a particular patient; retrieving the information for the one or more prediction features from the storage device; and applying the predictive model to the data to predict the likelihood that the particular patient will progress to the advanced form of the disease based on the information of the one or more predictive features; transmitting the possibilities to the client device for presentation; The method of claim 1 further comprising:

3. applying the predictive model to the data to predict a timeline of progression of the disease in the particular patient; transmitting the timeline to the client device for presentation; The method of claim 2 further comprising:

4. The method of any one of claims 1 to 3, further comprising suggesting a drug therapy or medical treatment for the patient based on said likelihood.

5. The method of any one of claims 1 to 4, wherein the disease progression course in a patient begins a predetermined period of time prior to initial diagnosis of the disease in the patient.

6. the disease progression course of the first patient in the progression cohort ends at the time point at which the patient was diagnosed with the progressive form of the disease; The method according to any one of claims 1 to 5, wherein the disease progression course of a second patient in the non-progressing cohort ends at a time point calculated based on the median duration of the course of the patients in the progressing cohort.

7. 7. The method of any one of claims 1 to 6, wherein the at least one medical characteristic comprises a clinical characteristic of the patient, the clinical characteristic of the patient comprising one or more of the patient's age, sex, geographical place of birth, medical diagnosis, prescription information, medical treatment, biomarker information, BMI, smoking and drinking habits, and laboratory test results.

8. clustering patients in the set of patients based on a first subset of features measured at a particular time point, each cluster representing a respective subset of patients sharing a predetermined similarity in the first subset of features; identifying a cluster in which the number of patients whose disease has progressed to said predetermined progression exceeds a first threshold number; identifying a second subset of common features among patients exceeding a second threshold number of patients in the identified cluster; Associating the second subset of features with the predetermined progression of the disease; and The method of any one of claims 1 to 7, further comprising:

9. comparing the second subset of features to the one or more predicted features to identify feature inconsistencies between the second subset of features and the predicted features, and in response: modifying the predictive model to reduce the feature discrepancy; and The method of claim 8 further comprising:

10. The method of claim 9 , wherein the predictive model is modified such that the one or more predictive features are consistent with the second subset of features.

11. 11. The method of any one of claims 1 to 10, wherein the predictive model identifies the predictive feature by iteratively differentiating patients of the progressor cohort from patients of the non-progressor cohort at various time points based on the respective values ​​of the medical features using a tree-based approach for each value of a medical feature in the set of medical features.

12. The predictive model may be configured to: identifying, at each time point in the plurality of time points, a first number of patients in the non-progressing cohort having the particular characteristic and a second number of patients in the progressive cohort having the particular characteristic; calculating, for each time point, a respective delta value between said first number and said second number at that time point; determining that a first delta value calculated for a first time point exceeds a second delta value calculated for a second time point by more than a particular threshold, and in response, Identifying said particular features as predictive features. The method according to any one of claims 1 to 10, wherein the features are identified as predictive features by:

13. A system comprising one or more computers and one or more storage devices having instructions stored thereon, the instructions being operable, when executed by the one or more computers, to cause the one or more computers to perform the method of any one of claims 1 to 12.

14. A computer storage medium encoded with a computer program, the program comprising instructions operable, when executed by a data processing apparatus, to cause the data processing apparatus to perform a method according to any one of claims 1 to 12.