Method and apparatus for generating indicators of smoking history
By using carbon dioxide graph data and machine learning models, respiratory waveform features are extracted to generate smoking history indicators, which solves the problem of the difficulty in accurately assessing an individual's smoking history in existing technologies, and realizes automated and accurate smoking history assessment and cardiopulmonary disease management.
Patent Information
- Application Number
- CN202480024745.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2023-02-21
- Filing Date
- 2024-02-21
- Publication Date
- 2025-11-11
AI Technical Summary
Existing technologies struggle to accurately determine an individual's smoking history, especially in the absence of user reports, which impacts the assessment and treatment decisions for cardiopulmonary diseases.
By using carbon dioxide mapping data, respiratory waveform features are extracted and machine learning models are used to generate indicators of smoking history, such as lung age and pack years. Combined with demographic information and disease labels, users' smoking exposure is automatically assessed.
It provides accurate smoking history assessment, supports the management and treatment decisions for cardiopulmonary diseases, tracks smoking cessation effects, and does not rely on user reports, thus improving the accuracy and reliability of the assessment.
Smart Images

Figure CN120937086A_ABST
Abstract
Description
Technical Field
[0001] This disclosure provides methods for generating indicators of smoking history, methods for training machine learning models to learn indicators of smoking history, and devices and computer-readable media for said methods. Background Technology
[0002] The global tobacco epidemic is considered one of the greatest threats to public health, causing more than 8 million deaths annually, including 1.2 million from exposure to secondhand smoke. The economic costs of tobacco use are enormous, with smoking estimated to cost the global economy $1.4 trillion annually in healthcare expenditures and lost productivity. The health and economic burdens of smoking disproportionately affect countries with low socio-demographic indices, with more than 80% of the 1.3 billion tobacco users residing in low- and middle-income countries.
[0003] Tobacco use is widely recognized as a major contributing factor to respiratory diseases; it is a leading cause of chronic obstructive pulmonary disease (COPD) and lung cancer, and it also adversely affects other respiratory conditions such as asthma, tuberculosis, and pneumonia. These diseases collectively account for the majority of respiratory deaths and morbidities worldwide caused by tobacco. Numerous cross-sectional and longitudinal studies have demonstrated the adverse effects of tobacco use on lung function and respiratory health, although the severity and extent of these changes vary among individuals.
[0004] Capnography is a widely used method for measuring the partial pressure of carbon dioxide in exhaled breath, particularly in intensive care and anesthesia. Continuous monitoring of carbon dioxide levels provides valuable insights into the user's ventilation and airway efficiency, and capnography has become an increasingly popular alternative for assessing lung health. Cambridge Respiratory Innovation's (CRI) N-Tidal device has enabled reliable and non-invasive measurement of CO2 concentration at a greater sampling frequency than previously possible, closer to the mouth and through the airway, making this technology an attractive alternative to current respiratory diagnostic tools such as spirometry.
[0005] To date, it has been shown that the effects of lifetime smoking exposure are difficult to determine. It would be advantageous to provide techniques for determining the severity of damage caused by smoking (e.g., the severity of related diseases), which could then be used to provide treatment options and track changes in cardiopulmonary conditions resulting from smoking cessation.
[0006] Therefore, the purpose of this disclosure is to use carbon dioxide mapping data to determine a user's smoking history, including tobacco use, cannabis use, and e-cigarette use. Summary of the Invention
[0007] According to a first aspect, this disclosure provides a method for generating an indicator of smoking history from one or more carbon dioxide waveforms generated by a user, the method comprising: obtaining one or more breathing waveforms from the one or more carbon dioxide waveforms generated by the user; extracting one or more features from the one or more breathing waveforms; and generating an indicator of smoking history based on the one or more features.
[0008] This method allows for the prediction of a user's smoking history by generating indicators of smoking history. Although a link often exists between smoking history and cardiopulmonary disease, it is advantageous to determine a user's smoking history in a way that is separate from indicators of cardiopulmonary disease. For example, many regular smokers do not show any signs of cardiopulmonary disease. It is noteworthy that this method does not require reliance on user reports to determine smoking history, as user reports are known to be inaccurate.
[0009] The generated metrics can be used in various ways, including informing decisions about managing a user's cardiopulmonary condition (e.g., by prescribing treatment options) or tracking the effectiveness of smoking cessation and / or treatment (including tracking the reversal of any damage to the user's cardiopulmonary system). Other uses of the generated metrics include predicting the severity of damage caused by smoking and tracking user adherence to prescribed treatments.
[0010] While respiratory waveforms can be obtained from volumetric carbon dioxide waveform data, one or more carbon dioxide waveforms preferably include time-series carbon dioxide waveform data.
[0011] A suitable indicator used in a preferred embodiment of the invention is 'lung age,' which compares the user's cardiopulmonary condition to that of users in other cohorts. Any cohort can be chosen as the reference group. For example, a user can be compared to others who share one or more characteristics with the user (e.g., age, sex, disease, or any other demographic information). Another approach is to compare the user's cardiopulmonary condition to a cohort of non-smokers within the group. In this case, the smoker's lung age would be the equivalent age of a non-smoker with equivalent lung function. For example, a 50-year-old smoker with the same lung function as a 75-year-old non-smoker would be described as having a 75-year-old lung age. This indicator has been found to reliably indicate the effects of smoking exposure and is therefore particularly preferred as an indicator of smoking history.
[0012] By tracking changes in a user's lung age, it's possible to determine adherence to prescribed treatment and monitor its effectiveness. This can also be used to track the rate of disease progression.
[0013] In a preferred embodiment, a series of carbon dioxide waveforms can be generated from the user over a predetermined time period, and the user's lung age can be calculated for each carbon dioxide waveform generated from the user. Then, statistically significant changes or drifts in the user's lung age can be used to inform clinical decisions. For example, observing a decrease in lung age after treatment may inform clinicians that continued use may be beneficial. Preferably, only changes exceeding a predetermined threshold are considered. Alternatively to this method, observing no change in lung age after treatment may indicate the need for a different intervention.
[0014] Another suitable metric is pack years, which is a quantitative indicator of a user's smoking history based on the total number of cigarettes smoked during their lifetime. One pack year is defined as smoking a pack of 20 cigarettes a day for a year, which is 7,305 cigarettes.
[0015] Other suitable metrics include the total number of years a user has smoked and the number of years since the user stopped smoking. For example, it has been found that in some cases, the number of years of continuous smoking exposure can be a more reliable indicator of cardiopulmonary health than pack years.
[0016] The generated metrics can be provided with different levels of precision. For example, in the case of subscriptions, the indicated subscription years can be rounded to the nearest whole year, or they can be specified in intervals, such as 0 to 10 subscription years, 10 to 20 subscription years, 20 to 30 subscription years, 30 to 40 subscription years, and 40+ subscription years. Similarly, lung age can be accurate to 5 years.
[0017] These metrics can be used to indicate a user’s smoking history, including one or more of tobacco use, cannabis use, and e-cigarette use.
[0018] In some implementations, the method will also generate one or more additional indicators of smoking history. For example, the method may generate both the user's smoking history (number of years) and the user's lung age.
[0019] The terms CO2 waveform and respiration record are used interchangeably herein to refer to continuous CO2 measurement within a single session. For example, the cessation of recording a user's respiration with a CO2 monitor by a user or operator marks the end of a CO2 waveform, and the resumption of recording marks the beginning of another CO2 waveform. However, CO2 waveform and respiration record can also refer to continuous CO2 recording over a given period of time (e.g., within a ventilator circuit).
[0020] Those skilled in the art will understand that the inspiratory baseline and expiratory baseline can be considered the same baseline in the carbon dioxide waveform / respiratory record, i.e., the respiratory baseline or the carbon dioxide waveform baseline. The inspiratory and expiratory baselines are named differently to distinguish (when individual respiratory waveforms have been isolated) the baselines of the expiratory periods of adjacent respiratory waveforms and the baselines of the inspiratory periods of adjacent respiratory waveforms, and to more clearly describe the inflection points of the waveforms.
[0021] Generating a metric for smoking history preferably involves using one or more extracted features as input to a trained machine learning model, wherein the trained machine learning model is configured to output a metric for smoking history.
[0022] The trained machine learning model is preferably trained using the same or corresponding extracted features already extracted from other carbon dioxide waveforms labeled with the corresponding smoking history indicators. For example, the trained machine learning model would preferably be trained using a method according to any implementation of the second aspect below. As used herein, the term machine learning is also used to refer to statistical inference. For example, a statistical inference model may be referred to as a machine learning model, and the step of training a machine learning model may refer to training a statistical inference model (or machine learning model).
[0023] The generation of indicators of smoking history preferably also includes using one or more demographic information as input to a trained machine learning model, wherein the one or more demographic information may include one or more of the following: age; sex; and ethnicity. As noted above, some indicators of smoking history can be based on comparisons with a cohort of the general population, and this demographic information can therefore be used to generate indicators of smoking history. The features of breathing waveforms that indicate smoking history can also vary between cohorts. For example, the features of breathing waveforms indicating a long smoking history in users under 35 years of age may be considered normal in users over 65 years of age.
[0024] Metrics for generating smoking history can also include using the time of day from which each of one or more carbon dioxide waveforms was generated by the user as input to a trained machine learning model. It has been found that variations in hormone levels (e.g., cortisol levels) throughout the day can affect the user-generated breathing waveform. Using the time of day from which each of one or more carbon dioxide waveforms was generated by the user as input to a trained machine learning model allows this to be taken into account.
[0025] Another user characteristic that may influence respiratory waveforms and can be used to determine smoking history includes whether the user has any medical conditions, particularly cardiopulmonary diseases. Therefore, the indicators for generating smoking history preferably also include obtaining disease labels associated with one or more respiratory waveforms. Non-limiting examples of disease labels include indicators indicating that the user has one or more of COPD, asthma, or lung cancer.
[0026] The disease label can be used as input to a trained machine learning model, but in some implementations, different machine learning models are trained to generate one or more metrics of smoking history based on the disease label. In such cases, generating metrics of smoking history also includes: obtaining disease labels associated with one or more respiratory waveforms; and selecting a trained machine learning model from two or more trained machine learning models based on the obtained disease labels.
[0027] Similarly, demographic information (such as gender and ethnicity) can be used as input to trained machine learning models, or different machine learning models can be trained for different combinations of demographic and disease labels. For example, there could be different models for men with COPD, healthy men, women with COPD, and healthy women.
[0028] Optionally, the method further includes: determining the variability of one or more extracted features; and using the variability of the extracted features as input to a trained machine learning model. The variability of the extracted features can also be used to train the machine learning model to create a classification function according to the second aspect (in some implementations, the classification function is a prediction function). Other parameters, such as quantitative metrics related to the feature's variation over time, such as mean, median, standard deviation, distribution, or other suitable similarity scores, such as cosine similarity or distance, can be determined from one or more extracted features. The variability of the extracted features can be determined using two or more breathing waveforms recorded from the same user. More preferably, multiple breathing waveforms recorded from the same user include at least three breathing waveforms recorded from the same user. It has been found that determining variability from at least three breathing waveforms provides improved accuracy.
[0029] The time period used to determine the variability of the extracted features can vary depending on the features being examined and / or the metrics being generated (or trained to generate) by the machine learning model. The time period spanned by the recorded respiratory waveform can be, for example, multiple hours, multiple days, multiple weeks, or multiple months. For example, the time period may include two or more days, preferably five or more days, and more preferably ten or more days. However, high accuracy can still be achieved by determining variability regardless of the time period.
[0030] Preferably, multiple respiratory waveforms are recorded at substantially regular intervals within a time period. For example, when the time period is five days, the multiple respiratory waveforms include a first respiratory waveform obtained from a first carbon dioxide waveform recorded on the first day of the five days, a second respiratory waveform obtained from a second carbon dioxide waveform recorded on the second day of the five days, a third respiratory waveform obtained from a third carbon dioxide waveform recorded on the third day of the five days, and so on. More preferably, to assess the variability of respiratory waveforms and extracted features within a day, carbon dioxide waveforms are recorded two or more times per day.
[0031] In some embodiments of the first aspect, the trained machine learning model is also configured to output an indication of the importance of extracted features that contribute to the generated smoking history metric. The method may include the step of outputting this indication. In this way, the indication can be used to evaluate the trained machine learning model and to interpret the indication by providing additional context.
[0032] According to the second aspect, a method is provided for training a machine learning model to learn indicators of smoking history, the method comprising: obtaining multiple respiratory waveforms from multiple carbon dioxide waveforms; extracting one or more features from the multiple respiratory waveforms; obtaining a label indicating the corresponding smoking history for each respiratory waveform; and training a machine learning model to learn indicators of smoking history using the extracted features and corresponding labels from the multiple respiratory waveforms.
[0033] Multiple carbon dioxide waveforms used to train a machine learning model can be individual carbon dioxide waveforms from multiple different users and / or multiple carbon dioxide waveforms generated by the user at different times. Multiple respiratory waveforms can also be obtained from a single carbon dioxide waveform among multiple carbon dioxide waveforms.
[0034] The steps of extracting one or more features from multiple respiratory waveforms produce characteristic respiratory waveforms or carbon dioxide waveforms. The steps of obtaining multiple respiratory waveforms and extracting one or more features from them can be repeated to obtain extracted features from multiple respiratory waveforms (i.e., generating multiple characteristic respiratory waveforms).
[0035] In some implementations of the second aspect, a machine learning model is trained to learn multiple or one indicator of smoking history, thereby creating a prediction function based on labels obtained from each of multiple breathing waveforms. That is, the step of training a machine learning model to learn an indicator of smoking history using features extracted from multiple breathing waveforms and their corresponding labels includes: using extracted features and corresponding labels from multiple breathing waveforms to train a machine learning model to learn an indicator of smoking history, thereby creating a prediction function.
[0036] The first and second aspects may include any of the following embodiments.
[0037] In this example, the respiratory waveform can be a digitally sampled signal representing a quantized amplitude signal. The signal can be encoded as an array of floating-point samples, each representing the amplitude of the respiratory signal at a given point in time. The samples do not necessarily correspond directly to the amplitude of the respiratory waveform, but should be understood as a digital representation of the amplitude of the respiratory waveform. Similarly, the waveform can be encoded in any suitable manner (e.g., an array of binary vectors or matrices).
[0038] Preferably, the respiratory waveform represents a single respiratory cycle. Obtaining the respiratory waveform may include dividing the carbon dioxide waveform into multiple carbon dioxide waveform segments, wherein each carbon dioxide waveform segment represents a single respiratory waveform corresponding to a single respiratory cycle.
[0039] A single respiratory cycle is preferably a fully recorded breath. That is, a single breath recorded from exhalation to inhalation or from inhalation to exhalation, with both exhalation and inhalation recorded completely. The respiratory waveform / respiratory cycle can also correspond to a partial breath (e.g., recording of carbon dioxide waveform data begins or ends in the middle of a breath). Using the techniques of this invention, even when the respiratory waveform corresponds to a partial breath, inflection points can still be determined as described below (and those determined points can be used to extract features). However, depending on when the recording of carbon dioxide waveform data begins or ends, it may be impossible to determine as many inflection points or extract as many features as a respiratory waveform corresponding to a complete breath. Therefore, respiratory waveforms corresponding to partial breaths can be identified and considered (e.g., filtered out from the analysis). Representing the respiratory waveform as a single respiratory cycle reduces the amount of computation required while also providing the information (e.g., inflection points) needed for trained machine learning models to accurately generate indicators of smoking history. This also facilitates further analysis, such as averaging waveform generation and the identification of anomalies in the carbon dioxide waveform.
[0040] It has been found that certain machine learning or statistical inference models are particularly effective (e.g., providing high levels of accuracy) when used in the methods of this invention. Therefore, preferred machine learning models include at least one of the following: logistic regression, gradient boosting decision trees, support vector machines, ensemble methods (e.g., AdaBoost), and random forests. This is not an exhaustive list of models.
[0041] One or more features can be extracted from one or more respiratory waveforms in various ways. For example, extracting one or more features from one or more respiratory waveforms may include: normalizing the duration of one or more respiratory waveforms to generate one or more normalized respiratory waveforms; generating an average respiratory waveform from one or more normalized respiratory waveforms; and extracting one or more features from the average respiratory waveform.
[0042] Preferably, the average respiratory waveform is generated from multiple normalized respiratory waveforms using a generalized additive model (GAM).
[0043] In this way, a single, smooth average respiratory waveform is generated, from which features can then be extracted. Feature extraction from the average respiratory waveform can be performed instead of extracting features from the individual respiratory waveforms, or it can be performed in addition to extracting features from the average respiratory waveform.
[0044] Optionally, the duration and / or amplitude of multiple respiratory waveforms are normalized to generate multiple normalized respiratory waveforms. That is, the normalized respiratory waveforms have been normalized for duration and / or amplitude.
[0045] Normalizing the amplitude of multiple respiratory waveforms can include: extracting the end-expiratory CO2 value from each respiratory waveform; and adjusting the amplitude of each of the multiple respiratory waveforms so that each of the multiple respiratory waveforms has the same end-expiratory CO2 value. The amplitude of the multiple respiratory waveforms can be normalized based on various points of each respiratory waveform (e.g., the maximum value of the respiratory waveform or other inflection points, such as the alpha inflection point). However, it has been found that normalizing the waveform based on the end-expiratory CO2 value consistently provides a normalized waveform that is well-suited for use with GAM to generate smooth and accurate average respiratory waveforms.
[0046] Extracting end-expiratory CO2 values from each respiratory waveform may include, for each of the multiple respiratory waveforms, determining the β-turn point between the expiratory plateau and the downstroke according to any of the techniques described below.
[0047] Extracting one or more features from the mean respiratory waveform and / or from one or more respiratory waveforms includes: determining one or more inflection points of the mean respiratory waveform and / or one or more respiratory waveforms; and using one or more inflection points to extract one or more features; wherein the one or more inflection points include one or more of the following: an α inflection point between the upstroke and the expiratory plateau; a β inflection point between the expiratory plateau and the inspiratory descent; a γ inflection point between the inspiratory descent and the inspiratory baseline; and a δ inflection point between the expiratory baseline and the upstroke.
[0048] Identifying the inflection points of the waveform enables accurate and consistent feature extraction from different segments of the respiratory waveform. In implementations that use one or more extracted features as input to a trained machine learning model to generate an indicator of smoking history, this allows the trained model to generate the indicator more accurately and in an interpretable manner. It has been found that the α, β, γ, and δ inflection points of the respiratory waveform are each particularly beneficial to the accuracy of generating the smoking history indicator.
[0049] Carbon dioxide waveforms and respiratory waveforms generated by different respiratory tracts can differ significantly. Similarly, carbon dioxide waveforms and respiratory waveforms generated by the same respiratory tract at different times or under different conditions (e.g., when the respiratory tract is affected by cardiopulmonary disease compared to a healthy respiratory tract) can also differ significantly. These differences have made it difficult to analyze carbon dioxide waveforms quickly and / or efficiently and accurately. Automated carbon dioxide waveform analysis is particularly challenging due to the substantial differences between respiratory waveforms and the wide range of factors that can contribute to these differences (e.g., cardiopulmonary disease, age, weight, time of day, medication use, smoking status, location, presence of other medical conditions, etc.). However, identifying waveform inflection points and using these as the basis for feature extraction and application in machine learning models can be easily automated in a consistent manner to improve model efficiency while still maintaining consistently high accuracy of the generated metrics.
[0050] Since inflection points mark the transitions between different phases of the respiratory waveform (e.g., the α-inflection point lies between the expiratory ascending limb and the expiratory plateau), identifying any of these points also improves the interpretability of the method. That is, in addition to generating indicators of smoking history from extracted features, the trained machine learning model can also indicate which phase(s) of the respiratory waveform contribute to the smoking indicator and to what extent.
[0051] As noted above, the respiratory waveform can be a digitally sampled signal representing a quantized amplitude signal, which can be encoded as an array of floating-point samples, each representing the amplitude of the respiratory signal at a given time point. Inflection points can be samples in the digital sample array that correspond to inflection points in the waveform. The method can identify individual samples or elements in the encoding, sample indices, or time points corresponding to samples. Each sample can typically correspond to the CO2 value at a given time point.
[0052] Optionally, the waveform can be divided into an exhalation phase and an inhalation phase based on the determined β inflection point.
[0053] Preferably, determining multiple inflection points of a respiratory waveform (including an average respiratory waveform) involves determining the derivative of the respiratory waveform. The derivative of the respiratory waveform can be advantageously applied in several steps of the method for various reasons. Several of these applications will be discussed in detail below. For example, to determine inflection points, the derivative of the respiratory waveform can be used as a reference to the respiratory waveform. Preferably, the derivative of the respiratory waveform is the first derivative of the respiratory waveform, because first derivatives generally contain less noise than higher derivatives. However, higher derivatives (e.g., second derivatives) may be more suitable for determining multiple inflection points based on the respiratory waveform being examined. Determining multiple inflection points may also involve determining multiple derivatives of the respiratory waveform. For example, the first derivative of the respiratory waveform can be used to determine a given inflection point, and the second derivative of the respiratory waveform can be used to determine different inflection points.
[0054] The derivative of a respiratory waveform (e.g., the first derivative) can also be used to identify and optionally exclude abnormal respiratory waveforms, thereby preventing unnecessary processing. In some embodiments of the first or second aspect, the method further includes comparing the derivative with a template; and excluding the respiratory waveform when the derivative does not match the template. The template can be a differential template or another type of template. Using the derivative to identify (and exclude) abnormal respiratory waveforms may also include determining whether the value of the derivative is within the expected range.
[0055] Abnormal respiratory waveforms can also be identified and optionally excluded in other ways. For example, by comparing the value of the respiratory waveform itself or its derivative (e.g., at random or predetermined points) with expected values or ranges. Templates and these expected values are determined through empirical observation of typical physiological functions.
[0056] Preferably, determining the derivative of the respiratory waveform (e.g., the first derivative of the respiratory waveform) involves applying a time-based smoothing filter, such as the Savitsky-Golay filter, to the respiratory waveform. For example, the application of the Savitsky-Golay filter is used to determine the first derivative of the respiratory waveform. Time-based smoothing filters apply smoothing and are therefore particularly advantageous when used with noisy data. The Savitsky-Golay filter is also highly generalizable, allowing for the use of many window sizes and polynomial fit orders, and has therefore been found effective for a wide range of different respiratory waveforms. Other examples of smoothing filters include frequency filtering (e.g., using wavelet or short-time Fourier filters) and moving average smoothing functions.
[0057] Artifacts in respiratory waveforms (such as hump artifacts) have a significant impact on the shape of the waveform and its corresponding derivatives. In some cases, for example, depending on the size and location of the artifact, this can lead to inconsistent feature extraction and the generation of less accurate indicators of smoking history, or the training of less accurate machine learning models. It is particularly important to consider any hump artifacts when automating methods (or training methods) used to generate indicators of smoking history to produce indicators on a reasonable timescale. Hump artifacts can vary significantly depending on the airway that produces the carbon dioxide waveform; however, they are generally represented in the respiratory waveform by a sharp increase in pCO2 before the expiratory rise limb. The increase in pCO2 at the hump is less than the increase in pCO2 at the expiratory plateau and can remain at the increased hump level until the expiratory rise limb, may partially decrease within the expiratory rise limb, or may decrease and return entirely to the pCO2 level at the expiratory baseline.
[0058] Therefore, preferably, determining multiple inflection points includes: identifying hump artifacts in the respiratory waveform, and processing hump artifacts during the determination of one or more inflection points when hump artifacts are present.
[0059] Camel hump artifacts can be handled in various ways. For example, when identifying one or more inflection points, the camel hump artifact can be effectively subtracted by ignoring or removing the data associated with it, or by adjusting the weights applied to the data associated with it.
[0060] Preferably, identifying hump artifacts includes: performing peak detection to identify local minima of the respiratory waveform; identifying significant minima among the local minima; identifying the maximum value of the respiratory waveform and / or determining β-inflection points; dividing the respiratory waveform into a first segment excluding the maximum value of the respiratory waveform and a second segment including the maximum value of the respiratory waveform and / or β-inflection points; searching for hump artifacts in the first segment of the respiratory waveform when at least one significant minima is identified; and / or using the derivative of the respiratory waveform to search for hump artifacts in the first segment of the respiratory waveform when no significant minima are identified. When the derivative of the respiratory waveform is the first derivative of the respiratory waveform, using the derivative of the respiratory waveform to search for / identify hump artifacts may include analyzing the first derivative to identify inflection point regions of the first derivative and comparing the inflection point regions with a predetermined threshold.
[0061] The maximum value of a respiratory waveform refers to the maximum amplitude of the respiratory waveform. For example, the maximum pCO2 value measured at a certain point in time during the respiratory waveform.
[0062] Ideally, the respiratory waveform should be divided along a time dimension. That is, the value up to a certain point in time (the boundary between the first and second segments) is in the first segment, and the values after that point in time are in the second segment. The boundary between the first and second segments can be the maximum value of the respiratory waveform.
[0063] Alternatively, the respiratory waveform can be segmented such that a first segment and a second segment are defined relative to the β inflection point. That is, the respiratory waveform is divided into a first segment excluding the β inflection point and a second segment including the β inflection point.
[0064] It has been found that the minimum value corresponding to the hump artifact typically has a CO2 value below a certain threshold. Therefore, to further reduce computational costs, a hump artifact threshold can be applied during hump artifact identification. For example, the hump artifact threshold can define a maximum CO2 value, where any minimum CO2 value higher than the hump threshold is discarded or ignored during hump artifact identification. Preferably, the hump artifact threshold is between 0.5 kPa and 4 kPa. It has been found that using a threshold within this range achieves accurate levels of hump artifacts for most respiratory waveforms (e.g., by ignoring the minimum value in the expiratory plateau). Most preferably, the hump artifact threshold is 2 kPa.
[0065] Alternatively, the first segment and the second segment can be defined as non-overlapping segments, wherein the second segment includes the maximum value and / or β inflection point of the respiratory waveform.
[0066] The β inflection point can be determined in various ways. Reliable and effective methods for determining the β inflection point (especially during automation) have been found to include: performing peak detection to find local maxima of the respiratory waveform; identifying significant maxima among the local maxima; when only a single significant maxima is identified, determining it as the β inflection point between the expiratory plateau and the descending inspiratory limb; and when multiple significant maxima are identified, determining the most significant maxima and defining it as the β inflection point.
[0067] Extensive data analysis has revealed that the pCO2 value at the β inflection point typically falls within or below a certain range. Therefore, a predetermined threshold (i.e., a maximum value threshold) can be defined to conserve further processing resources. This can be achieved by ignoring maximum values (pCO2) below the maximum threshold (e.g., by removing these values during peak detection or identification of significant maximum values, or by setting them to 0). This reduces the processing resources used by the method and reduces noise in values prior to the maximum threshold. For example, the maximum threshold can be set to a value between 0.04 kPa and 5 kPa. These lower and upper limits of the threshold explain the background pressure while reliably and accurately determining the β inflection point, allowing for the extraction of accurate and useful features based on the determined β inflection point. Preferably, the maximum threshold can be set between 1.5 kPa and 2.5 kPa. Most preferably, the maximum threshold is 2 kPa. The maximum threshold can be predetermined, or in some implementations, it can be determined and / or adjusted by the machine learning model as it continues to determine the β inflection point of the respiratory waveform with increasing amounts of air. This means the machine learning model can also optimize the resource usage of the method.
[0068] When no significant maximum value is identified, the respiratory waveform may be excluded because this is often due to an anomaly in which the extracted features are unlikely to be accurately or reliably interpreted by the machine learning model (i.e., during metric generation or training). Excluding the respiratory waveform in an early stage prevents these results without any additional unnecessary processing.
[0069] Preferably, determining the inflection point includes determining the δ inflection point, and determining the δ inflection point includes: determining a first point in time when the first derivative of the respiratory waveform is higher than the δ threshold; and defining the first point as the δ inflection point.
[0070] Similar to the maximum value threshold, the δ threshold can be a predetermined threshold or can be determined and / or adjusted by a (trained or untrained) machine learning model. Optionally, the δ threshold is configured relative to the maximum magnitude value of the first derivative of the respiratory waveform. For example, the δ threshold can be 5% to 80% of the maximum magnitude point of the first derivative. Preferably, the δ threshold is 5% to 15% of the maximum magnitude point of the first derivative. More preferably, the δ threshold is 10% of the maximum magnitude point of the first derivative. Using these ranges of δ thresholds and the specific value of 10%, it has been found that δ inflection points can be accurately determined, allowing accurate and useful features to be extracted based on the determined δ inflection points.
[0071] Preferably, determining the inflection point includes determining the γ inflection point, and determining the γ inflection point includes: identifying the minimum value of the first derivative of the respiratory waveform; and defining the γ inflection point as the first point in time when the first derivative of the respiratory waveform is higher than the γ threshold after the minimum value.
[0072] The first point in time refers to the actual first point in time, but it can be an approximate first point in time, or, for example, a data point that closely corresponds to the first point in time.
[0073] Similar to the thresholds discussed previously, the γ threshold can be a predetermined threshold, or it can be determined and / or adjusted by a (trained or untrained) machine learning model. Optionally, the γ threshold is configured relative to the maximum amplitude of the first derivative of the respiratory waveform. For example, the γ threshold can be 0 to 50% of the maximum amplitude of the first derivative. Preferably, the γ threshold is 2% to 10% of the maximum amplitude of the first derivative. More preferably, the δ threshold is 5% of the maximum amplitude of the first derivative. Using these ranges of γ thresholds, and the specific value -5%, has been found to accurately determine the γ inflection point, allowing for the extraction of accurate and useful features based on the determined γ inflection point.
[0074] Preferably, determining the inflection point includes: determining an α inflection point, wherein determining the α inflection point includes: identifying the maximum value of the first derivative of the respiratory waveform; identifying the maximum value of the respiratory waveform and / or determining a β inflection point; and defining the α inflection point as the first point in time between the maximum value of the first derivative and the maximum value of the respiratory waveform and / or the β inflection point when the first derivative of the respiratory waveform is less than an α threshold.
[0075] Clearly, the α-inflection point can be determined using either the maximum value of the respiratory waveform or the β-inflection point. These two methods can be performed individually (i.e., only one to determine the α-inflection point, using fewer processing resources), or both to verify the results of the other. If the β-inflection point has not yet been determined, it only needs to be determined at this stage; otherwise, a previously determined β-inflection point can be used, or the α-inflection point can be determined without using the β-inflection point. Using the β-inflection point to determine the α-inflection point (and / or identify camel hump artifacts) has been found to be a more reliable method than using the maximum value of the respiratory waveform and is applicable to a wider range of respiratory waveform shapes. However, the technique using the maximum value of the respiratory waveform is reliable and accurate, with lower associated computational costs.
[0076] Similar to the thresholds discussed previously, the α threshold can be a predetermined threshold, or it can be determined and / or adjusted by a (trained or untrained) machine learning model. Optionally, the α threshold is configured relative to the maximum amplitude of the first derivative of the respiratory waveform. For example, the α threshold can be 0 to 80% of the maximum amplitude point of the first derivative. Preferably, the α threshold can be 10% to 20% of the maximum amplitude point of the first derivative. More preferably, the α threshold is 15% of the maximum amplitude point of the first derivative. Using these ranges of the α threshold and the specific value of 15%, it has been found that the α inflection point can be accurately determined, allowing accurate and useful features to be extracted based on the determined α inflection point.
[0077] In some implementations of the method, the α threshold can be adjusted to reduce the impact of noise on determining the α inflection point and improve the processing resource efficiency of the method. Therefore, determining the α inflection point may further include increasing the α threshold when there are no points less than the α threshold between the maximum value of the first derivative of the respiratory waveform and the maximum value of the respiratory waveform. The α threshold can be increased by a predetermined amount. For example, the α threshold can be increased by 5% at the point of maximum amplitude of the first derivative of the respiratory waveform.
[0078] After increasing the α threshold, the α inflection point can be determined and defined by comparing the maximum value of the first derivative with the value of the respiratory waveform and / or the β inflection point (i.e., the point in time corresponding to these two). If no point satisfies this definition, the α threshold can be increased again, and this process can be iteratively repeated until the α inflection point is determined. The amount by which the α threshold is increased can vary in different iterations.
[0079] To reduce unnecessary processing resources used during the method, upper limits can be set on the number of iterations performed (and therefore the number of times the α threshold increases) and / or the value of the α threshold itself, and the breathing waveform is excluded when one of these limits is reached.
[0080] The α inflection point can also be determined using other alternative methods. One such alternative method for determining the α inflection point includes: calculating a line between the δ inflection point and the maximum value of the respiratory waveform, or calculating a line between the δ inflection point and the β inflection point; and defining the α inflection point based on the distance between the respiratory waveform and the calculated line.
[0081] For example, the α inflection point can be defined as the point on the respiratory waveform that is furthest from the line calculated between the δ inflection point and the maximum value of the respiratory waveform (or the β inflection point), where the distance between the respiratory waveform and the calculated line is measured using another line perpendicular to (between the δ inflection point and the maximum value of the respiratory waveform or the β inflection point).
[0082] This can be applied as an alternative to the method of using an α threshold to determine the α inflection point, or used as a supplementary method to determine the α inflection point to verify another method.
[0083] In an alternative implementation of the above algorithmic approach, determining the inflection point may include: applying a trained machine learning model to a set of discrete samples of respiratory waveforms representing a complete breath, wherein the machine learning model is configured to classify each sample into one of a plurality of output categories, each category representing a region of the respiratory waveform, and wherein the machine learning model is trained by: obtaining a label associated with each discrete sample in the plurality of respiratory waveforms, each respiratory waveform being represented by a set of samples representing a complete breath, and each label indicating which of the plurality of output categories the sample corresponds to; and training the machine learning model on the labels and samples to learn to classify samples in the set of samples representing a complete breath into a category among the plurality of output categories. This approach can provide consistency for feature engineering, but may struggle to account for all types of breath, and accuracy will be proportional to the amount of labeled input data.
[0084] A wide variety of features of the respiratory waveform can be extracted using defined inflection points. For example, the extracted features may include at least one of the following: time and / or CO2 pressure at the inflection point or any other point on the respiratory waveform, end-expiratory CO2, angle between linear fits on both sides of the inflection point, duration of the phase between inflection points, ratio of the angle between linear fits to the duration of the phase, minimum, maximum, average, median and / or total CO2 pressure during the phase between inflection points, respiratory rate, and coefficients of the line obtained by fitting the respiratory waveform using the inflection point.
[0085] Other examples include: hyperbolic tangent fitting, δ angle, α angle, β angle, γ angle, δ angle start point, δ angle end point, α angle start point, α angle end point, β angle start point, β angle end point, γ angle start point, γ angle end point and the time and CO2 value at these points, minimum CO2 in the inspiratory baseline of the respiratory waveform, minimum CO2 in the expiratory rising phase of the respiratory waveform, the ratio of α angle to the duration of the expiratory phase, CO2 at the center of the γ angle, coefficients of the quadratic fit of the expiratory plateau, time difference between any defined inflection points, respiratory pattern, and measures of disorder (e.g., entropy).
[0086] Features associated with breathing patterns can be detected by assessing the periodicity of the breathing waveform (e.g., using autocorrelation or frequency-domain identifiers) and comparing the variability of breathing.
[0087] The δ-angle start point refers to the carbon dioxide waveform value at the δ-angle start point, such as the time and / or pCO2 value at the δ-angle start point. This also applies to the start and end points of α-angle, β-angle, and γ-angle.
[0088] Extracting features from a respiratory waveform using one or more inflection points may include determining the angle of each of the one or more inflection points. Determining the angle of each of the one or more inflection points may include, for each of the one or more inflection points: fitting a first linear function and a second linear function to adjacent phases on either side of the inflection point, and measuring the angle between the first linear function and the second linear function. For example, if the angle of the α inflection point is determined, then fitting the first / second linear function to adjacent phases on either side of the α inflection point means fitting the first linear function to the ascending limb of expiration and the second linear function to the expiratory plateau.
[0089] Extracting features from the respiratory waveform using one or more inflection points may also include fitting a quadratic function to the expiratory plateau and determining one or more coefficients of the quadratic function. This provides an indication of the “smoothness” of the expiratory plateau, which can be used to help determine the characteristics of the airway associated with the respiratory waveform. Preferably, the quadratic function is fitted over the entire length of the expiratory plateau from the α inflection point to the β inflection point.
[0090] As another example, extracting features from a respiratory waveform using one or more inflection points may include fitting a hyperbolic tangent function to the expiratory rising limb and / or the inspiratory falling limb, and determining one or more coefficients of the hyperbolic tangent function. These coefficients are, for example, the width and horizontal displacement parameters of the fitted hyperbolic tangent function. Preferably, the hyperbolic tangent function is fitted over the entire length of the expiratory rising limb (i.e., between the δ and α inflection points) and the entire length of the inspiratory falling limb (i.e., between the β and γ inflection points).
[0091] Preferably, the method further includes obtaining a carbon dioxide waveform from the user, wherein the carbon dioxide waveform includes a respiratory waveform.
[0092] In the above implementation, the method for generating the smoking history index using the trained model and the training method can each be performed remotely on a local computer or a remote computer, other than the user generating the carbon dioxide waveform. The steps of the method can be executed entirely by a local processing unit, a remote processing unit (e.g., in the cloud), or split between local and remote processing units.
[0093] According to a third aspect, an apparatus is provided that is configured to perform a method according to any one of the embodiments of the first and second aspects of the invention.
[0094] According to a fourth aspect, a computer-readable medium containing instructions, when executed by a processor, causes the processor to perform a method according to any embodiment of the first or second aspect of the invention. Attached Figure Description
[0095] The embodiments of the present invention are described below by way of example and with reference to the accompanying drawings, wherein: Figure 1A The respiratory waveform from a healthy patient was displayed; Figure 1B The image shows respiratory waveforms from a patient with cardiopulmonary disease. Figure 1C The breathing waveform containing artifacts is displayed; Figure 2 Examples of breathing waveforms generated by users with different smoking histories are shown; Figure 3 An example carbon dioxide waveform is shown; Figure 4 It displays an idealized breathing waveform; Figure 5 A method for generating indicators of smoking history according to an example of this disclosure is shown; Figures 6A to 6D Different respiratory waveforms and their first derivatives are shown. Figures 7A to 7C A schematic flowchart of a method for identifying hump artifacts, inflection points, and features of respiratory waveforms is shown. Figure 8 This disclosure illustrates a method for training a machine learning model to learn metrics of smoking history, based on examples of this disclosure. Figure 9 A schematic diagram showing an example of this disclosure applied to two components; Figure 10A and Figure 10B Schematic detail shown Figure 9 The three components; and Figure 11 A shows the regression plots of CO2 α-angle characteristics relative to pack-years, and the mean CO2 waveforms of subjects with a smoking history of <15 pack-years vs. subjects with a smoking history of >30 pack-years. Detailed Implementation
[0096] The following section discusses in detail specific embodiments of the invention, which involve generating an index of smoking history from one or more carbon dioxide waveforms generated by a user, and training a machine learning model to learn the index of smoking history.
[0097] Many of the following implementations are described with reference to generating an indicator of smoking history from one or more carbon dioxide waveforms generated by a user using a trained machine learning model. However, this disclosure is not limited to using a machine learning model to generate this indicator.
[0098] Recent hardware innovations, such as those described in WO2017174983 and WO201915800 (the contents of which are incorporated herein by reference), have enabled reliable and non-invasive measurement of CO2 concentrations at the mouth, closer to the airway, with high temporal resolution. This provides greater flexibility in lung health assessments, offering more insights than previously recognized.
[0099] In particular, the purpose of this disclosure is to determine a user's smoking history using one or more carbon dioxide waveforms generated from the user. This smoking history may be based on indicators such as pack-years and lung age, although this disclosure is not limited to these indicators.
[0100] Other objectives are to provide interpretability of the generated metrics, enabling clinicians to understand what contributes to the metrics, and to provide computationally efficient methods suitable for deployment at the edge, such as allowing implementation phases to be performed at the clinician's site using a trained model without cloud communication for data processing, feature extraction, and metric generation. Optionally, for example, the metric generation method can be implemented on a chip (i.e., on a handset), or in a split between the handset and a local computer.
[0101] The method presented in this paper is particularly useful in accurately generating quantitative indicators that summarize a user's smoking history, such as the number of years smoking, comparisons between current smokers, former smokers, and non-smokers, the number of years since quitting, the age at first smoking, and the number of grams of tobacco smoked (e.g., if smoking a pipe or cigarette). As used herein, "smoking" is not limited to smoking tobacco, but includes any combination of smoking tobacco, cannabis use, vaping, or any other form of smoking.
[0102] Figures 1A to 1C Three examples of different respiratory waveforms are shown, in which the respiratory waveforms are plotted as a function of time, showing the partial pressure of carbon dioxide (pCO2) as the patient takes a single breath through exhalation followed by inhalation. Unless otherwise stated, the terms partial pressure of carbon dioxide, concentration of carbon dioxide, and carbon dioxide are used interchangeably throughout this instruction manual. Figure 1A This shows an example respiratory waveform produced by the breathing of a healthy patient. Figure 1B The image shows an example respiratory waveform generated by the breathing of a patient with cardiopulmonary disease (in this case, COPD), and Figure 1CAn example respiratory waveform of a patient is shown, in which the patient's breathing produces a hump-like respiratory artifact in the waveform at the beginning of the patient's expiration.
[0103] Deoxygenated but CO2-rich blood reaches the alveoli through the pulmonary vascular system, where gas exchange occurs. O2 from the ventilating air is exchanged with carbon dioxide from the blood, thus promoting respiration. Then, relaxation of the diaphragm during exhalation reduces the volume of the thoracic cavity, thereby increasing pressure and forcing CO2 out through the bronchioles and into the environment. Although many embodiments use volumetric carbon dioxide determination, this disclosure focuses on time-based carbon dioxide determination, the purpose of which is to measure the partial pressure of carbon dioxide (pCO2) over time. It should be understood that aspects of the invention can also be applied to volumetric carbon dioxide determination. In an ideal gas mixture, the relationship between the total pressure and the partial pressures of the individual gases is given by the following equation.
[0104] in It is a gas The partial pressure can be expressed as
[0105] in Gas in any macroscopic volume The number of molecules and This represents the number of molecules in the entire gas mixture within the same volume. At sea level, atmospheric pressure is... The background It depends on the environment.
[0106] Typically, during exhalation, the concentration of CO2 in the mouth increases sharply from baseline and usually plateaus as diffusion begins to compensate. Inhalation then brings atmospheric CO2 back into the mouth, lowering the concentration back to baseline. The end of this plateau phase is called end-expiratory CO2 (ETCO2) and is an important biomarker for anesthesiologists.
[0107] Patients with obstructive cardiopulmonary disease often exhibit a more pronounced "shark fin" shape in their respiratory waveforms using carbon dioxide mapping, such as... Figure 1B As highlighted, during exhalation, damaged and / or inflamed alveoli and / or airways may restrict perfusion, reduce the elasticity of alveolar walls, and alter airway physiology, changing the force that allows exhaled gas, typically resulting in a flatter expiratory ascending limb, a larger delta angle, and a steeper expiratory plateau.
[0108] from Figures 1A to 1C It is clear that the respiratory waveform changes according to the patient's condition, and therefore the respiratory waveform can be examined to predict patient information.
[0109] The breathing waveform generated by a user can also change based on the user's smoking history, such as... Figure 2 As shown in the figure, this graph displays four examples of breathing waveforms generated from users with different health conditions and smoking histories. In these graphs, smoking history is quantified using the pack-year metric, which is a measure of the total number of cigarettes smoked during their lifetime. One pack-year is defined as smoking one pack of 20 cigarettes per day for one year, or 7,305 cigarettes.
[0110] As an example, for healthy users, when the number of years of subscription is less than 5, the shoulder (α-turn point) between the inspiratory ascending limb and the expiratory plateau is more clearly defined compared to healthy users with more than 5 subscription years.
[0111] The difference is even more pronounced for users with COPD, where those with more than 20 years of service show significantly rounded alpha inflection points that contribute to the 'shark fin' shape. In contrast, COPD waveforms from users with COPD but less than 20 years of service show a significantly less rounded alpha inflection point, although still a higher degree of rounding compared to COPD waveforms from healthy users with less than 5 years of service.
[0112] The alpha inflection point is not the only feature that can be used to determine a user's subscription history, and other quantitative indicators can also be used as metrics for smoking history. In fact, breathing waveforms vary in a wide variety of specific ways, and many different features can be extracted from and examined to generate metrics for smoking history. These waveform variations and features will be discussed in more detail below.
[0113] As mentioned, recent innovations have enabled the reliable recording of pCO2 directly from the mouth with high sensitivity using dedicated handheld devices. However, it should be understood that the innovations disclosed herein are not limited to data obtained from such handheld devices, and the description is given for background information. Patients experience normal Cheyne-Stokes breathing for approximately 75 seconds using the monthpiece, resulting in a non-invasive and effortless experience.
[0114] Carbon dioxide strongly absorbs electromagnetic radiation at wavelengths of 4.3 μm or 15 μm, where the energy causes vibrations in its intramolecular bonds, which are then re-emitted at different wavelengths in different directions. The transmitter in the handheld device emits photons of either of these wavelengths through an air channel, where unabsorbed photons are detected by a sensor whose output depends on the partial pressure of carbon dioxide within the volume of the air channel. Unlike traditional carbon dioxide analyzers, the handheld device does not have a reference channel; instead, the device self-calibrates upon power-on to reference a background CO2 level. The sensor also has a fast response time due to the combination of the speeds of breath through the sampling volume and because the sampling volume is close to the mouth and therefore unaffected by different speeds when sampling away from the mouth (as in the case of alternative techniques).
[0115] The output is sampled at 10 kHz and reported at 50 Hz, frequencies significantly higher than any other CO2 measurement monitor on the market. Anonymous data is then automatically and securely uploaded to a cloud platform via a mobile network. Here, the anonymized data is processed through a pipeline, as described below according to aspects of this disclosure, and can be used for subsequent analysis. An example of a complete raw respiration record is shown... Figure 3 middle.
[0116] Figure 3 An example of a carbon dioxide waveform is shown, illustrating a tidal breath recording, and also plotting the partial pressure of carbon dioxide (pCO2) as a function of the patient's respiratory time. From Figures 1A to 1C and Figure 2 and Figure 3 The comparison clearly shows that Figure 3 The carbon dioxide waveform diagram shows more than twelve complete breaths, as well as partial breaths at the beginning and end of the diagram. The number of respiratory waveforms in the carbon dioxide waveform diagram will vary depending on the length of time the patient's breathing is measured.
[0117] Therefore, the input to the method that is the object of this disclosure can be a set of digitized samples at a specific sampling frequency, where each digitized sample represents the magnitude of pCO2 at a specific time point. The samples can be represented as a set of vectors, each vector having a corresponding time index. This time series data representation method is the input to this method.
[0118] According to this disclosure, a classifier has been developed that utilizes several key geometric aspects commonly identified in respiratory waveforms to determine these waveforms in order to facilitate feature extraction and the generation of indicators of smoking history from corresponding biomarkers. These geometric aspects, or biomarkers, have not been reliably and accurately identified by computers to date, as will be explained in more detail below. Figure 4 An idealized breathing waveform is displayed, highlighting several of these geometric features.
[0119] The ideal waveform shown can be divided into five linear segments or phases from left to right as time progresses: the expiratory baseline P1, the rising expiratory limb P2, the expiratory plateau P3, the descending inspiratory limb P4a, and the inspiratory baseline P4b. The expiratory baseline P1 is also referred to as phase 1, the rising expiratory limb P2 as phase 2, the expiratory plateau P3 as phase 3, the descending inspiratory limb P4a as phase 4a, and the inspiratory baseline P4b as phase 4b. Typically, when a patient exhales, the CO2 concentration in the mouth increases sharply from the expiratory baseline P1 and reaches a plateau (expiratory plateau P3) as diffusion begins to compensate for the increased CO2 concentration. Then, inhalation brings atmospheric CO2 back to the patient's mouth, causing the concentration to decrease back to baseline (inspiratory baseline P4b). Figure 3 The carbon dioxide waveform clearly shows that the inspiratory baseline P4b of the first respiratory waveform can extend into or serve as the expiratory baseline P1 of the second respiratory waveform, and vice versa. The expiratory baseline P1 and the inspiratory baseline P4b are named as such in the case of a single respiratory cycle (i.e., a single waveform representing one respiratory cycle) to help interpret individual respiratory waveform analyses.
[0120] As will be discussed below, identifying the location of at least one of the inflection points between these five segments allows for reliable and effective feature extraction of the respiratory waveform, but this is not a direct method. The δ inflection point δ is the point in the respiratory waveform that defines the expiratory baseline P1 and the rising expiratory limb P2. The α inflection point α is the point in the respiratory waveform that defines the rising expiratory limb P2 and the expiratory plateau P3. The β inflection point β is the point in the respiratory waveform that defines the expiratory plateau P3 and the descending inspiratory limb P4a. The γ inflection point γ is the point in the respiratory waveform that defines the descending inspiratory limb P4a and the inspiratory baseline.
[0121] Although Figure 4 The respiratory waveform in the image has an idealized linear segment, but this is not how respiratory waveforms actually appear. Artifacts in the respiratory waveform (e.g., Figure 1C The expiratory rise limb (P2 pre-hump) shown is common in carbon dioxide waveforms and increases the difficulty of analysis (e.g., determining the location of the inflection point) and feature extraction. Such artifacts are particularly problematic when methods are automated or machine learning models are used to facilitate the generation of indicators of smoking history. Many other types of artifacts are also found in respiratory waveforms and should ideally be addressed to ensure that methods used to generate indicators of smoking history are robust to as many types of artifacts as possible.
[0122] Noise (e.g., noise in the measured pCO2 signal) also makes it more difficult to accurately determine inflection points, as well as the overall shape of the waveform. For example, it should be understood that... Figure 1A The α inflection point α ratio in the "square wave" waveform Figure 1B The same α inflection point α in the "shark fin" waveform is clearer and therefore easier to determine accurately.
[0123] Each of these problems (e.g., artifacts and noise) may become more apparent in carbon dioxide waveforms generated at higher measurement frequencies. However, if these problems are properly addressed in determining inflection points and extracting features from the respiration waveform, the extracted features are more accurate, and the resulting indicators of smoking history are also more accurate.
[0124] Early implementations of the computer-aided method consisted of segmented steps in a manual initial phase, which identified the branch by calculating five features, including the maximum and minimum CO2 values and the stroke gradient. Figure 4 Each of the stages outlined in the text. The purpose of the second step is to obtain a template waveform by averaging the obtained features between breaths, and then the third step compares subsequent breaths to the template. This allows for the exclusion of abnormal breaths with unusual artifacts, the reasons for which can be inferred by comparing the features with categories of breaths with known deformations. In a similar method, breaths are separated by determining positive and negative slopes, and then a template waveform of CO2 values is constructed based on the mean and the identified outliers.
[0125] A rule-based approach was also proposed, defining the absolute change in CO2 concentration as a criterion for extracting the stages of respiratory separation, and establishing additional rules for respiratory exclusion, including the duration of respiration. Other methods utilize a sliding window (where...) In this study, inflection points are identified to pinpoint the start and end of respiration, and respirations are excluded based on pre-established extreme values of physiological probabilities. Another preprocessing approach involves fitting a model to respiration. For example, respiration is segmented into stages by fitting a series of piecewise linear lines before breaking it down into individual breaths by applying logic to the troughs. Similar techniques have been used to identify segments by linearly modeling data within a sliding window of length 3 and applying rules to fit the slope over time.
[0126] Machine learning has also been used for breath segmentation, where an artificial neural network (ANN) takes in the raw time series and outputs the start and end points of the breath. A similar approach uses an ANN on eight features obtained from the waveform to eliminate malfunctioning breaths.
[0127] These carbon dioxide waveforms were primarily obtained from sedated patients, with a low sampling frequency, resulting in stronger uniformity in the carbon dioxide waveform method.
[0128] None of these schemes provide accurate and reliable techniques for processing high-frequency, noisy signals with artifacts to produce interpretable and computationally efficient processing and index generation.
[0129] Figure 5 A method for generating indicators of smoking history, according to an example of this disclosure, is shown. Known methods cannot account for various artifacts that may affect the automatic detection of inflection points.
[0130] In the first step, the method obtains one or more breathing waveforms from one or more carbon dioxide waveforms generated by the user (S101). These can be in the form of digitized samples discussed above. From these breathing waveforms, the method extracts one or more features (S102). As shown below, any number of features can be extracted, and a classifier can learn from these features to predict outcomes from a set of unseen carbon dioxide waveform data. In the implementation phase, an indicator of the user's smoking history is generated based on one or more features (S103). This can be achieved by applying a trained machine learning model to the extracted features.
[0131] In some implementations, a set of inflection points can be identified and used to extract one or more features. In an example, these features are identified by analyzing the first derivative of the waveform and the maximum and minimum values of the signal. Preferably, a time-based smoothing filter combined with the first derivative is used to compute the first derivative. Local minima and maxima of the signal may be caused by respiratory or physiological artifacts and may interfere with the detection of inflection points. Therefore, the output of this step may be a set of start and end points (i.e., an index of relevant samples) for each stage, and optionally, the first derivative and value at each of the identified points.
[0132] It should be understood that a typical machine learning process can have three phases: training, validation, and testing. Each of these can be applied by different entities based on features extracted from various datasets using the methods described above.
[0133] In its general form, a supervised machine learning model receives input data. , it is from Sampling One instance and A matrix of features, and the corresponding output data. , its from Sampling, as the corresponding One instance and Each output Matrix. The goal is to use an algorithm. The algorithm uses this data to create a function. The function can receive any unseen data. And output prediction : .
[0134] In the statement of the problem, It is a collection of characteristic carbon dioxide waveforms, and This is a label specifying an indicator of a user's smoking history, from which the CO2 waveform is generated. Disease labels can also be used, and distinctions can be made between healthy, having COPD, and being unhealthy without COPD, as patients without COPD may have other diseases that affect the CO2 waveform. This disease label can be used as input to a trained machine learning model, or as the basis for training different machine learning models associated with different disease labels, and is used during inference to select the appropriate trained machine learning model to generate an indicator of a user's smoking history based on the presence or absence of a disease.
[0135] In step S101, one or more respiratory waveforms are obtained from one or more carbon dioxide waveforms. When the carbon dioxide waveform includes, for example, Figure 3 When multiple breaths (which can be complete breaths and partial breaths) occur in an instance, obtaining the respiratory waveform involves splitting the carbon dioxide waveform into multiple segments. When the carbon dioxide waveform is split into multiple segments, each segment should preferably consist of a single respiratory waveform corresponding to a single respiratory cycle (i.e., a complete breath or a partial breath if the sampling of the carbon dioxide waveform data begins or stops in the middle of the breath).
[0136] One particular benefit of this method is its ability to generate metrics accurately and reliably based on a single waveform. Preprocessing steps (e.g., denoising and breath separation) are preferably performed, but these are not required and are not described. Further preprocessing steps for forming a stylized single waveform are other examples of this disclosure and are described below.
[0137] As noted above, one or more inflection points of the waveform can be identified. In particular, the identified inflection points include one or more of the following: the δ inflection point δ, the γ inflection point γ, and the α inflection point α.
[0138] These inflection points can be determined using a variety of methods. Preferred methods include determining the first derivative of the respiratory waveform due to its high accuracy and compatibility with automation and machine learning. It has been found that the first derivative of the respiratory waveform can be used as a reference to the respiratory waveform itself to determine several inflection points.
[0139] Determining the first derivative of the waveform also allows for screening the feasibility of respiration patterns, thus conserving computational resources. For example, the first derivative can be compared to a differential template, and when the first derivative of the respiration waveform is inconsistent with the template, the respiration waveform is excluded and the waveform analysis terminates. The nature of the template and the level of inconsistency allowed before the exclusion threshold can vary depending on the details of the waveform analysis; for example, which inflection points to identify and which features of the respiration waveform to extract.
[0140] Figures 6A to 6D Several examples of respiratory waveforms with their first derivatives superimposed are shown, where the first derivative is determined by combining a Savitsky-Golay (SG) filter applied to the respiratory waveform. In these figures, the ratio of the SG filter's first derivative to the respiratory waveform has been altered to facilitate easier comparison between the SG filter and the respiratory waveform. Figures 6A to 6D And especially Figure 6A In the middle, when with Figure 4 When comparing ideal waveforms, it will be clear that the peak of the first derivative can substantially correspond to the inflection point of the respiratory waveform, or is close to the inflection point of the respiratory waveform, and can therefore be used as part of determining the inflection point.
[0141] from Figure 6B , Figure 6C and Figure 6D It is evident that artifacts in the respiratory waveform have a significant impact on the shape of the waveform and the first derivative. For example, Figure 1C , Figure 6B and Figure 6C The image shows an artifact related to the P2 anterior hump in the expiratory ascending limb. These artifacts should preferably be identified and addressed during waveform analysis (e.g., during inflection point determination and / or feature extraction). This is particularly beneficial when automating the inflection point determination step.
[0142] Preferably, when a hump artifact is identified in the respiratory waveform, it should be addressed during further analysis of the respiratory waveform. For example, if the hump artifact produces the point of maximum amplitude on the first derivative, rather than being caused by the expiratory ascending branch P2 or the inspiratory descending branch P4a, the first derivative can be addressed by normalizing the peak relative to the peak caused by the ascending branch P2 or the descending branch P4a, rather than the hump artifact. Various thresholds (discussed below) used to determine inflection points can then be defined based on the renormalized first derivative to avoid the influence of the hump artifact. Alternatively, the hump artifact can be addressed by ignoring the artifact (e.g., by ignoring or removing data associated with the hump artifact (effectively subtracting the hump)) or by adjusting the weights applied to the data associated with the hump artifact when determining one or more inflection points.
[0143] Artifact detection can be performed using several methods. Preferred methods include peak detection of the respiratory waveform, and optionally, the determination and / or use of the first derivative of the respiratory waveform, due to their high accuracy and compatibility with automation and machine learning.
[0144] As part of artifact detection, peak detection is performed to identify local minima in the respiratory waveform. Significant minima can then be identified from these local minima. Identifying significant minima is particularly useful when the respiratory waveform is a noisy signal. When one or more significant minima are found, the local region of the waveform is examined to determine if a hump artifact is present, and if present, the hump artifact is identified. For example, from... Figure 1C It can be clearly seen that there are significant local minima before the expiratory ascending branch P2 and after the hump artifact. Searching for local maxima close to these significant minima will identify the hump artifact before the expiratory ascending branch P2.
[0145] When no significant minimum is identified (e.g., due to noisy breathing waveforms), the first derivative of the breathing waveform can be used to search for camel hump artifacts. For example, from... Figure 6A and Figure 6B and Figure 6C The comparison shows that the first derivative (in this case, the SG filter) is significantly affected by the presence of the hump artifact before the expiratory ascending limb P2 (i.e., during the expiratory baseline P1), and therefore can be used to identify potentially missed hump artifacts. For example, in Figure 6C In the middle, the SG filter increases, then levels off briefly at the inflection point before rising again, indicating a smaller (relative to) portion of the respiratory waveform. Figure 6B (The) camel hump artifact.
[0146] When hump artifacts are identified, whether or not first-order derivatives are used, the artifacts must be addressed during the determination of the inflection point to ensure its accurate definition. For example, after identifying hump artifacts, the first-order derivative of the respiratory waveform can be normalized or renormalized based on the maximum / minimum / maximum values of the first-order derivatives excluding the hump artifacts.
[0147] To avoid unnecessary use of computational resources, the region of the respiratory waveform considered during these steps (e.g., peak detection and / or significant minimum identification) can be limited. For example, the maximum value of the respiratory waveform is identified, and the waveform is temporally divided into a first segment and a second segment. The first segment is a time period of the respiratory waveform excluding the maximum value, and the second segment is a time period of the respiratory waveform including the maximum value. To conserve computational resources and avoid searching for hump artifacts during the inspiratory phases (P4a and P4b), the step of identifying hump artifacts (e.g., identifying local minima, or searching for hump artifacts when at least one significant minimum is identified) is performed in the first segment of the respiratory waveform instead of the second segment.
[0148] It has been found that the minimum value corresponding to the hump artifact in the carbon dioxide waveform typically has a pCO2 value below 2 kPa. Therefore, a predetermined threshold (referred to herein as the hump artifact threshold) can be applied to further reduce the processing resources required to search for hump artifacts. This can be achieved in various ways, such as by discarding any detected minimum values above the hump artifact threshold, or by not searching for these minimum values above the hump artifact threshold initially. The hump artifact threshold can be used in place of the first and second segmentation described above, or in combination with the segmentation of the respiratory waveform.
[0149] Even if a significant minimum is not identified, a hump artifact may still be present in the respiratory waveform. For example, this could be... Figure 6C The situation depends on the peak detection method or the technique used to identify significant minimums. When no significant minimum is identified, the first derivative of the waveform can be used to identify whether the respiratory waveform contains hump artifacts. Examining the first derivative of the inflection point region allows comparison with a predetermined threshold.
[0150] Preferably, in order to reduce the processing resources used, only the first derivative in the region between the starting point and the maximum value of the first derivative is examined.
[0151] Alternatively, instead of identifying local minima of the respiratory waveform and the significant minimum of the local minima, local maxima of the respiratory waveform (and the corresponding significant maximum) can be used to identify hump artifacts.
[0152] When camel hump artifacts are present, any artifact identification and processing steps should be performed before identifying the inflection point to define the inflection point most accurately.
[0153] The delta inflection point δ can be determined using the first derivative of the respiratory waveform. A preferred method involves determining the point of maximum amplitude of the first derivative (i.e., the amplitude of the highest or lowest peak of the first derivative) and using this maximum amplitude point to define a predetermined threshold (referred to herein as the delta threshold). For example, the delta threshold could be a value equal to 10% of the maximum amplitude point of the first derivative. This delta threshold (and other thresholds) can also be found by normalizing the first derivative relative to the maximum amplitude point of the first derivative to 1 (after processing any hump artifacts). The location of the delta inflection point δ in the time dimension can then be defined as the first point in time at which the first derivative of the respiratory waveform is higher than the delta threshold (after processing the identified hump artifacts). That is, the respiratory waveform value corresponding to this point in time is the delta inflection point δ between the expiratory baseline P1 and the expiratory ascending limb P2.
[0154] The γ-inflection point γ can also be determined using the first derivative of the respiratory waveform. A preferred method involves determining the point of maximum amplitude of the first derivative (i.e., the amplitude of the highest or lowest peak of the first derivative) and using this maximum amplitude point to define a predetermined threshold (referred to herein as the γ-threshold). For example, the γ-threshold could be a negative value equal to 5% of the maximum amplitude of the first derivative. The method also includes determining the minimum value of the first derivative. The location of the γ-inflection point γ in the time dimension can then be defined as the first point in time after the minimum value of the first derivative of the waveform, when the first derivative is higher than the γ-threshold. That is, the respiratory waveform value corresponding to this point in time is the γ-inflection point γ between the inspiratory descent P4a and the inspiratory baseline P4b.
[0155] The α-inflection point α can also be determined using the first derivative of the respiratory waveform. A preferred method involves determining the point of maximum amplitude of the first derivative (i.e., the amplitude of the highest or lowest peak of the first derivative) and using this maximum amplitude point to define a predetermined threshold (referred to herein as the α-threshold). For example, the α-threshold could be a value equal to 15% of the maximum amplitude of the first derivative. The method also includes determining the maximum value of the first derivative and the maximum value of the respiratory waveform. In some instances, the maximum amplitude of the first derivative may also be the maximum value of the respiratory waveform, although this is not always the case and will depend on the specific respiratory waveform being analyzed. The location of the α-inflection point α in the time dimension can then be defined as the first point in time after the maximum value of the first derivative and when the first derivative is less than the α-threshold. That is, the respiratory waveform value corresponding to this point in time is the α-inflection point α between the expiratory ascending limb P2 and the expiratory plateau P3.
[0156] In some instances of the method, the α threshold can be adjusted. For example, when there are no points between the maximum value of the first derivative and the maximum value of the respiratory waveform that are less than the α threshold, the α threshold can be increased, and the values of the first derivatives (within the same boundaries) can be compared with the increased α threshold. This process can be performed iteratively until the α inflection point α is defined, or until an upper limit for the number of iterations is reached. If this upper limit is reached, the respiratory waveform can be excluded, or the analysis of the respiratory waveform can continue.
[0157] To conserve processing resources, the position of the α-inflection point α in the time dimension can be optionally defined as the first point in time between the maximum value of the first derivative of the respiratory waveform and the maximum value of the respiratory waveform (or the β-inflection point β), where the first derivative is less than the α threshold. Since the α-inflection point α is known to precede the β-inflection point β in the respiratory waveform and is likely to precede the maximum value of the respiratory waveform, these constraints prevent unnecessary data analysis when determining the α-inflection point α.
[0158] One possible method for determining the α inflection point α is to calculate a linear line between the δ inflection point δ and the maximum value (or β inflection point) of the respiratory waveform, and to define the α inflection point α based on the distance between the respiratory waveform and the calculated line. For example, when using a second linear line perpendicular to the calculated line to measure the distance between the respiratory waveform and the line, the α inflection point α can be defined as the point on the respiratory waveform that is furthest from the calculated line between the δ inflection point δ and the maximum value of the respiratory waveform.
[0159] Identifying one or more inflection points may also include identifying the β inflection point β between the expiratory plateau P3 and the descending inspiratory limb P4a. The β inflection point β can be used to extract additional features from the respiratory waveform and help identify or verify other aspects of the waveform, such as the α inflection point α and the hump artifact.
[0160] Peak detection can be used to determine the β inflection point β. Peak detection is performed to identify local maxima in the respiratory waveform. Significant maxima can then be identified from these local maxima; this is particularly useful when the respiratory waveform is a noisy signal. Significant maxima can be identified by comparing each identified maxima to a threshold or by comparing a set of maxima. Optionally, since the CO2 value at the β inflection point β is expected to be higher than a predetermined threshold for the feasible respiratory waveform (the maximum value threshold in this document), CO2 values below the maximum value threshold can be ignored (e.g., by removing these values during peak detection or setting them to 0), to reduce noise in values below the maximum value threshold during peak detection.
[0161] When no significant maximum is identified, this typically indicates that the respiratory waveform is a poor sample, and therefore the waveform is excluded without further unnecessary processing. When only a single significant maximum is identified, the location of the β inflection point β in the time dimension can be defined as the time point of the single significant maximum. When multiple significant maximums are identified, the most significant maximum is determined and used as the β inflection point β. Various methods can be used to determine the most significant maximum; one method uses a two-step significance-based algorithm that compares the height of each maximum with the surrounding region, and if two or more maximums are not filtered out at this stage, the heights of the remaining maximums are compared. If, for example, the most significant maximum cannot be determined within a reasonable number of iterations, the first of these significant maximums is used as the β inflection point β. If other inflection points are known, these points can be used to help determine the β inflection point β. For example, the β inflection point β is before the γ inflection point γ, so any anomalous significant maximums after the γ inflection point γ are not considered during the determination of the β inflection point β.
[0162] When the β inflection point β is known, this point can be used to replace the maximum value of the respiratory waveform in the above method. That is to say, the position of the α inflection point α in the time dimension can be defined as the first point in time between the maximum value of the first derivative of the respiratory waveform and the β inflection point β, where the first derivative is less than the α threshold.
[0163] The β inflection point β can also be used in alternative methods to determine the α inflection point α described above. Instead of calculating a linear line between the δ inflection point δ and the maximum value of the respiratory waveform, a linear line between the δ inflection point δ and the β inflection point β is calculated. Then the α inflection point α can be determined based on the line calculated in this way in the same manner as described above.
[0164] Similarly, when identifying hump artifacts using the method described above, the respiratory waveform can be temporally divided into a first segment excluding the β inflection point β and a second segment including the β inflection point β. As previously mentioned, the step of identifying hump artifacts (e.g., identifying local minima, or searching for hump artifacts when at least one significant minima is identified) is performed in the first segment of the respiratory waveform, rather than in the second segment.
[0165] We have already described how first-order differentials (or higher-order differentials or combinations thereof) can be used to identify inflection points and to algorithmically compensate for noise and artifacts. An alternative approach is to analyze point-by-point differences in the sample. For example, this method would take the point-by-point differences in the sequence, i.e., if the sequence is {t0, t1, t2, …, t n This will generate {t1-t0, t2-t1, …, t}. n -tn-1 The time series {t0, t1-t0, t2-t1, …, t} is added to the beginning, making the final sequence {t0, t1-t0, t2-t1, …, t}. n -t n-1}
[0166] In other words, the difference between each value or sample represents a change in the curve of the carbon dioxide waveform. This can be analyzed to identify inflection points and decompose noise and artifacts in a similar manner to that described above. In summary, in addition to the methods described above with time-based smoothing filters and first-order derivatives, higher-order derivatives or point-by-point differences in time-series carbon dioxide waveform data (i.e., the values of the curve) can also be used to identify inflection points between the shape and phases of the curve.
[0167] Figure 7A , Figure 7B and Figure 7C The above steps are shown in the form of a process flow.
[0168] exist Figure 7A In the first step illustrated, the inspiratory and expiratory phases are extracted by identifying the starting point of the inspiratory phase. The input to this process is a digitized sample 601 of carbon dioxide waveform data. First-order Savitzky-Golay derivatives 602 and 603 are calculated and normalized using an appropriate Savitzky-Golay filter. If this is inconsistent with good breathing, it can be excluded, for example, by comparing it to a template shape of the derivative or by thresholding or other suitable means to identify the desired derivative.
[0169] Next, from the sampled data 601, the peak detection algorithm finds local maxima and minima 604. If no significant minima are detected from the subset of minima (e.g., using a bidirectional local window to identify 605), the derivative 606 is analyzed to identify additional humps before the start of exhalation. If these exist 608, the derivative 603 can be renormalized, and the process starts again. The derivative can identify humps that are not present in the sampled data. If multiple minima are found in the subset, the minimum values in the samples are checked in the first half of the breath (i.e., the cycle), where the minimum value is less than a threshold (i.e., the hump artifact threshold). The threshold can preferably be chosen to be less than 2 kPA, chosen to identify humps that are unlikely to be at a plateau.
[0170] From the local maxima identified by the peak detection algorithm, the start of inhalation can be identified as being at the end of exhalation. Such edge cases can be handled appropriately. If only one maximum value is detected from a subset 610 of the most significant maximum values (e.g., identified by a single forward window), the location of the start of inhalation can be identified 611. If there is no maximum value or if the resulting phase is too short, the waveform can be excluded. If more than one significant maximum value is identified 612, the above iterations can be performed to identify the start of inhalation by comparing each maximum value with a threshold or with each other, or optionally, the first maximum value can be taken as the start of the inhalation phase.
[0171] exist Figure 7B In the second step shown, based on the normalized derivative (i.e., the SG filter derivative) and the position in the waveform defined as the start of inhalation, the method can identify the turning point of breathing and the start and end of each phase.
[0172] The endpoint 613 of stage 1 can be identified as the first position 614 where the derivative exceeds a positive threshold. Preferably, the threshold can be 0.1 when the derivative has been normalized to 1 relative to the point of maximum magnitude of the derivative (after processing any camel hump artifacts). The threshold is positively selected through detailed study and analysis. If the derivative does not exceed the threshold, the waveform can be excluded.
[0173] Based on the derivative, the value of the derivative between the inhalation start position and the maximum value of the derivative can be compared with a threshold 615. If too many points are identified (i.e., more than 20 positions), the waveform can be excluded. The threshold can be iteratively increased 616 (e.g., in increments of 0.05) until fewer points are identified. The position 617 of the end of stage 2 can then be identified from this comparison 615. Based on the two identified positions 613 and 617, the duration 618 of stage 2 can be identified.
[0174] The end point of stage 3 can be identified from the previously identified inhalation start point 611. Therefore, the duration 619 of stage 3 can be identified by comparing the end point 617 of stage 2 with the inhalation start point 611.
[0175] Based on the differential, the first point 620 exceeding the negative threshold between the minimum and the endpoint of the differential can be identified. Therefore, the location of this point and the location of the minimum of the differential can be used to identify the endpoint 621 of stage 4a. The endpoint 622 of stage 4b can be defined as the range from the endpoint of stage 4a to the endpoint of the waveform.
[0176] The duration 612 of phase 4a can be the range from the position 611 (i.e. the end of phase 3) defined above as the starting point of the inhalation phase to the end of phase 4a 621.
[0177] therefore, Figure 7A and Figure 7B The outputs of the two processes shown in the figure can be normalized first derivative 603, inhalation start position 611, and the start and end points of each phase of the waveform, i.e., the duration or range of the phase 613, 618, 619, 612, 622.
[0178] In another optional example of this disclosure, the segmentation can be further divided into angular stages. Examples of such process flows are shown below. Figure 7C .
[0179] The starting point of the δ angle, 623, is defined as the ending point of stage 1, 614. The first significant maximum value 624 of the differential 603, which occurs after the local minimum 625 but before reaching its minimum 626 at the last point in the differential, is defined as the ending point of the δ angle, 626. The local minimum 625 is used to avoid any peaks at the beginning of the waveform.
[0180] The starting point 627 of the α angle is defined as the first time when the differential falls below a threshold 628 after the first significant maximum value 624, wherein the threshold 628 is preferably 0.2 to 0.9, and more preferably 0.5. The ending point 629 of the α angle is defined as the end point of stage 2.
[0181] The starting point of the β angle is defined as the inspiratory initiation position. The ending point 632 of the β angle is identified as the first time when the derivative after the inspiratory initiation is lower than a negative threshold 631, which is preferably -0.4 to -1, and more preferably -0.9.
[0182] The starting point of the γ angle is defined as the first time when the derivative exceeds a negative threshold 634 after the minimum value 625 of the derivative, wherein the negative threshold 634 is preferably -0.6 to -1, and more preferably -0.9. The ending point of the γ angle can be defined as the ending point 621 of stage 4a.
[0183] These angular features can optionally be used to identify other useful features, as discussed below, with a particular preference for identification based on inflection points.
[0184] In step S102, features of the respiratory waveform are extracted, preferably using one or more of the determined inflection points to extract features of the respiratory waveform.
[0185] Deriving key features (i.e., biomarkers) from carbon dioxide waveforms allows for the training and configuration of machine learning models to generate indicators of smoking history based on these features. Many different features can be extracted from respiratory waveforms using various methods; a series of non-exhaustive examples are provided below. It should be noted that the benefit of each of these identified features can be separated from the overall approach we present in its context.
[0186] Extracting biomarkers or features from carbon dioxide mapping has become a major focus in academia. These features are each particularly valuable and, to date, may not have been automatically described or computed. Furthermore, the extraction of such features based on inflection points has not been previously described, nor has it been described how to efficiently compute them without human intervention.
[0187] In the first set of features, the angle at the inflection point can be determined by applying a linear fit to each stage on either side of the inflection point and calculating the angle between them. For example, the α angle (the angle at the α inflection point α) can be determined by fitting a straight line to the expiratory ascending branch P2 and the expiratory plateau P3 and calculating the angle between them at the α inflection point α where the fitted lines intersect. The straight line can be fitted between two inflection points (e.g., fitted to the straight line of the expiratory ascending branch P2 between the δ inflection point δ and the α inflection point α), or between the object inflection point (in this case, the α inflection point α) and another point along an adjacent stage (e.g., in this case, a point along the expiratory ascending branch P2 or the expiratory plateau P3). The nature of the linear fit may depend on the shape of the respiratory waveform. It has been found that different features indicate different physical properties. For example, in the context of features and inflection points as defined in this document, the α angle can indicate a large number of packages.
[0188] As mentioned above Figure 7C As mentioned above, the starting and ending points of the angle (e.g., time values and CO2 values) are also important features that have been found to consistently and effectively drive machine learning models and improve their performance, and lead to other features that also improve machine learning models. Further examples of these features are described below.
[0189] The starting point of the delta angle can be defined as the delta inflection point δ (i.e., the end point of the expiratory baseline P1), while the endpoint of the delta angle needs to be determined separately. The endpoint of the delta angle can be determined using the first derivative of the respiratory waveform. Then, the position of the endpoint of the delta angle in the time dimension can be defined as the point in time corresponding to the first significant maximum value of the first derivative of the respiratory waveform (starting from the starting point of the respiratory waveform, or, at the time of identification, after the hump artifact). Alternatively, the endpoint of the delta angle can be defined as the first significant maximum value of the derivative (i.e., relative to a predetermined threshold) after a local minimum and before the position of the minimum of the derivative.
[0190] In the time dimension, the position of the α-angle initiation point can be defined as the first point in time after the first significant maximum value of the first derivative of the respiratory waveform when the first derivative of the respiratory waveform falls below a predetermined threshold (referred to herein as the α-angle initiation threshold) (i.e., the first point after the δ-angle initiation point). For example, the α-angle initiation threshold can be a value from 20% to 90% of the maximum amplitude point of the first derivative, and more preferably 50% of the maximum amplitude point of the first derivative. The α-angle initiation point can be defined as the α-turning point α (i.e., the end point of the expiratory ascending limb P2).
[0191] The β-angle initiation point can be defined as the β-turn point β (i.e., the initiation point of the inspiratory descent P4a). In the time dimension, the position of the β-angle endpoint can be defined as the first point in time after the β-angle initiation point where the first derivative of the respiratory waveform falls below a predetermined threshold (referred to herein as the β-endpoint threshold). For example, the β-endpoint threshold can be a value between 40% and 100% of the negative value of the maximum amplitude point of the first derivative of the respiratory waveform, and more preferably, a value of 90% of the negative value of the maximum amplitude point of the first derivative of the respiratory waveform.
[0192] In the time dimension, the starting point of the γ angle can be defined as the first point in time where the first derivative of the respiratory waveform exceeds a predetermined threshold (referred to herein as the γ starting threshold) after the minimum value of the first derivative. For example, the γ starting threshold can be 60% of the negative value of the maximum amplitude point of the first derivative of the respiratory waveform, and more preferably 90% of the negative value of the maximum amplitude point of the first derivative of the respiratory waveform. The ending point of the γ angle can be defined as the γ inflection point γ (i.e., the end of the inspiratory descent branch P4a).
[0193] In step S103, an indicator of smoking history is generated based on one or more extracted features, preferably by applying a trained machine learning model to the extracted features.
[0194] Examples of suitable machine learning algorithms include logistic regression, gradient boosting decision trees, support vector machines, AdaBoost, and random forests, although it will be understood that other algorithms are also suitable. Some machine learning models (e.g., logistic regression models) allow examining the impact of each extracted feature on the prediction. Some models (e.g., gradient boosting decision trees models), which are resistant to overfitting while maintaining a high level of interpretation, help ensure that the model is generalizable to new data. It should be understood that the present invention can be implemented using various machine learning models other than those listed in the specification.
[0195] Trained machine learning models can be configured to provide additional information along with metrics on smoking history. For example, the model can provide confidence levels associated with the metrics and / or highlight which extracted features contribute to the generated metrics and to what extent the (different) features contribute.
[0196] As part of step S103, a trained machine learning model can be applied to features extracted from a single respiratory waveform or from multiple respiratory waveforms. Multiple respiratory waveforms can originate from a single carbon dioxide waveform (i.e., a series of respiratory waveforms recorded by the user within a single respiratory cycle) or from multiple carbon dioxide waveforms recorded at different times. When extracting features from multiple carbon dioxide waveforms, these waveforms can be obtained over an extended time period (i.e., recorded by the user). For example, carbon dioxide waveforms can be repeatedly recorded by the user multiple times throughout the day for a period lasting multiple days, weeks, or months. Extracting features from multiple respiratory waveforms obtained over an extended time period (i.e., multiple carbon dioxide waveforms, rather than respiratory waveforms from a single carbon dioxide waveform) allows for the determination of variability in the extracted features and provides a more accurate indicator of the user's smoking history. For example, the time of day from which the user generated the carbon dioxide waveforms may be influential because hormone levels (e.g., cortisol levels) vary throughout the day.
[0197] Figure 8 The method for training a machine learning model to learn smoking history metrics is shown.
[0198] In step S201, one or more respiratory waveforms are obtained from multiple carbon dioxide waveforms. Step S201 mirrors step S101 by splitting the carbon dioxide waveforms into segments consisting of a single, complete respiratory waveform. Training a machine learning model with a larger amount of data having a wider variety of attributes generally results in a better trained model capable of generating more accurate metrics. Preferably, a larger amount of data is provided by obtaining respiratory waveforms from a larger number of different carbon dioxide waveforms (i.e., most preferably, different carbon dioxide waveforms generated by different respiratory tracts at different times); however, multiple respiratory waveforms can also be obtained from a single carbon dioxide waveform among multiple carbon dioxide waveforms.
[0199] In step S202, one or more features are extracted from multiple breathing waveforms. Preferably, the above-mentioned reference is used. Figure 5 The same technique is used to determine one or more inflection points of the waveform. This also includes, for example, determining the first derivative of the breathing waveform, and identifying and processing hump artifacts. Step S202 corresponds to step S102 described above and can be performed using the same technique.
[0200] When repeating step S202 for each of the different respiratory waveforms in multiple carbon dioxide waveforms, it is not necessary to determine the same inflection point and / or extract the same features from each waveform for each respiratory waveform. However, it is preferable to determine the same inflection point and extract the same features for multiple respiratory waveforms (and more preferably, for most respiratory waveforms) to train the machine learning model more effectively.
[0201] In step S203, a label indicating the corresponding smoking history is obtained for each breathing waveform.
[0202] Obviously, step S203 can be performed before or after step S201 and / or step S202.
[0203] In step S204, a machine learning model is trained using labels from multiple breathing waveforms and extracted features to learn indicators of smoking history, preferably by creating a prediction function. The resulting prediction function is suitable for the trained machine learning model used in step S103.
[0204] In preferred examples, it can be as follows: Figure 9 The diagram illustrates a combination of multiple machine learning methods. Figure 10A and Figure 10B It shows Figure 9 The three components.
[0205] Based on a representation of a single respiratory waveform (including, for example, an average waveform or a template waveform) 801, feature engineering is performed 802 as described below. Then, multiple machine learning models are used in two instance components 803, 805 of the system.
[0206] In this example, three different ML models were selected: Logistic Regression (LR), Gradient Boosting Decision Tree (XGBoost), and Support Vector Machine (SVM). LR and XGBoost were chosen as simple, effective, and interpretable algorithms, while SVM, and more specifically kernel SVM, was included for classification in a high-dimensional, non-linear feature space. Deep learning methods could also be used; however, to maintain interpretability and avoid increased computational complexity, these methods may not be preferred in these examples. It should be understood that deep learning (e.g., ANN or BiLSTM) can also be applied to this method and is particularly suitable for this feature engineering.
[0207] Figure 10A A schematic diagram illustrates an implementation of generating an indicator of smoking history from a single representation of a respiratory record. Patient 901 is divided into a training dataset and a validation dataset 902, and a model 903 is trained based on said dataset 902. Optionally, carbon dioxide waveforms are obtained and grouped according to the k-fold of patient stratification, where each patient's record exists only within a single fold of that stratification. Another subset 904 can optionally be used as an unseen test set as input to a trained model 905, which functions to classify records based on the indicator of smoking history.
[0208] Figure 10BA further extension is shown, where time-series methods can be used to expand the task to examine how features change over time. This longitudinal information can then be used to generate indicators of smoking history.
[0209] Longitudinal information can include multiple respiration records from the same capture sessions, or multiple carbon dioxide waveforms captured over time. Time-series methods are introduced to calculate... n Variability over a sky window, where variability is defined as the standard deviation among all extracted features. For example... Figure 10B As shown, data is captured from the patient over a period of time. As described above, in this example, features extracted from each waveform at each time point can be compared, for example, to identify the mean, median, or standard deviation of the features, or alternatively, to identify the statistical distribution of the features over time. These can be used to further train the model based on the variability of the features.
[0210] like Figure 10B As shown, patient 901 undergoes time series method 911 before being assigned to the training dataset, validation dataset, and unseen test dataset. The trained model 905, once trained 903, classifies patient data based on learned indicators of smoking history.
[0211] The algorithm for identifying the inflection point S102 in the carbon dioxide waveform has been described above. In an alternative implementation, machine learning methods can be used to identify the inflection point S102.
[0212] To train the model, multiple respiratory waveforms can be obtained. As mentioned above, this can be in the form of a set of discrete samples. A set of labels can be applied to one or more samples for each respiratory waveform. The labels can represent features that the machine learning model aims to learn. For example, the labels can correspond to a phase of a specific respiratory waveform. Alternatively, the labels can correspond to a positive or negative indication of whether a sample corresponds to an inflection point. Alternatively, the labels can correspond to real numbers indicating how far along the breath a specific inflection point occurs. In a preferred instance, there can be five output categories, with each label identifying which of the five categories a sample belongs to.
[0213] Labels and a set of training breathing waveforms can each be fed to a classifier or other suitable machine learning model (e.g., a convolutional neural network), which can be configured to learn to predict inflection points for an unseen set of samples. In a particular instance, a logistic regression model can be trained in a supervised manner on defined labels and samples to learn to classify each individual sample into a defined set of output categories. The input can be normalized to a fixed-length complete breath. Similarly, there can be multiple logistic regression models, one for each sample.
[0214] In the implementation phase, a set of unseen samples of breathing can be provided to a model trained on the aforementioned labels and training breathing waveforms (or multiple models in the above example, where each sample has a trained model). The unseen samples are classified into defined output categories. Based on samples adjacent to the boundaries of each category, transition points between stages of the unseen waveform can be identified. This information can then be used to extract features of the waveform, as identified elsewhere in this disclosure.
[0215] Another way to extract features from one or more carbon dioxide waveforms generated by the user is to use multiple breathing waveforms to generate a single, smooth, average breathing waveform, from which features can then be extracted. Features can be extracted from this average breathing waveform instead of extracting features from individual breathing waveforms, or features can be extracted from the average breathing waveform in addition to extracting features from individual breathing waveforms.
[0216] First, multiple respiratory waveforms are obtained from one or more CO2 waveforms generated by the user. While these respiratory waveforms can be provided as input to the method, in many cases, the method will involve processing one or more CO2 waveforms to obtain multiple respiratory waveforms. This typically involves dividing one or more incoming CO2 waveforms into multiple CO2 waveform segments. Each CO2 waveform segment will preferably represent a single respiratory waveform corresponding to a single respiratory cycle, and the method will therefore involve determining the δ and γ inflection points of each CO2 waveform segment in any of the ways described above, and then extracting the portion of the CO2 waveform segment between the δ and γ inflection points to generate the respiratory waveform. Alternatively, the cutoff points can be varied to capture more baseline, which can allow capturing more information related to the user's respiratory cycle. The respiratory waveform may also capture only a portion of the CO2 waveform generated by the user, such that the respiratory waveform captures a portion of the respiratory cycle rather than the entire respiratory cycle.
[0217] Multiple respiratory waveforms typically have different durations, reflecting the fact that a user's respiratory cycles differ in length from one another. Similarly, the CO2 inhaled and exhaled varies between respiratory cycles, resulting in different respiratory waveforms with varying amplitudes. Since these differences between the respiratory waveforms of an individual user generally do not indicate a smoking history, it is preferable that the average respiratory waveform does not reflect the differences in duration among multiple respiratory waveforms, and optionally reflects the differences in amplitude among multiple respiratory waveforms. In contrast, in embodiments of the invention, an average respiratory waveform is used to represent the average shape of a user's respiratory waveform.
[0218] For this purpose, the durations and optional amplitudes of multiple respiratory waveforms are normalized to generate multiple normalized respiratory waveforms. The duration of a respiratory waveform refers to the time from the beginning to the end of the respiratory cycle. As will be discussed below, the beginning and end points can be determined in different ways, but in all cases, these points are consistently chosen across all respiratory waveforms. During normalization, the duration of each of the multiple respiratory waveforms is scaled so that the duration is the same for all respiratory waveforms.
[0219] Similar to the normalization of the duration of multiple respiratory waveforms, the amplitude of the multiple respiratory waveforms can optionally be scaled so that the amplitude is the same for all respiratory waveforms. This amplitude can be determined in different ways and can be as simple as the difference in CO2 readings between the highest and lowest points of the respiratory waveform. Ideally, the highest CO2 reading will be the end-expiratory CO2 value, and this will indeed be the case for many respiratory waveforms. However, due to measurement errors or potential conditions of the corresponding respiratory cycle, the maximum amplitude will usually be found at different points in the respiratory waveform. This can lead to inconsistencies in how the respiratory waveform is normalized, so it is preferable to use the end-expiratory CO2 value to normalize the respiratory waveform. This involves extracting the end-expiratory CO2 value from each respiratory waveform in any of the ways described above (e.g., determining the β-inflection point), and then adjusting the amplitude of each of the multiple respiratory waveforms so that each of the multiple respiratory waveforms has the same end-expiratory CO2 value.
[0220] Once the respiratory waveforms have been normalized, an average respiratory waveform is generated from multiple normalized respiratory waveforms. It is preferable to use a generalized additive model (GAM) to generate the average respiratory waveform. Although other averaging methods (such as taking the geometric mean or median of multiple respiratory waveforms) are possible, using GAM allows for the generation of a physiologically more accurate waveform that does not overfit to data from multiple respiratory waveforms. It is also more resistant to outliers in the data.
[0221] Another advantage, which will be discussed in more detail with reference to the specific examples shown below, is that each of the multiple respiratory waveforms typically comprises a series of data points. Simply taking the geometric mean or median of the data points from multiple respiratory waveforms would therefore result in an average respiratory waveform that itself comprises a set of discontinuous data points. In contrast, using GAM results in a continuous functional representation of breathing, thus allowing the average respiratory waveform to be used at any resolution desired by the operator.
[0222] However, in some embodiments of the present invention, other methods are used to generate the average waveform.
[0223] Features can then be extracted from the average breathing waveform in a similar manner to how features are extracted from a single breathing waveform, and a trained machine learning model can be applied to these features to generate an indicator of smoking history. A machine learning model can be employed that, in generating the smoking history indicator, utilizes features extracted from the user's individual breathing waveforms in addition to those extracted from the average breathing waveform. Alternatively, a machine learning model can be employed that, in generating the smoking history indicator, utilizes only features extracted from the user's individual breathing waveforms or features extracted from the average breathing waveform.
[0224] The usefulness of the generated average respiratory waveform (whether it is generated using GAM or some other method) can still be further improved by first identifying whether any of the multiple normalized respiratory waveforms are abnormal, and then excluding the abnormal normalized respiratory waveforms before generating the average respiratory waveform.
[0225] A favorable approach to identifying anomalous normalized respiratory waveforms is to interpolate the normalized waveforms to ensure they all have the same number of data points, and then directly compare the data points of one normalized respiratory waveform with those of another. Any normalized respiratory waveform with one or more anomalous data points is then identified as anomalous and excluded.
[0226] It has been found that this method requires less computation than other methods for excluding abnormal breathing. For example, it has been found that interpolating normalized breathing waveforms and comparing data points to identify abnormal breathing requires less computation than standard anomaly detection algorithms.
[0227] Specific examples of this method will now be described, which have been found to be particularly advantageous.
[0228] This example has already been described in the case of obtaining respiratory waveforms from a single carbon dioxide waveform plot, but it can also be applied to the case of obtaining respiratory waveforms from multiple carbon dioxide waveform plots. Similarly, those skilled in the art will understand that other modifications to this specific example are possible. For example, the example described below can be modified to use respiratory waveforms that capture different portions of the respiratory cycle, rather than the waveforms between the delta and gamma inflection points, such as capturing those that capture more of the baseline or capturing predetermined portions of the respiratory cycle instead of the entire respiratory cycle.
[0229] First, obtain the carbon dioxide waveform, then divide it into... The process involves creating a carbon dioxide waveform segment, and then, for each segment, extracting only the waveform between each δ-angle inflection point and γ-angle inflection point. These inflection points can be identified in any of the ways described above, for example, such that the waveform between the δ-angle start point and the γ-angle end point is extracted for each carbon dioxide waveform segment. Using δ and γ inflection points is particularly advantageous because it results in a waveform more closely resembling the average breathing waveform of a single breathing waveform extracted from the carbon dioxide waveform. Therefore, features that can be extracted from a single breathing waveform can also be extracted from the average breathing waveform. Furthermore, in embodiments where the machine learning model used to generate indicators of smoking history utilizes features extracted from the user's individual breathing waveforms in addition to those extracted from the average breathing waveform, these inflection points of one or more breathing waveforms may have already been identified.
[0230] The respiratory waveforms were numbered 1 to M, and the respiratory waveforms Defined as to ,in It is a vector A vector representing the timestamp of each CO2 partial pressure value, and having a length Then, all breaths are individually normalized to the same duration and optional height (which is understood to mean the same amplitude), while preserving their unique shape. Optional height normalization can be achieved by scaling the end-tidal CO2 value (which can be calculated in any of the ways described above) to 5 kPa, making... The time series points are shifted so that they begin at... They are then linearly scaled so that the final point is at 3 seconds. Those skilled in the art will certainly understand that other values can be chosen for scaling the end-tidal CO2 value, and other values for scaling the duration. As discussed above, although optional, it is advantageous in some cases to exclude anomalous normalized respiratory waveforms. In this example, this is done by linearly interpolating all (normalized) respiratory waveforms to the same length (i.e., all respiratory waveforms include the same number of data points), thereby giving... and Those skilled in the art will understand that options are available. Other values. This allows for the first (normalized) respiratory waveform. The data points are compared with the first data point of each other (normalized) respiratory waveform. The data points are compared directly. One or more of these data points are identified as significant outliers in the respiratory waveform and are then excluded as abnormal.
[0231] In this example, data points with at least one data point are excluded. Any breathing waveform For the data points, If the deviation from the median (i.e., the median value of the nth data point of each respiratory waveform) exceeds 3 standard deviations, a subset of the original set of normalized respiratory waveforms is retained. Those skilled in the art will understand that different thresholds can be selected for abnormal respiratory waveforms. For example, different numbers of standard deviations can be selected as thresholds, or alternatively, different measures can be selected, such as percentage differences from the median.
[0232] Use this set Then, a generalized additive model (GAM) is used to generate a single, smoothed average respiration for the carbon dioxide waveform. In this specific instance, GAM is defined as... Its purpose is to minimize
[0233] The last item provides the cost for excessive bending, and the parameters Therefore, the level of penalty caused by excessive bending is controlled, thereby limiting the degree of overfitting. Those skilled in the art will understand that this is optional and can be adjusted by setting... The term "g" can be omitted. Although other processes such as Gaussian Process Regression or kernel ridge regression can be used, these processes are computationally more intensive than GAM or generate less smooth curves than GAM, and take a long time to fit high-resolution average respiratory waveforms.
[0234] The function to be minimized can be rewritten as follows: [All] Connected into a single set The length of each element in the vector is... and minimize
[0235] By using a collection of breaths Learning transformation functions To fit the model.
[0236] To fit the model, first select This should belong to one type of function. In the context of this invention, this is a set of cubic splines. These are a set of piecewise cubic polynomial functions that interpolate between specified control points (nodes), while matching the zeroth, first, and second derivatives at these nodes to form a single, smooth fit up to the second derivative (as shown in the figure). A set of basis splines is used. A linear combination is used to construct a cubic spline function to give...
[0237] Where the coefficient By minimizing and And thus fitted. The specific form of it is known in the art and it is uniformly distributed over time.
[0238] number The first and last basis functions are specified, with the first and last basis functions positioned at the first and last times respectively, such that they can both be horizontally scaled to fit within a 0 to 3 second window. (As noted above, the breathing waveform can be normalized to different durations, in which case the basis functions can also be scaled to different durations.) The coefficients are fitted using Poisson Iteratively Reweighted Least Squares (PIRLS) iteration. It has been found that... It allows for a good fit of any type of respiration (i.e., healthy or unhealthy) of any length. However, those skilled in the art will certainly understand that different fitting and optimization processes can be used.
[0239] The final numerical average waveform output is ,in Within the range A series of time points within, in this instance, means (As noted above, different values of N can be selected.) Using this average breathing waveform, the characteristics can be calculated using the method described above.
[0240] The advantage of using spline functions is that this approach is computationally more efficient than other methods, such as fitting higher-order polynomials. Similarly, cubic basis spline functions have been found to represent the optimal trade-off between ensuring the continuity of the GAM up to the second derivative and computational complexity. Lower-order spline functions will be discontinuous at the second (and possibly first) derivative, and this discontinuity in curvature reduces the effectiveness of feature extraction because some features are based on the curvature parameters of the mean breathing waveform. Higher-order spline functions do not have this problem, but they increase the computational complexity when fitting the GAM and may also lead to oscillations in the mean waveform that do not reflect the underlying data.
[0241] One alternative is to use a Bezier curve instead of a spline function. However, using a Bezier curve without nodes is computationally significantly denser, while using Bezier curves with nodes results in discontinuities in the first derivative. Both of these are significantly disadvantageous compared to the method of this invention.
[0242] As already noted, other modifications to the example given above are possible. One modification involves how respiration is normalized.
[0243] Although the duration and height of the respiratory waveform can be normalized to arbitrary values, in some preferred embodiments, breathing is normalized to the average end-expiratory CO2 value of a series of respiratory waveforms, wherein the average end-expiratory CO2 value is defined as follows:
[0244] This results in the following normalized height for each respiratory waveform:
[0245] Similarly, the duration of each respiratory waveform can be normalized to the average duration of the series of respiratory waveforms. This is particularly advantageous when the normalization step is combined with extracting the respiratory waveform from the corresponding carbon dioxide waveform segment of the respiratory waveform, rather than with receiving the respiratory waveform after the extraction occurs.
[0246] In this method, a timestamp of the δ angle is identified for each respiratory waveform. and the timestamp of the γ angle The difference between these The length of the portion of the respiratory waveform to be used when generating the average respiratory waveform is defined. Then, the average of these values is taken to determine the average delta time, average gamma time, and average difference.
[0247] (Although the arithmetic mean has been used as the mean, other measures of the mean can also be used, such as the median.)
[0248] Then, the timestamp of each respiratory waveform is shifted as follows: .
[0249] Here, the first term is translated and rescaled to make the delta inflection point 0 seconds, and the time difference between the delta inflection point and the gamma inflection point equal to the average. Then, the second term shifts the breath back so that the δ-turn point of that breath is at the timestamp of the average δ-turn point. (As noted above, the breath waveform can be normalized to any arbitrary value such that for a length of 3 seconds, ).
[0250] At this point, the delta inflection point and the gamma inflection point are synchronized between the respiratory waveforms. However, each respiratory waveform will typically include a portion of a baseline, and the amount of that baseline will vary between respiratory waveforms. This means that the start and end times of the respiratory waveforms will differ. To address this issue, the breath is cut into predetermined lengths. This can be arbitrary, but to extract the breath between the delta inflection point and the gamma inflection point, this preferably involves the following steps.
[0251] First, identify the average duration of the breath from the γ inflection point to the end of the respiratory cycle. For example, the arithmetic mean is used to define the mean difference:
[0252] in It is breathing The timestamp of the end point.
[0253] Then, each breathing waveform is cropped to its most recent timestamp. , to define As before, (Optionally, each respiratory waveform can be cropped to the average respiratory duration, such that (when using the arithmetic mean)...) Any breaths smaller than the selected cut length are expanded either by replicating their final values at regular intervals until the cut length is reached, or by linear fitting until the selected cut length is reached.
[0254] Another modification to the example given above concerns how the optional step of excluding abnormal breathing is performed. In some embodiments, the breathing waveform is interpolated to the same length without excluding abnormal breathing. In other embodiments, no interpolation is performed, and abnormal breathing is not excluded. In those embodiments where the breathing waveform is interpolated and abnormal breathing is excluded, it may be advantageous to restore the unexcluded breathing to its original uninterpolated form after excluding abnormal breathing.
[0255] The generation of the average waveform can also differ from the methods described above. While using GAM is advantageous for this, it eliminates the need to learn the transform function using spline functions. For example, linear and factor terms can also be used. While it has been found that linear terms themselves generally do not produce good fits, factor terms lead to better fits, although these fits are often more jagged than when using spline functions. Therefore, any combination of spline, factor, or linear terms can be used.
[0256] For example, when these additional terms are included, the function fitted by GAM is
[0257] in (for )and (for ) is a coefficient, and When the fitted transformation function The arbitrary value chosen at the time. The basis functions of the factor terms. basis functions of linear terms This is, of course, already known to readers in this field. and This means that the weights assigned to spline terms are much greater than the weights assigned to linear or factor terms, because spline terms provide a better fit.
[0258] It is also possible to generate an average waveform without using GAM.
[0259] One such example uses the mean of CO2 values at each time point to generate an average waveform. For example, when using the arithmetic mean:
[0260] Furthermore, the standard deviation can be calculated at each time point:
[0261] As mentioned above, although they are computationally more intensive or generate less smooth curves than GAM, two other possible approaches are Gaussian process regression and kernel ridge regression.
[0262] Similar to the GAM method, these methods begin by preprocessing the received breaths to obtain the breath waveform. Then, the goal of kernel ridge regression is to find the weight vector. Its minimization
[0263] in It is a loss function and Is it using kernel functions? Constructed kernel matrix For example, It uses an RBF core. Similar to the GAM implementation method. As a smoothing parameter, when the optimization algorithm is tuned When this is done, the smoothing parameter can be set.
[0264] Then, use Generate an average waveform, where Within the range A series of time points within the period.
[0265] The received breaths are preprocessed to obtain the breath waveform. Subsequently, Gaussian process regression defines the new time points of the average waveform as the range. A series of time points within (which will be referred to below) And so it began.
[0266] Gaussian process regression models will be known to those skilled in the art, and in this implementation, a kernel function similar to that specified in the kernel ridge regression model is used, which forms a kernel matrix whose elements are defined as follows:
[0267] Using hyperparameters The average waveform is predicted as
[0268] And the standard deviation is given by the following vector.
[0269] (where the square root is element-wise) and It is the identity matrix.
[0270] An additional optional but preferred step is to automatically select hyperparameters, which are kernel functions and Those. This is achieved by minimizing the negative logarithmic marginal likelihood using a standard optimization algorithm:
[0271] Then, the hyperparameters found from this minimization can be inserted into the above calculations.
[0272] The variation of this Gaussian process regression framework is called sparse Gaussian process regression, and although this change sacrifices some accuracy, it is computationally more efficient.
[0273] In obtaining Next, specify the 'sensor inputs'. These sensor inputs are smaller than [the specified size]. Additional sequences Values. We will name these as Then, a set of kernel matrices is defined using the elements of the sensor input:
[0274] The other distribution parameters are also defined as follows:
[0275] These parameters allow
[0276] Calculated.
[0277] (Note that the sensor input can be selected manually or optionally automatically using an optimization algorithm.) The optimization algorithm minimizes the following about Expression:
[0278] in , It is normally distributed, and It is the trace function.
[0279] The ultimate alternative to using GAM is a process similar to Gaussian process regression, but which models each time point as a "student t" distribution instead of a Gaussian distribution.
[0280] In obtaining The kernel function is now defined as before, but with the following minor additions. :
[0281] This gives the kernel matrix defined by elements.
[0282] This gives us the formula for calculating the average waveform and its standard deviation:
[0283] in These are hyperparameters. As mentioned earlier, hyperparameters (including any of the kernel functions) can be optimized either manually or by minimizing the negative log-marginal likelihood:
[0284] in and It is a gamma function.
[0285] Any or all steps of this method can be implemented in a remote or cloud computing device, or locally at the edge, i.e., on a device capable of retrieving carbon dioxide waveform data. In an example, training is performed centrally before the implantation or testing phase using a trained model stored on a device (e.g., with model parameters stored in memory on the SoC) or locally on a local computer. The trained model and its associated parameters can be centrally stored, i.e., stored in the cloud. The methods and processes described herein can be implemented as code (e.g., software code) and / or data. Models, methods, and algorithms can be implemented in hardware or software well-known in the field of machine learning. For example, hardware acceleration using a specially programmed graphics processing unit (GPU) or a specially designed field-programmable gate array (FPGA) can provide efficiency. For completeness, such code and data can be stored on one or more computer-readable media, which can include any means or medium capable of storing code and / or data used by a computer system. When a computer system reads and executes the code and / or data stored on the computer-readable medium, the computer system performs methods and processes implemented as data structures and code stored within the computer-readable storage medium. In some implementations, one or more steps of the methods and processes described herein may be performed by a processor (e.g., a processor of a computer system or a data storage system).
[0286] Typically, any function described herein or illustrated in the figures can be implemented using software, firmware (e.g., fixed logic circuitry), programmable or non-programmable hardware, or a combination of these implementations. The terms "component" or "function" as used herein generally refer to software, firmware, hardware, or a combination thereof. For example, in the case of a software implementation, the terms "component" or "function" may refer to program code that performs a specified task when executed on one or more processing devices. The division of components and functions into different units shown can reflect any actual or conceptual physical grouping and such allocation of software and / or hardware and tasks.
[0287] The following describes an example of comparing the smoking index generated according to an embodiment of the present invention with data collected using conventional methods.
[0288] The global tobacco epidemic is considered one of the greatest threats to public health, and tobacco use is widely regarded as a leading cause of respiratory diseases. The dose-response relationship between cumulative smoking (in this case, tobacco use) and the severity of airway obstruction (in this case, a COPD patient) is difficult to characterize using non-specific methods such as spirometry.
[0289] This comparison used rapid-response carbon dioxide mapping data generated using the Cambridge Respiratory Innovations (CRI) N-Tidal device to assess the relationship between smoking history and small / medium-sized airway obstruction characteristics in patients with chronic obstructive pulmonary disease (COPD).
[0290] Three hundred and five participants with COPD GOLD (Global Initiative for Chronic Obstructive Lung Disease) stage 3 or 4 were recruited from three studies in the UK. Tobacco use data were collected at baseline; N-Tidal CO2 data were collected twice daily for up to six weeks. The relationship between CO2 characteristics from the ascending and plateau phases of the exhalation was associated with the participants' smoking history.
[0291] Higher pack-years of smoking are associated with greater curvature in the α-angle region, which may be related to structural airway remodeling in smaller airways. The α-angle feature shows a significant change in CO2 waveform geometry over 40 pack-years. This can be seen in... Figure 11 A and Figure 11 As seen in B, the stated Figure 11 A and Figure 11 B shows the regression plot of CO2 α-angle characteristics relative to pack-years and the mean CO2 waveform on subjects with a smoking history of <15 pack-years versus subjects with a smoking history of >30 pack-years.
[0292] Therefore, the N-Tidal CO2 waveform characteristics of airway obstruction demonstrate a dose-response relationship with cumulative smoking history. N-Tidal can directly detect airway remodeling caused by smoking.
Claims
1. A method for generating an indicator of smoking history from one or more carbon dioxide waveforms generated by a user, the method comprising: One or more respiratory waveforms are obtained from the one or more carbon dioxide waveforms generated by the user; Extract one or more features from the one or more breathing waveforms; The smoking history index is generated based on one or more of the features.
2. The method of claim 1, wherein generating the metric of the smoking history includes using the extracted one or more features as input to a trained machine learning model, wherein the trained machine learning model is configured to output the metric of the smoking history.
3. The method of claim 2, wherein generating the indicator of smoking history further includes using one or more demographic information as input to the trained machine learning model.
4. The method of claim 3, wherein the one or more demographic information includes one or more of the following: age; sex; and ethnicity.
5. The method according to any one of claims 2 to 4, wherein generating the index of the smoking history further includes using the time of day on which each of the one or more carbon dioxide waveforms was generated by the user as input to the trained machine learning model.
6. The method according to any one of claims 2 to 5, wherein the index for generating the smoking history further comprises: Obtain disease labels associated with the one or more respiratory waveforms; and use the disease labels as input to the trained machine learning model.
7. The method according to any one of claims 2 to 5, wherein the index for generating the smoking history further comprises: Obtain disease labels associated with the one or more respiratory waveforms; and based on the obtained disease labels, select the trained machine learning model from two or more trained machine learning models.
8. The method according to any one of the preceding claims, wherein the indicators of smoking history include one or more of the following: subscription years associated with the user; and lung age associated with the user.
9. The method according to any one of the preceding claims, further comprising: Determine the variability of the extracted one or more features; and The variability of the extracted features is used as input to the trained machine learning model.
10. The method of claim 9, wherein the one or more respiratory waveforms are recorded from the same user over a period of two or more days.
11. The method according to any one of the preceding claims, wherein the trained machine learning model is further configured to output an indication of the importance of extracted features that contribute to the generated index of the smoking history.
12. A method for training a machine learning model to learn an indicator of smoking history, the method comprising: Multiple respiratory waveforms were obtained from multiple carbon dioxide waveforms; Extract one or more features from the multiple breathing waveforms; Obtain a label indicating the corresponding smoking history for each breathing waveform; and The machine learning model is trained using the extracted features and corresponding labels from the multiple breathing waveforms to learn the indicators of the smoking history.
13. The method according to any one of the preceding claims, wherein the respiratory waveform represents a single respiratory cycle.
14. The method of claim 13, wherein obtaining the one or more respiratory waveforms comprises dividing each of the one or more carbon dioxide waveforms into a plurality of carbon dioxide waveform segments, wherein each carbon dioxide waveform segment represents a single respiratory waveform corresponding to the single respiratory cycle.
15. The method according to any one of the preceding claims, wherein the machine learning model comprises at least one of the following: logistic regression, gradient boosting decision tree, support vector machine, AdaBoost, and random forest.
16. The method according to any one of the preceding claims, wherein extracting one or more features from the one or more respiratory waveforms comprises: The duration of the one or more respiratory waveforms is normalized to generate one or more corresponding normalized respiratory waveforms; An average respiratory waveform is generated from the one or more normalized respiratory waveforms; and Extract one or more features from the average breathing waveform.
17. The method of claim 16, wherein the average respiratory waveform is generated from the plurality of normalized respiratory waveforms using a generalized additive model (GAM).
18. The method of claim 16 or claim 17, further comprising normalizing the amplitudes of the plurality of respiratory waveforms to generate the plurality of normalized respiratory waveforms.
19. The method of claim 18, wherein normalizing the amplitude of the plurality of respiratory waveforms includes: Extract the end-tidal CO2 value from each respiratory waveform; The amplitude of each of the plurality of respiratory waveforms is adjusted so that each of the plurality of respiratory waveforms has the same end-expiratory CO2 value.
20. The method according to any one of claims 16 to 19, wherein extracting one or more features from the average respiratory waveform comprises: Determine one or more inflection points of the average respiratory waveform; and Use the one or more inflection points to extract the one or more features; The one or more inflection points mentioned above include one or more of the following: The α inflection point between the expiratory ascending limb and the expiratory plateau; The β inflection point between the expiratory plateau and the descending inspiratory limb; The γ inflection point between the descending limb of inspiration and the inspiratory baseline; and The delta inflection point between the expiratory baseline and the expiratory ascending limb.
21. The method according to any one of the preceding claims, wherein extracting the one or more features comprises: Identify one or more inflection points for each of the one or more respiratory waveforms; and Use the one or more inflection points to extract the one or more features; The one or more inflection points mentioned above include one or more of the following: The α inflection point between the expiratory ascending limb and the expiratory plateau; The β inflection point between the expiratory plateau and the descending inspiratory limb; The γ inflection point between the descending limb of inspiration and the inspiratory baseline; and The delta inflection point between the expiratory baseline and the expiratory ascending limb.
22. The method of claim 20 or claim 21, wherein determining one or more inflection points of the respiratory waveform comprises determining the derivative of the respiratory waveform.
23. The method of claim 22, wherein the derivative of the respiratory waveform is the first differential of the respiratory waveform.
24. The method of claim 23, wherein the method further comprises: The first derivative of the respiratory waveform is used to determine whether the respiratory waveform is an abnormal respiratory waveform. and If the respiratory waveform is abnormal, the respiratory waveform is excluded.
25. The method of claim 23 or claim 24, wherein determining the first derivative of the respiratory waveform comprises applying a time-based smoothing filter to the respiratory waveform.
26. The method according to any one of claims 23 to 25, wherein determining one or more inflection points of the respiratory waveform comprises: Identify hump artifacts in the respiratory waveform, and when hump artifacts are present, process the hump artifacts during the determination of the one or more inflection points.
27. The method of claim 26, wherein identifying the hump artifact comprises: Peak detection is performed to identify local minima of the respiratory waveform; Identify the significant minimum among the local minimums; Identify the maximum value of the respiratory waveform and / or determine the β inflection point; The respiratory waveform is divided into a first segment that does not include the maximum value of the respiratory waveform and a second segment that includes the maximum value of the respiratory waveform and / or the β inflection point; When at least one significant minimum is identified, search for hump artifacts in the first segment of the respiratory waveform; and / or When no significant minimum is identified, the first derivative of the breathing waveform is used to search for hump artifacts in the first segment of the breathing waveform.
28. The method according to any one of claims 20 to 27, wherein determining the β inflection point comprises: Peak detection is performed to identify local maxima of the respiratory waveform; Identify the significant maximum value among the local maxima; When only a single significant maximum value is identified, it is determined as the β inflection point; and When multiple significant maximum values are identified, the most significant maximum value is determined and defined as the β inflection point.
29. The method according to any one of claims 20 to 28, wherein determining the δ inflection point comprises: Determine the first point in time when the first derivative of the respiratory waveform is higher than the δ threshold; and The first point is defined as the δ inflection point.
30. The method according to any one of claims 20 to 29, wherein determining the α-turn point comprises: Identify the maximum value of the first derivative of the respiratory waveform; Identify the maximum value of the respiratory waveform and / or determine the β inflection point; and The α inflection point is defined as the first point in time at which the first derivative of the respiratory waveform is less than the α threshold, after the maximum value of the first derivative and between the maximum value of the first derivative and the maximum value of the respiratory waveform and / or the β inflection point.
31. The method of claim 30, wherein determining the α inflection point further comprises: When there is no point less than the α threshold between the maximum value of the first derivative of the respiratory waveform and the maximum value of the respiratory waveform, or when there is no point less than the α threshold between the maximum value of the first derivative of the respiratory waveform and the β inflection point, the α threshold is increased.
32. The method according to any one of claims 20 to 31, wherein determining the α-turn point comprises: Calculate the line between the δ inflection point and the maximum value of the respiratory waveform, or calculate the line between the δ inflection point and the β inflection point; and The α inflection point is defined based on the distance between the respiratory waveform and the calculated line.
33. The method of claim 20 or claim 21, wherein determining the inflection point comprises: A trained machine learning model is applied to a set of discrete samples of the breathing waveform, which represents a complete breath, wherein the machine learning model is configured to classify each sample into one of a plurality of output categories, each category representing a region of the breathing waveform, and wherein the machine learning model is trained by: Obtain a label associated with each discrete sample of multiple breathing waveforms, each breathing waveform being represented by a set of samples representing a complete breath, and each label indicating which of multiple output categories the sample corresponds to; and The machine learning model is trained on the labels and the samples to learn to classify samples from a set of samples representing a complete breath into categories among multiple output categories.
34. The method according to any one of claims 20 to 33, wherein using the one or more inflection points to extract features of the respiratory waveform includes determining the angle of each of the one or more inflection points.
35. The method of claim 34, wherein determining the angle of each of the one or more inflection points comprises, for each of the one or more inflection points: Fit the first linear function and the second linear function to adjacent phases on either side of the inflection point, and measure the angle between the first linear function and the second linear function; and / or The third linear function is fitted to the expiratory ascending branch or the inspiratory descending branch, and the angle between the third linear function and the horizontal line is measured.
36. The method according to any one of claims 20 to 35, wherein using the one or more inflection points to extract features of the respiratory waveform includes fitting a quadratic function to the expiratory plateau and determining the coefficients of the quadratic function.
37. The method according to any one of claims 20 to 36, wherein using the one or more inflection points to extract features of the respiratory waveform includes fitting a hyperbolic tangent function to the expiratory ascending limb and / or the inspiratory descending limb, and determining the coefficients of the hyperbolic tangent function.
38. The method according to any one of the preceding claims, the method further comprising obtaining a carbon dioxide waveform from a user, wherein the carbon dioxide waveform includes a respiratory waveform.
39. An apparatus configured to perform the method according to any one of the preceding claims.
40. A computer-readable medium comprising instructions that, when executed by a processor, cause the processor to perform the method according to any one of claims 1 to 38.
Citation Information
Patent Citations
capnometer
WO2017174983A1
Regulating device for a turbocharger
WO2019015800A1