Usage prediction machine learning models for content selection

EP4771555A2Pending Publication Date: 2026-07-08RESMED DIGITAL HEALTH INC

Patent Information

Authority / Receiving Office
EP · EP
Patent Type
Applications
Current Assignee / Owner
RESMED DIGITAL HEALTH INC
Filing Date
2024-08-28
Publication Date
2026-07-08

AI Technical Summary

Technical Problem

Existing systems struggle to effectively predict and improve respiratory therapy usage in patients with sleep-related and respiratory disorders, leading to suboptimal therapy outcomes.

Method used

A machine learning-based method that accesses usage and content delivery data to update a predictive model, allowing for personalized content selection aimed at increasing therapy usage.

Benefits of technology

This approach enables more accurate and reliable predictions of therapy usage, leading to improved compliance and overall therapy outcomes by tailoring content delivery to individual users.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure US2024044190_06032025_PF_FP_ABST
    Figure US2024044190_06032025_PF_FP_ABST
Patent Text Reader

Abstract

Techniques for improved machine learning are provided. Usage information for a plurality of patients is accessed, the usage information indicating participation, by each of the plurality of patients, in respiratory therapy. Content delivery information for the plurality of patients is accessed. One or more parameters of a machine learning model are updated based on the usage information and the content delivery information to generate an updated machine learning model. Using the updated machine learning model, a content selection for a patient of the plurality of patients is generated, where the first content selection is delivered to the first patient.
Need to check novelty before this filing date? Find Prior Art

Description

USAGE PREDICTION MACHINE LEARNING MODELS FOR CONTENT SELECTIONCROSS-REFERENCE TO RELATED APPLICATIONS

[0001] This Application claims the benefit of and priority to U.S. Provisional Patent Application No. 63 / 579,217, filed on August 28, 2023, the entire contents of which are incorporated herein by reference.TECHNICAL FIELD

[0002] The present disclosure relates generally to machine learning, and more particularly, to use of machine learning to predict respiratory therapy usage.

[0003] Many individuals suffer from sleep-related and / or respiratory-related disorders such as, for example, Periodic Limb Movement Disorder (PLMD), Restless Leg Syndrome (RLS), Sleep-Disordered Breathing (SDB) such as Obstructive Sleep Apnea (OSA) and Central Sleep Apnea (CSA), Cheyne-Stokes Respiration (CSR), respiratory insufficiency, Obesity Hyperventilation Syndrome (OHS), Chronic Obstructive Pulmonary Disease (COPD), Neuromuscular Disease (NMD), and chest wall disorders. These disorders are often treated using respiratory therapy systems.

[0004] Each respiratory therapy system generally has a respiratory therapy device connected to a user interface (e.g., a mask) via a conduit and optionally a connector. The user wears the user interface and is supplied a flow of pressurized air from the respiratory therapy device via the conduit. The user interface generally is a specific category and type of user interface for the user, such as direct or indirect connections for the category of user interface, and full face mask, a partial face mask, nasal mask, or nasal pillows for the type of user interface. In addition to the specific category and type, the user interface generally is a specific model made by a specific manufacturer, e.g., AirFit™ F20 manufactured by ResMed.

[0005] In some cases, patient usage of the therapy system can be collected or monitored in order to evaluate user compliance with the therapy. For example, the duration of usage (e.g., the length of time that a user wears the user interface on a given night) may be determined. Generally, a wide variety of factors may affect compliance and usage, and predicting or identifying compliance (or improving usage) can be difficult. Although many patients would benefit from increased therapy usage (e.g., using their mask for a longer period of time each night), it is generally difficult or impossible to effectively predict and improve usage.

[0006] Improved systems and techniques to predict usage thereby improve therapy and outcomes are needed.SUMMARY

[0007] According to some implementations of the present disclosure, a method includes: accessing first usage information for a plurality of patients, the first usage information indicating participation, by each of the plurality of patients, in respiratory therapy; accessing first content delivery information for the plurality of patients; updating one or more parameters of a machine learning model based on the first usage information and the first content delivery information to generate an updated machine learning model; and generating, using the updated machine learning model, a first content selection for a first patient of the plurality of patients, wherein the first content selection is delivered to the first patient.

[0008] According to some implementations of the present disclosure, a system includes a control system and a memory. The control system includes one or more processors. The memory has stored thereon machine readable instructions. The control system is coupled to the memory, and any one of the methods disclosed herein is implemented when the machine executable instructions in the memory are executed by at least one of the one or more processors of the control system.

[0009] Other aspects provide processing systems configured to perform the aforementioned method as well as those described herein; non-transitory, computer-readable media comprising instructions that, when executed by one or more processors of a processing system, cause the processing system to perform the aforementioned methods as well as those described herein; a computer program product embodied on a computer-readable storage medium comprising code for performing the aforementioned methods as well as those further described herein; and a processing system comprising means for performing the aforementioned methods as well as those further described herein.

[0010] The above summary is not intended to represent each implementation or every aspect of the present disclosure. Additional features and benefits of the present disclosure are apparent from the detailed description and figures set forth below.BRIEF DESCRIPTION OF THE DRAWINGS

[0011] FIG. 1 depicts an example environment for predicting therapy usage and selecting content, according to some implementations of the present disclosure.

[0012] FIG. 2 depicts an example workflow for predicting usage based on content consumption using machine learning, according to some implementations of the present disclosure.

[0013] FIG. 3 is a flow diagram depicting an example method for predicting usage andproviding content selections using machine learning, according to some embodiments of the present disclosure.

[0014] FIG. 4 is a flow diagram depicting an example method for training machine learning models to predict therapy usage, according to some embodiments of the present disclosure.

[0015] FIG. 5 is a flow diagram depicting an example method for facilitating content delivery using machine learning, according to some embodiments of the present disclosure.

[0016] FIG. 6 is a flow diagram depicting an example method for predicting therapy usage using machine learning, according to some embodiments of the present disclosure.

[0017] FIG. 7 depicts an example computing device configured to perform various aspects of the present disclosure, according to some embodiments disclosed herein.

[0018] While the present disclosure is susceptible to various modifications and alternative forms, specific implementations and embodiments thereof have been shown by way of example in the drawings and will herein be described in detail. It should be understood, however, that it is not intended to limit the present disclosure to the particular forms disclosed, but on the contrary, the present disclosure is to cover all modifications, equivalents, and alternatives falling within the spirit and scope of the present disclosure as defined by the appended claims.DETAILED DESCRIPTION

[0019] Embodiments of the present disclosure generally provide techniques for using machine learning to predict therapy device usage and drive content delivery.

[0020] Generally, respiratory therapy refers to the use of a flow generator and user interface to deliver air and / or oxygen to a user, such as during sleep. For example, respiratory therapy may include use of continuous positive airway pressure (CPAP) devices, bi-level positive airway pressure (BiPAP) devices, and the like. Respiratory therapy can significantly improve the lives of users who engage in it. However, many users do not use such respiratory therapy devices sufficiently (e.g., for sufficient durations and / or sufficiently often) to achieve optimal results. A wide variety of approaches may be used to improve therapy usage (e.g., to increase the length of time the user uses the flow generator each night). For example, content may be provided to attempt to guide the user, suggest modifications or other things to try if the user is uncomfortable, encourage the user to continue treatment, and the like. However, when multiple alternatives exist (e.g., multiple types or pieces of content), the impact that such alternatives will have on the patient’s usage is difficult or impossible to determine. This results in sub- optimal guidance in conventional approaches.

[0021] Aspects of the present disclosure provide techniques and architectures to predict therapy usage based on content delivery. That is, in some embodiments, the impact that delivering various pieces of content to a patient will have on future therapy usage by the patient can be predicted, such that specific content can be selected for specific users in such a way that the probability that therapy usage increase is maximized for each user. In some embodiments, each piece of alternative content may include metadata or tags indicating characteristics of the content. For example, the metadata may indicate whether the content relates to or uses education, persuasion, incentivizing, coercion, training, restriction, environmental restructuring, modelling, enablement, and the like. Similarly, content may be tagged based on its format (e.g., image, video, audio, text, and the like), length or duration (e.g., amount of text and / or length of a video or audio), contents (e.g., characteristics of the user(s) depicted in the content, such as their demographics, the number of such users, roles of such users, and the like), and the like. In some embodiments, such features are used as input (along with userspecific features, as discussed in more detail below) to predict how a user’s therapy usage will change if such content is provided to them.

[0022] Advantageously, by using machine learning to predict the usage impact of various content, embodiments of the present disclosure enable improved content delivery that is more tailored to the individual user at the individual time. These usage predictions are more accurate and reliable (as well as being objective), as compared to more conventional systems that rely on random delivery, simple heuristics, or manually-selected content (which is subjective, as well as prone to error and bias). In this way, by predicting which content is most likely to improve usage, embodiments of the present disclosure enable overall therapy outcomes to be improved substantially (e.g., users are more likely to remain on therapy and / or increase their usage, which improves their outcomes).Example Environment for Predicting Therapy Usage and Selecting Content

[0023] FIG. 1 depicts an example workflow 100 for predicting therapy usage and selecting content, according to some implementations of the present disclosure.

[0024] In the illustrated example, a user 105 (also referred to in some embodiments as a patient) engaged in a respiratory therapy can use / interact with a flow generator 110 and a user device 130. The flow generator 110 generally corresponds to a respiratory therapy device or system, such as for CPAP therapy. That is, the flow generator 110 may correspond to a device that generates and provides air flow to the user 105 as part of a respiratory therapy, such as via a user interface or respiratory mask connected to the flow generator 110 via a conduit.

[0025] In some embodiments, the user device 130 can generally correspond to a computing device associated with and / or controlled / used by the user 105 in connection with the respiratory therapy. For example, the user device 130 may correspond to a smartphone, tablet, laptop computer, smart device (e.g., an loT device), and the like.

[0026] In the illustrated workflow 100, the flow generator 110 can collect, generate, or otherwise provide data relevant to the respiratory therapy, which can be stored or maintained in a database of usage data 115. For example, the flow generator 110 may collect or generate data for one or more usage / sleep sessions for a variety of variables or features, such as the usage duration (e.g., the length of time the user 105 used the flow generator 110 during the session and / or the total or average duration across multiple sessions). In some aspects, the flow generator 110 can additionally collect other information relevant to the therapy, such as the number of times the user put on (donned) and removed (doffed) the user interface during a period of time and / or during a sleep session, the amount of air or mask leak of the flow generator, air pressure and / or flow volume settings, and the like.

[0027] In some embodiments, the flow generator 110 can provide this usage data 115 continuously (e.g., throughout use), periodically (e.g., transmitting a daily report), upon the end of a usage session (e.g., when the user 105 turns off the flow generator 110), and the like. Additionally, though the illustrated example depicts the flow generator 110 directly providing the usage data 115, in some embodiments some or all of the data may be transmitted using one or more intermediary devices. For example, in at least one embodiment, the flow generator 110 can transmit the data to the user device 130 (e.g., using a short-range wireless communication technology such as WiFi or Bluetooth), and the user device 130 can forward or provide the data to the store of usage data 115.

[0028] In some embodiments, the usage data 115 generally corresponds to a data store that can reside in any suitable location, such as in the cloud. The usage data 115 may include data for any number of users 105 of any number of flow generators 110. Although a single store of usage data 115 is depicted for conceptual clarity, in embodiments, there may be any number of discrete data stores that store the usage data 115. In some embodiments, the usage data 115 may be stored as part of a clinician-accessible system to review and interact with the data to assist in the respiratory therapy. Generally, the granularity of the usage data 115 may differ depending on the particular implementation. For example, the usage data 115 may store, for each user 105, the usage duration (e.g., the length of time that the user 105 used their flow generator 110) over one or more days (e.g., the average duration, the specific duration per day, and the like).

[0029] As illustrated, a usage prediction system 120 can generally access the usage data 115 to predict how various factors (e.g., different pieces of content that can be delivered to the user) will impact the user’s usage of the flow generator 110, as discussed in more detail below. As used herein, accessing data may generally refer to receiving, retrieving, requesting, acquiring, obtaining, or otherwise gaining access to the data. The usage prediction system 120 may generally be implemented using hardware, software, or a combination of hardware and software, and may execute in any suitable location, including the cloud. In some embodiments, the usage prediction system 120 trains and / or uses machine learning to predict the usage.

[0030] In some aspects, as discussed in more detail below, the usage prediction system 120 predicts, for each specific piece of content (e.g., from a library of content), predicted usage for a future period (e.g., the upcoming night) if the content is delivered to the user 105 (e.g., during a current day). In some aspects, prior to generating such predictions, the usage prediction system 120 may first update, re-train, or refine its machine learning model(s). That is, the usage prediction system 120 may update its model each day when new usage data 115 is available. For example, when new usage data 115 is available (e.g., in the morning), the usage prediction system 120 may use this updated usage data 115 (along with indications of the content that was delivered to each user 105 during the previous day) to refine the model(s), then use these refined model(s) to generate updated predictions for the subsequent usage session (e.g., the next night).

[0031] Generally, the particular machine learning architecture used may vary depending on the particular implementation. In some embodiments, the usage prediction system 120 uses a factorization machine (FM) architecture. FM models are a class of supervised machine learning model that are able to capture interactions between features within high dimensional sparse datasets efficiently. While some other architectures struggle to adequately learn on sparse data, FM models may be able to handle this sparsity effectively.

[0032] In the illustrated workflow 100, the predictions of the usage prediction system 120 are used by a content system 125 to select and / or deliver specific content to the users 105. The content system 125 may generally be implemented using hardware, software, or a combination of hardware and software, and may execute in any suitable location, including the cloud. Although depicted as discrete components for conceptual clarity, in some embodiments, the content system 125 and usage prediction system 120 may be implemented as components of a single system.

[0033] In some embodiments, the content system 125 uses the usage predictions to select and / or deliver specific content to each user 105. For example, in the illustrated workflow 100,the content system 125 can transmit or otherwise cause the content to be delivered to the user device 130 associated with the user 105. Generally, the particular method of delivery for the content may vary depending on the particular content. For example, in some embodiments, the content is delivered via text message, email, and the like. In some aspects, the content is delivered as a card, notification, or snippet via an application executing on the user device 130. For example, the user 105 may use the application to monitor and / or control their respiratory therapy (e.g., to review sleep statistics from each night, to update settings of the flow generator 110, and the like). In some embodiments, the content may be included as a card or insert within such an application (e.g., on the main screen when the application is opened).

[0034] This can enable the content system 125 and usage prediction system 120 to accurately and reliably predict usage changes and tailor content delivery specifically for each individual user, resulting in improved usage and therapy outcomes.Example Workflow for Predicting Usage based on Content Consumption using Machine Learning

[0035] FIG. 2 depicts an example workflow 200 for predicting usage based on content consumption using machine learning, according to some implementations of the present disclosure. In some aspects, the workflow 200 is performed entirely or partially by a machine learning system, such as the usage prediction system 120 of FIG. 1. That is, the depicted components (e.g., the feature component 225, the conversion component 235, the training component 245, and / or the inference component 255 may be hardware and / or software components of the usage prediction system).

[0036] In the illustrated workflow 200, a set of input data 205 is accessed by a feature component 225 to generate feature vector(s) 230. In the illustrated example, the input data 205 includes usage data 210 (which may correspond to usage data 115 of FIG. 1), demographic data 215, and content data 220. In some embodiments, the input data 205 is accessed or provided to the feature component 225 as soon as it becomes available, or in accordance with a defined schedule. For example, each morning (after the user stops using the respiratory therapy device), the device may report the usage data 210 from the session (e.g., the duration of use overnight) and / or other data.

[0037] Although the illustrated example depicts a single element of input data 205, in embodiments, the feature component 225 may similarly receive and evaluate input data 205 from a variety of users. In some embodiments, all available data from any users can be processed using the workflow 200 (e.g., evaluating updated input data 205 for all users eachday). In some aspects, the usage prediction system may operate on subsets of data. For example, for each region of a set of regions, the usage prediction system may separately evaluate the data from users in each given region. As another example, for each therapy type (e.g., each type of flow generator or therapy), the usage prediction system may separately evaluate the corresponding data.

[0038] As discussed above, usage data 210 may generally indicate the duration of time during which the user engaged in respiratory therapy for one or more sessions. For example, the usage data 210 may indicate the number of hours, minutes, and / or seconds during which the flow generator was active (e.g., when it was producing air flow), during which the user wore their therapy mask, and the like. In some embodiments, the usage data 210 includes this usage information for the prior session. That is, when the session ends (e.g., when the user awakens or gets out of bed in the morning), the flow generator may report the usage data 210. In some embodiments, a session may be defined as a (relatively) continuous period during which the flow generator is active. For example, if the user turns off the flow generator for a relatively brief period of time (e.g., below a threshold duration), such as to go to the restroom or get a drink of water, the system may determine that the current session is nevertheless ongoing (so long as the user restarts therapy within the threshold time). In some embodiments, the user may manually specify the end of the session (e.g., pressing a button to indicate that they are ending the session).

[0039] In some embodiments, the demographic data 215 may include a variety of characteristics or other information for the specific user which may be relevant to usage prediction. In some embodiments, the demographic data 215 may be referred to as additional or auxiliary features or information, and can generally include a variety of features depending on the particular implementation. In some embodiments, the specific features included in the demographic data 215 may be selected or defined by a user (e.g., a data scientist). For example, in some embodiments, the demographic data 215 may indicate information such as the age of the user, the gender of the user, the weight and / or height of the user, and the like. In some aspects, the demographics data 215 includes a patient identifier (e.g., a unique identifier of the individual patient corresponding to the usage data 210). The conversion component 235 may use this patient identifier when generating the sparse matrix, as discussed below. Although depicted as being included with the input data 205, in some embodiments, the demographic data 215 may be accessed from other sources. For example, the feature component 225 may receive the usage data 210 daily (direct from flow generators, or via an intermediary repository or device), and access the demographic data 215 periodically from a separate repository.

[0040] In some embodiments, the content data 220 includes information relating to the content (if any) that was delivered to the user prior to the session that corresponds to the usage data 210. For example, if the usage prediction system is used to suggest content once per day and the usage data 210 corresponds to the overnight session after the content was delivered, the content data 220 may include information about the content that was delivered during the prior day. In some embodiments, the content data 220 may include information such as identifying the specific content that was provided (e.g., the specific card or snippet of information), the time the content was delivered, how the user engaged with the content, and the like. In some aspects, the content data 220 further includes the patient identifier (identifying the patient to whom the content was delivered). By using the content data 220 (and, in some embodiments, the demographic data 215) as input and the usage data 210 as a target or label, the usage prediction system may learn to predict future usage based on which content is delivered to any given user. In some embodiments, the usage data 210, demographic data 215, and content data 220 each include a patient identifier indicating the patient to which the data corresponds, allowing the feature component 225 (or another component or system) to join the relevant usage data 210, demographic data 215, and content data 220 for each given patient.

[0041] In the illustrated example, the feature component 225 performs feature extraction to generate feature vector(s) 230 based on the input data 205. Generally, this feature extraction may include a variety of operations depending on the particular implementation. For example, depending on the content and format of the usage data 210, demographic data 215, and content data 220, the feature component 225 may perform operations such as identifying and extracting relevant detail from each (e.g., extracting the unique identifier of the content that was provided, as reflected in the content data 220), converting the data to another format for processing, and the like.

[0042] In some embodiments, the feature component 225 generates a respective feature vector 230 for each respective user for which input data 205 was received. Each feature vector 230 may generally represent the relevant information from the usage data 210, demographic data 215, and content data 220 for the corresponding user. In some embodiments, some or all of the information is encoded using one-hot encodings. For example, the feature vector 230 may include a first portion used to identify the user (e.g., a one-hot encoding to identify the specific user, as compared to other users), a second portion used to identify the content that was delivered (e.g., a one-hot encoding to indicate the specific content), a third portion used to indicate some or all of the demographic data 215 and / or some or all of the content data 220 (e.g., auxiliary features including content information and demographics information), and afourth portion used as the target or label (e.g., used to indicate the usage duration).

[0043] In some embodiments, the feature component 225 may convert or aggregate the input data 205 to a per-day granularity. That is, if more granular data (such as session usage data 210) for multiple use sessions is available for a given day, the feature component 225 may aggregate this data on a per-day basis. For example, session information corresponding to use between midnight of one day until midnight of next day may be summed to generate feature vectors 230 for the day. Similarly, in some embodiments, the content data 220 may be aggregated on a per-day basis (e.g., such that the feature vectors 230 indicate the patient’s consumption of content on a particular day).

[0044] In some embodiments, by stacking the feature vectors 230 from multiple users, the feature component 225 can create a matrix of training data. In some embodiments, if one-hot encodings are used (e.g., to identify the user and the content), this matrix will be relatively sparse (e.g., a large portion of the elements will be zero). Generally, storing and processing such (sparse) matrices can require substantial computing resources, particularly as the number of users and / or the number of pieces of content increase.

[0045] In some embodiments, to reduce the memory and processing footprint of the feature vectors, therefore, the feature vectors 230 are accessed by a conversion component 235 which converts the feature vectors 230 to a sparse matrix format 240. In some embodiments, the sparse matrix format 240 generally corresponds to a densified version of the feature vectors 230 (e.g., with one or more elements having a value of zero removed). For example, in some aspects, the conversion component 235 determines the location(s) (e.g., indices) of non-zero values in the feature vectors 230, and generates the sparse matrix format 240 based on these indices. In some embodiments, the sparse matrix format 240 includes the non-zero values, as well as the determined indices, but with some (or all) of the zero-value elements removed. In this way, using the indices, the system can reconstruct the original data. However, by using this sparse data format, the conversion component 235 can substantially reduce the size of the data, which reduces the memory footprint as well as reducing the computational complexity of using it. For example, in some embodiments, the complexity is reduced from quadratic (with respect to the number of users reflected in the data) to linear. This substantially improves the functionality of the system.

[0046] In the illustrated example, the sparse matrix format 240 is provided to a training component 245 that evaluates the data to generate an updated model 250. In some embodiments, as discussed above, the updated model 250 is a factorization machine. Generally, generating the updated model 250 may be referred to as training, refining, updating,or otherwise learning parameters for the model based on the input data. For example, the features extracted from the demographic data 215 and content data 220 may be used as the input features, while the features extracted from the usage data 210 may be used as the label or target output. In some embodiments, generating the updated model 250 comprises refining or updating the parameters of a previous model (e.g., of the machine learning model that was trained and deployed the previous day). In some embodiments, generating the updated model 250 comprises training a new model from scratch (e.g., from a set of parameters having random values).

[0047] In the illustrated example, the updated model 250 is accessed by an inference component 255. The inference component 255 uses the updated model 250 to process all or a portion of the input data 205 for each user in order to generate a predicted usage 265 for each piece of content 260. That is, for each alternative piece of content 260 that may be provided to users (e.g., from a library of content), the inference component 255 can generate a corresponding predicted usage 265 for each user (e.g., based on the demographic data 215 and / or a unique user identifier). Stated differently, for each user, the inference component 255 generates a set of predicted usages 265 (one for each piece of alternative content).

[0048] In some embodiments, the data used for inference differs somewhat from the data used to train the model. For example, during inferencing, the inference component 255 may use usage data from a single session (e.g., the therapy usage for the previous night), while the training component 245 may use usage data over a relatively longer window (e.g., usage information for the past week of therapy).

[0049] In some embodiments, the use of different data at inferencing (as compared to the data used to train the model(s)) may result in potential data drift issues, where the model predictions are not an accurate reflection of reality (e.g., as usage and content consumption shifts over time). In some embodiments, however, repeated retraining or refinement of the models (e.g., daily, weekly, monthly or based on other periods or events) based on updated data can be used to mitigate or eliminate such drift concerns, enabling improved prediction accuracy over time.

[0050] In some embodiments, as discussed above, the predicted usage 265 indicates the predicted duration of time that the user will spend, in a future session (e.g., during the next night), using their respiratory therapy system. In this way, the inference component 255 can predict or identify which specific piece of content 260 is predicted to result in the highest (or otherwise most optimal or preferred) predicted usage 265 for each user. In some embodiments, this specific piece of content 260 is then delivered to the specific user.

[0051] In some embodiments, the inference component 255 can use multiple versions of the machine learning model to generate the predicted usages 265. For example, in some embodiments, the inference component 255 uses the current updated model 250 as well as one or more prior models (e.g., the last two or three prior models) to generate the predicted usages 265 for each content 260 and user. In some embodiments, the output predictions may be generated by aggregating these predictions (e.g., summing or averaging the predicted usages 265 generated by each model version).

[0052] In some embodiments, the content actually delivered to a user may or may not be the highest-scored content. For example, in some embodiments, various rules or heuristics may be used to restrict or guide the selection (e.g., to ensure veteran users who have been using therapy for years do not receive introductory or “new user” content). In some such embodiments, the content selected for a given user may be the highest-scored content (the content 260 with the highest predicted usage 265) that satisfies such rules.

[0053] In some embodiments, an exploration-exploitation approach may be used to reduce or prevent bias in the recommender system. For example, the system may deliberately recommend or provide sub-optimal content (e.g., randomly-selected content, or content with a lower predicted usage 265) to some (relatively small) portion of users. When in an exploitation mode or configuration, the system may recommend the content with the highest predicted usage. However, when in an exploration mode or configuration, the recommendations may be shuffled or selected with at least an element of randomness for at least a portion of the users.

[0054] In some embodiments, the workflow 200 is repeated periodically (e.g., daily) to generate an updated model 250 and updated predicted usages 265 for each piece of content 260 with respect to each user. In this way, the usage prediction system is able to provide continuous refinement and updates, as well as accurate and objective recommendations, which can substantially improve therapy engagement and usage of therapy devices, which thereby results in improved patient outcomes.Example Method for Predicting Usage and Providing Content Selections using Machine Learning

[0055] FIG. 3 is a flow diagram depicting an example method 300 for predicting usage and providing content selections using machine learning, according to some embodiments of the present disclosure. In some embodiments, the method 300 is performed by a usage prediction system, such as the usage prediction system 120 of FIG. 1.

[0056] At block 305, the usage prediction system determines whether one or more triggercriteria are satisfied. The trigger criteria generally indicate when the usage prediction system should generate updated model(s) and / or updated predictions. Generally, the particular trigger criteria may vary depending on the particular implementation. For example, the trigger criteria may indicate that the usage prediction system should generate an updated model daily, at a specific time, when updated usage data is available, and the like.

[0057] If, at block 305, the usage prediction system determines that the criteria are not satisfied, the method 300 iterates at block 305. If the usage prediction system determines that the criteria are met, the method 300 continues to block 310.

[0058] At block 310, the usage prediction system accesses updated usage information for one or more users. In some embodiments, the usage information corresponds to the usage data 115 of FIG. 1 and / or the usage data 210 of FIG. 2. In some embodiments, as discussed above, the usage information indicates the device usage duration of one or more users over one or more therapy sessions. For example, the usage information may indicate how many minutes each user wore their respiratory therapy mask during the previous night’s sleep.

[0059] At block 315, the usage prediction system generates an updated machine learning model based on the updated usage information. In some embodiments, the updated machine learning model corresponds to the updated model 250 of FIG. 2. In some embodiments, as discussed above, the usage prediction system generates the updated model by updating the previous or current version of the model. In some embodiments, the usage prediction system generates the updated model by training a new model from scratch. In some embodiments, the machine learning model is a FM model, as discussed above. In an embodiment, as discussed above, updating the machine learning model may generally include using an identifier of the user (as well as one or more auxiliary features, such as demographic information, in some embodiments) and the updated usage data as target output. The parameter(s) of the model can then be updated based on the training data (e.g., based on the difference or loss between the updated usage data and the predicted usage data) to generate more accurate predictions (e.g., more accurate predicted usage).

[0060] At block 320, the usage prediction system generates one or more content selections using the updated machine learning model. For example, as discussed above, the usage prediction system may apply the unique identifier (e.g., one-hot encoded) of each user, demographic information of each user, and / or content identifiers as input to the model to generate output predicted usage(s) (e.g., a predicted usage for each piece of content in the library). In some aspects, the patient identifier and content identifiers are used as input features, and demographic information and / or metadata relating to the content can be optionallyincluded in the input (e.g., as auxiliary features). In some embodiments, as discussed above, the usage prediction system generates multiple predicted usages for each content with respect to each user (e.g., using multiple versions of the model).

[0061] In some embodiments, as discussed above, the content selections are generated by identifying, for each user, the content having the highest predicted usage. In some embodiments, as discussed above, the usage prediction system may additionally consider one or more rules or heuristics. For example, the usage prediction system may narrow or filter the set of permissible pieces of content for a given user using the rules, and then select the piece of content having the highest predicted usage score. In some embodiments, as discussed above, the usage prediction system may additionally use exploration-exploitation techniques, such as by suggesting lower-scored content and / or randomly selected content to some or all of the users during one or more iterations.

[0062] At block 325, the usage prediction system provides the content selections. This may generally include providing the selection to the user (e.g., transmitting the content to the user) and / or providing the selection to another system or component (e.g., to a content delivery system that stores and / or delivers the content). As discussed above, the content may generally be provided to the user using a variety of techniques and operations, such as by inserting or adding a card or popup in an application that the user uses in conjunction with their respiratory therapy.

[0063] The method 300 then returns to block 305. In this way, the usage prediction system can iteratively generate updated models and predictions / content selections based on the trigger criteria. For example, each day, the usage prediction system may generate an updated model based on updated usage information from the prior night and content delivery information from the prior day, generate updated content selections using the model, and facilitate provisioning of the selected content to the users in advance of the upcoming usage session (e.g., before night arrives). On the immediately subsequent day, the content selections provided on the current day may be used in conjunction with actual usage information collected that night to update the model again. By monitoring how users respond to the delivered content (e.g., how long the user the therapy device during the next session), the usage prediction system can continually refine its models and predictions.Example Method for Training Machine Learning Models to Predict Therapy Usage

[0064] FIG. 4 is a flow diagram depicting an example method 400 for training machine learning models to predict therapy usage, according to some embodiments of the presentdisclosure. In some embodiments, the method 400 is performed by a usage prediction system, such as the usage prediction system 120 of FIG. 2. In some embodiments, the method 400 provides additional detail for block 315 of FIG. 3.

[0065] At block 405, the usage prediction system generates usage features based on usage data for a patient (also referred to as a user, as discussed above). For example, as discussed above, the usage prediction system may determine, extract, preprocess, or otherwise generate features based on updated usage data for the patient (e.g., usage data 115 of FIG. 1 and / or usage data 210 of FIG. 2). As discussed above, these usage feature(s) will be used as the label or target output for the model.

[0066] At block 410, the usage prediction system optionally generates additional feature(s) for the patient. For example, as discussed above, the usage prediction system may generate features corresponding to the user’s demographic information, such as their gender, age, height, weight, and the like.

[0067] At block 415, the usage prediction system determines the content delivery that corresponds to the patient. For example, the usage prediction system may determine which piece(s) of content were delivered to the patient prior to collection of the usage data. As an example, if the usage information corresponds to a first night when the patient engaged in the therapy, the content information may indicate the content that was delivered during the prior day (immediately preceding the first night). In some aspects, as discussed above, the content delivery information is encoded using a one-hot encoding.

[0068] At block 417, the usage prediction system optionally generates additional feature(s) for the content. For example, as discussed above, the usage prediction system may generate features corresponding to the content metadata information, such as the topic to which the content relates (e.g., education, persuasion, incentivizing, and the like), the content format (e.g., image, video, audio, text, and the like), the length or duration of the content, the actual contents of the content (e.g., characteristics of the user(s) depicted in the content, such as their demographics, the number of such users, roles of such users, and the like), and the like.

[0069] In some embodiments, based on the usage features, additional features, and / or content delivery information, the usage prediction system generates a feature vector (e.g., feature vector 230 of FIG. 2) for the patient, as discussed above.

[0070] At block 420, the usage prediction system determines whether one or more additional patients remain. That is, the usage prediction system may determine whether updated usage information is available for one or more patients that have not yet been processed during the current day or iteration. If so, the method 400 returns to block 405. If not, themethod 400 continues to block 425. Although the method 400 depicts an iterative process (generating a feature vector for each patient in turn) for conceptual clarity, in some aspects, the usage prediction system may process data for some or all of the patients in parallel.

[0071] At block 425, the usage prediction system optionally converts the feature vector(s) into a sparse matrix data format (e.g., sparse matrix format 240 of FIG. 2), as discussed above. For example, the usage prediction system may generate a densified representation of the feature vectors that includes the non-zero values in the sparse matrix, as well as indices of these nonzero values in the matrix. The remaining indices may correspond to values of zero, and such indices and / or values therefore need not be stored or evaluated. In some embodiments, prior to converting the feature vector(s) into one or more sparse matrices, the system can run one- hot encoding on the collected patient identifier(s). That is, after all updated usage information has been collected and evaluated, the usage prediction system may determine the total number of unique patient identifiers in the data, and encode the data using one-hot encodings based on these patient identifiers (e.g., where the length of the one-hot encoding corresponds to the total number of unique patient identifiers).

[0072] In some aspects, the usage prediction system may similarly use one-hot encodings for categorical features in the input vectors or matrices. In some aspects, numerical features may be preprocessed to scale them appropriately (e.g., to a value between zero and one). In some aspects, to create the sparse matrix data format, all of the encoded features (including numerical and one-hot encoded) may be concatenated to form the sparse matrix, and this sparse matrix may be used as input to the model(s).

[0073] At block 430, the usage prediction system trains a machine learning model (e.g., an FM model) based on the updated data (e.g., based on the feature vectors in their native format or in the sparse data format).

[0074] In this way, the usage prediction system can efficiently generate updated model(s) with reduced computational expense (e.g., using the sparse data format). Further, by generating such models frequently (e.g., daily), the usage prediction system can continuously improve its operations, resulting in improved accuracy and reliability in the generated predictions.Example Method for Facilitating Content Delivery using Machine Learning

[0075] FIG. 5 is a flow diagram depicting an example method 500 for facilitating content delivery using machine learning, according to some embodiments of the present disclosure. In some embodiments, the method 500 is performed by a usage prediction system, such as the usage prediction system 120 of FIG. 2. In some embodiments, the method 500 providesadditional detail for block 320 of FIG. 3.

[0076] At block 505, the usage prediction system selects a patient (also referred to as a user, such as the user 105 of FIG. 1) to whom content should be delivered. For example, the usage prediction system may select a patient that is currently engaged in respiratory therapy, a patient that recently stopped therapy without medical justification, and the like. Generally, the particular techniques used to select the patient can vary (including random or pseudo-random selection), as the usage prediction system may evaluate all patients to generate content delivery for each.

[0077] At block 510, the usage prediction system selects a piece of content (e.g., content 260 of FIG. 2) that can be delivered to patients as part of the respiratory therapy. For example, the usage prediction system may select the content from a library of alternative pieces of content relating to coaching, education, encouragement, and the like. In some embodiments, as discussed above, the usage prediction system may filter the content library based on one or more rules or heuristics (e.g., to ensure a long-term patient does not receive content intended for new patients), and selects from this filtered set. Generally, the particular techniques used to select the content can vary (including random or pseudo-random selection), as the usage prediction system may evaluate all content alternatives.

[0078] At block 515, the usage prediction system generates a predicted usage for the selected content with respect to the selected patient. For example, as discussed above, the usage prediction system may use the patient information (e.g., their demographics or other identifier information) and an indication of the selected content as input to a trained machine learning model (e.g., the updated model 250 of FIG. 2) to generate the predicted usage for the indicated content. As discussed above, the predicted usage generally indicates the predicted length of time that the given patient will engage in respiratory therapy during a future usage session, provided that the selected content is delivered to the patient during the current time (e.g., before the future session begins).

[0079] At block 520, the usage prediction system determines whether there are one or more additional content alternatives remaining to be evaluated for the selected patient. If so, the method 500 returns to block 510. If not, the method 500 continues to block 525. Although the method 500 depicts an iterative process (selecting and evaluating each content alternative in turn) for conceptual clarity, in some aspects, the usage prediction system may generate predicted usage information for some or all of the content alternatives in parallel.

[0080] At block 525, the usage prediction system selects a piece of content to deliver to the selected patient based on the predicted usage data. For example, as discussed above, the usageprediction system may select the content having the highest predicted usage, the content with the highest predicted usage that also satisfies one or more content rules, and the like.

[0081] At block 530, the usage prediction system determines whether there are one or more additional patients remaining to be evaluated to select content. If so, the method 500 returns to block 505. If not, the method 500 terminates at block 535. Although the method 500 depicts an iterative process (selecting and evaluating each patient in turn) for conceptual clarity, in some aspects, the usage prediction system may generate content selections for some or all of the patients in parallel.Example Method for Predicting Therapy Usage using Machine Learning

[0082] FIG. 6 is a flow diagram depicting an example method 600 for predicting therapy usage using machine learning, according to some embodiments of the present disclosure. In some aspects, the method 600 is performed by a usage prediction system, such as the usage prediction system 120 of FIG. 1.

[0083] At block 605, first usage information (e.g., usage data 115 of FIG. 1 and / or usage data 210 of FIG. 2) for a plurality of patients (e.g., user 105 of FIG. 1) is accessed, the first usage information indicating participation, by each of the plurality of patients, in respiratory therapy (e.g., using flow generator 110 of FIG. 1).

[0084] At block 610, first content delivery information (e.g., content data 220 of FIG. 2) for the plurality of patients is accessed.

[0085] At block 615, one or more parameters of a machine learning model are updated based on the first usage information and the first content delivery information to generate an updated machine learning model (e.g., updated model 250 of FIG. 2).

[0086] At block 620, using the updated machine learning model, a first content selection (e.g., content 260 of FIG. 2) for a first patient is generated, wherein the first content selection is delivered to the first patient.Example Processing System for Usage Prediction Machine Learning

[0087] FIG. 7 depicts an example computing device 700 configured to perform various aspects of the present disclosure, according to some embodiments disclosed herein. Although depicted as a physical device, in embodiments, the computing device 700 may be implemented using virtual device(s), and / or across a number of devices (e.g., in a cloud environment). In one embodiment, the computing device 700 corresponds to any element or aspect of the usage prediction system 120 and / or the content system 125, each of FIG. 1.

[0088] As illustrated, the computing device 700 includes a CPU 705, memory 710, storage 715, a network interface 725, and one or more input / output (I / O) interfaces 720. In the illustrated embodiment, the CPU 705 retrieves and executes programming instructions stored in memory 710, as well as stores and retrieves application data residing in storage 715. The CPU 705 is generally representative of a single CPU and / or GPU, multiple CPUs and / or GPUs, a single CPU and / or GPU having multiple processing cores, and the like. The memory 710 is generally included to be representative of a random access memory. Storage 715 may be any combination of disk drives, flash-based storage devices, and the like, and may include fixed and / or removable storage devices, such as fixed disk drives, removable memory cards, caches, optical storage, network attached storage (NAS), or storage area networks (SAN).

[0089] In some embodiments, I / O devices 735 (such as keyboards, monitors, etc.) are connected via the I / O interface(s) 720. Further, via the network interface 725, the computing device 700 can be communicatively coupled with one or more other devices and components (e.g., via a network, which may include the Internet, local network(s), and the like). As illustrated, the CPU 705, memory 710, storage 715, network interface(s) 725, and I / O interface(s) 720 are communicatively coupled by one or more buses 730.

[0090] In the illustrated embodiment, the memory 710 includes a feature component 750, a conversion component 755, a training component 760, and an inference component 765, which may perform one or more embodiments discussed above. Although depicted as discrete components for conceptual clarity, in embodiments, the operations of the depicted components (and others not illustrated) may be combined or distributed across any number of components. Further, although depicted as software residing in memory 710, in embodiments, the operations of the depicted components (and others not illustrated) may be implemented using hardware, software, or a combination of hardware and software.

[0091] In some embodiments, the feature component 750 can be used to extract relevant features, perform preprocessing, and / or generate feature vectors (e.g., feature vector 230 of FIG. 2), as discussed above. For example, the feature component 750 may correspond to the feature component 225 of FIG. 2. In some embodiments, the feature component 750 can determine and extract feature data, convert or reformat the data as needed (e.g., to generate one-hot encodings), and the like. Generally, the particular operations of the feature component 750 may vary depending on the particular implementation.

[0092] In some embodiments, the conversion component 755 can be used to perform data conversion, as discussed above. For example, the conversion component 755 may correspond to the conversion component 235 of FIG. 2. In some embodiments, the conversion component755 can convert sparse data (e.g., a matrix having a relatively large number of zeros) to a sparse data format that reduces this sparsity (e.g., by remembering indices that correspond to non-zero values, and refraining from storing or processing other indices that correspond to values of zero).

[0093] In some embodiments, the training component 760 can be used to generate or update machine learning models (e.g., the updated model 250 of FIG. 2), as discussed above. For example, the training component 760 may correspond to the training component 245 FIG. 2 and may use training data (e.g., input data 205) to update or generate trained machine learning models, such that the models learn to predict future device usage based on a variety of data.

[0094] In some embodiments, the inference component 765 can be used to predict future therapy usage using trained models, as discussed above. For example, the inference component 765 may correspond to the inference component 255 FIG. 2 and may use the trained machine learning models (e.g., the updated model 250 of FIG. 2) to generate predicted usage 265 for each piece of content 260 with respect to each individual user or patient.

[0095] In the illustrated example, the storage 715 includes usage data 770 (which may correspond to the usage data 115 of FIG. 1 and / or the usage data 210 of FIG. 2). The storage 715 also includes demographic data 775 (which may correspond to demographic data 215 of FIG. 2) and content data 780 (which may correspond to content data 220 of FIG. 2).

[0096] The storage 715 further includes or more models 785 (e.g., machine learning models), such as the updated model 250 of FIG. 2. Although depicted as residing in storage 715, the depicted data may be stored in any suitable location, including memory 710.

[0097] Generally, the depicted components (and others not depicted) in memory 710 may evaluate and / or use the depicted data (and others not depicted) in storage 715 to provide therapy data-based detection of user interface swaps or changes and / or image-based identification / classification of user interfaces, as discussed above.Example Clauses

[0098] Clause 1 : A method, comprising: accessing first usage information for a plurality of patients, the first usage information indicating participation, by each of the plurality of patients, in respiratory therapy; accessing first content delivery information for the plurality of patients; updating one or more parameters of a machine learning model based on the first usage information and the first content delivery information to generate an updated machine learning model; and generating, using the updated machine learning model, a first content selection for a first patient of the plurality of patients, wherein the first content selection is delivered to the first patient.

[0099] Clause 2: A method according to Clause 1, further comprising, for each respective patient of the plurality of patients: generating, using the updated machine learning model, a respective content selection for the respective patient; and providing the respective content selection, wherein content is delivered to the respective patient in accordance with the respective content selection.

[0100] Clause 3: A method according to Clause 1 or 2, wherein: updating the one or more parameters of the machine learning model is performed on a first day, and the first usage information indicates a duration of time during which the first patient engaged in the respiratory therapy during a first night immediately preceding the first day.

[0101] Clause 4: A method according to any of Clauses 1-3, wherein the first content delivery information indicates therapy content that was delivered to the first patient during a second day immediately preceding the first day.

[0102] Clause 5: A method according to any of Clauses 1-4, further comprising, on a second day immediately subsequent to the first day: accessing second usage information for the plurality of patients, the second usage information indicating, for each respective patient of the plurality of patients, a respective duration of time during which the respective patient engaged in the respiratory therapy during a second night immediately subsequent to the first night; and updating the one or more parameters of the updated machine learning model based on the second usage information to generate a second updated machine learning model.

[0103] Clause 6: A method according to any of Clauses 1-5, further comprising accessing demographic information for the plurality of patients, wherein the one or more parameters of the machine learning model are further updated based on the demographic information.

[0104] Clause 7: A method according to any of Clauses 1-6, wherein: updating the one or more parameters of the machine learning model comprises generating, for each respective patient of the plurality of patients, a respective feature vector based on respective usage information for the respective patient and respective content delivery information for the respective patient, a respective identity of the respective patient and a respective content selection indicated by the respective content delivery information are encoded using one-hot encodings.

[0105] Clause 8: A method according to any of Clauses 1-7, further comprising converting the feature vectors to a sparse matrix data format, wherein the one or more parameters of the machine learning model are updated based on the feature vectors in the sparse matrix data format are used as input for the machine learning model.

[0106] Clause 9: A method according to any of Clauses 1-8, wherein generating the firstcontent selection comprises: generating, for each respective content selection of a plurality of content selections, predicted usage information using the updated machine learning model; and selecting the first content selection based on the predicted usage information.

[0107] Clause 10: A system, comprising: a memory comprising computer-executable instructions; and one or more processors configured to execute the computer-executable instructions and cause the processing system to perform a method in accordance with any one of Clauses 1-9.

[0108] Clause 11 : A system, comprising means for performing a method in accordance with any one of Clauses 1-9.

[0109] Clause 12: A non-transitory computer-readable medium comprising computerexecutable instructions that, when executed by one or more processors of a processing system, cause the processing system to perform a method in accordance with any one of Clauses 1-9.

[0110] Clause 13: A computer program product embodied on a computer-readable storage medium comprising code for performing a method in accordance with any one of Clauses 1-9.Additional Considerations[OHl] One or more elements or aspects or steps, or any portion(s) thereof, from one or more of any of claims below can be combined with one or more elements or aspects or steps, or any portion(s) thereof, from one or more of any of the other claims below or combinations thereof, to form one or more additional implementations and / or claims of the present disclosure.

[0112] While the present disclosure has been described with reference to one or more particular embodiments or implementations, those skilled in the art will recognize that many changes may be made thereto without departing from the spirit and scope of the present disclosure. Each of these implementations and obvious variations thereof is contemplated as falling within the spirit and scope of the present disclosure. It is also contemplated that additional implementations according to aspects of the present disclosure may combine any number of features from any of the implementations described herein.

[0113] The preceding description is provided to enable any person skilled in the art to practice the various embodiments described herein. The examples discussed herein are not limiting of the scope, applicability, or embodiments set forth in the claims. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other embodiments. For example, changes may be made in the function and arrangement of elements discussed without departing from the scope of the disclosure. Various examples may omit, substitute, or add various proceduresor components as appropriate. For instance, the methods described may be performed in an order different from that described, and various steps may be added, omitted, or combined. Also, features described with respect to some examples may be combined in some other examples. For example, an apparatus may be implemented or a method may be practiced using any number of the aspects set forth herein. In addition, the scope of the disclosure is intended to cover such an apparatus or method that is practiced using other structure, functionality, or structure and functionality in addition to, or other than, the various aspects of the disclosure set forth herein. It should be understood that any aspect of the disclosure disclosed herein may be embodied by one or more elements of a claim.

[0114] As used herein, the word “exemplary” means “serving as an example, instance, or illustration.” Any aspect described herein as “exemplary” is not necessarily to be construed as preferred or advantageous over other aspects.

[0115] As used herein, a phrase referring to “at least one of’ a list of items refers to any combination of those items, including single members. As an example, “at least one of a, b, or c” is intended to cover a, b, c, a-b, a-c, b-c, and a-b-c, as well as any combination with multiples of the same element (e.g., a-a, a-a-a, a-a-b, a-a-c, a-b-b, a c c, b-b, b-b-b, b-b-c, c-c, and c-c-c or any other ordering of a, b, and c).

[0116] As used herein, the term “determining” encompasses a wide variety of actions. For example, “determining” may include calculating, computing, processing, deriving, investigating, looking up (e.g., looking up in a table, a database or another data structure), ascertaining and the like. Also, “determining” may include receiving (e.g., receiving information), accessing (e.g., accessing data in a memory) and the like. Also, “determining” may include resolving, selecting, choosing, establishing and the like.

[0117] The methods disclosed herein comprise one or more steps or actions for achieving the methods. The method steps and / or actions may be interchanged with one another without departing from the scope of the claims. In other words, unless a specific order of steps or actions is specified, the order and / or use of specific steps and / or actions may be modified without departing from the scope of the claims. Further, the various operations of methods described above may be performed by any suitable means capable of performing the corresponding functions. The means may include various hardware and / or software component s) and / or module(s), including, but not limited to a circuit, an application specific integrated circuit (ASIC), or processor. Generally, where there are operations illustrated in figures, those operations may have corresponding counterpart means-plus-function components with similar numbering.

[0118] Embodiments of the invention may be provided to end users through a cloud computing infrastructure. Cloud computing generally refers to the provision of scalable computing resources as a service over a network. More formally, cloud computing may be defined as a computing capability that provides an abstraction between the computing resource and its underlying technical architecture (e.g., servers, storage, networks), enabling convenient, on-demand network access to a shared pool of configurable computing resources that can be rapidly provisioned and released with minimal management effort or service provider interaction. Thus, cloud computing allows a user to access virtual computing resources (e.g., storage, data, applications, and even complete virtualized computing systems) in “the cloud,” without regard for the underlying physical systems (or locations of those systems) used to provide the computing resources.

[0119] Typically, cloud computing resources are provided to a user on a pay-per-use basis, where users are charged only for the computing resources actually used (e.g., an amount of storage space consumed by a user or a number of virtualized systems instantiated by the user). A user can access any of the resources that reside in the cloud at any time, and from anywhere across the Internet. In context of the present invention, a user may access applications or systems (e.g., the training system and / or inferencing system) or related data available in the cloud. For example, the training system and / or inferencing system could execute on a computing system in the cloud and train and use machine learning models to predict user interface changes and / or to classify user interfaces. In such a case, the training system and / or inferencing system could receive and process the therapy data, and store the models and predictions at a storage location in the cloud. Doing so allows a user to access this information from any computing system attached to a network connected to the cloud (e.g., the Internet).

[0120] The following claims are not intended to be limited to the embodiments shown herein, but are to be accorded the full scope consistent with the language of the claims. Within a claim, reference to an element in the singular is not intended to mean “one and only one” unless specifically so stated, but rather “one or more.” Unless specifically stated otherwise, the term “some” refers to one or more. No claim element is to be construed under the provisions of 35 U.S.C. §112(f) unless the element is expressly recited using the phrase “means for” or, in the case of a method claim, the element is recited using the phrase “step for.” All structural and functional equivalents to the elements of the various aspects described throughout this disclosure that are known or later come to be known to those of ordinary skill in the art are expressly incorporated herein by reference and are intended to be encompassedby the claims. Moreover, nothing disclosed herein is intended to be dedicated to the public regardless of whether such disclosure is explicitly recited in the claims.

Claims

CLAIMSWHAT IS CLAIMED IS:

1. A method, comprising: accessing first usage information for a plurality of patients, the first usage information indicating participation, by each of the plurality of patients, in respiratory therapy; accessing first content delivery information for the plurality of patients; updating one or more parameters of a machine learning model based on the first usage information and the first content delivery information to generate an updated machine learning model; and generating, using the updated machine learning model, a first content selection for a first patient, wherein the first content selection is delivered to the first patient.

2. The method of claim 1, further comprising, for each respective patient of the plurality of patients: generating, using the updated machine learning model, a respective content selection for the respective patient; and providing the respective content selection, wherein content is delivered to the respective patient in accordance with the respective content selection.

3. The method of claim 1, wherein: updating the one or more parameters of the machine learning model is performed on a first day, and the first usage information indicates a duration of time during which the first patient engaged in the respiratory therapy during a first night immediately preceding the first day.

4. The method of claim 3, wherein the first content delivery information indicates therapy content that was delivered to the first patient during a second day immediately preceding the first day.

5. The method of claim 3, further comprising, on a second day immediately subsequent to the first day: accessing second usage information for the plurality of patients, the second usage information indicating, for each respective patient of the plurality of patients, a respectiveduration of time during which the respective patient engaged in the respiratory therapy during a second night immediately subsequent to the first night; and updating the one or more parameters of the updated machine learning model based on the second usage information to generate a second updated machine learning model.

6. The method of claim 1, further comprising accessing demographic information for the plurality of patients, wherein the one or more parameters of the machine learning model are further updated based on the demographic information.

7. The method of claim 1, wherein: updating the one or more parameters of the machine learning model comprises generating, for each respective patient of the plurality of patients, a respective feature vector based on respective usage information for the respective patient and respective content delivery information for the respective patient, a respective identity of the respective patient and a respective content selection indicated by the respective content delivery information are encoded using one-hot encodings.

8. The method of claim 7, further comprising converting the feature vectors to a sparse matrix data format, wherein the one or more parameters of the machine learning model are updated based on the feature vectors in the sparse matrix data format are used as input for the machine learning model.

9. The method of claim 1, wherein generating the first content selection comprises: generating, for each respective content selection of a plurality of content selections, predicted usage information using the updated machine learning model; and selecting the first content selection based on the predicted usage information.

10. A non-transitory computer-readable medium comprising computer-executable instructions that, when executed by one or more processors of a processing system, cause the processing system to perform an operation comprising: accessing first usage information for a plurality of patients, the first usage information indicating participation, by each of the plurality of patients, in respiratory therapy; accessing first content delivery information for the plurality of patients;updating one or more parameters of a machine learning model based on the first usage information and the first content delivery information to generate an updated machine learning model; and generating, using the updated machine learning model, a first content selection for a first patient, wherein the first content selection is delivered to the first patient.

11. The non-transitory computer-readable medium of claim 10, the operation further comprising, for each respective patient of the plurality of patients: generating, using the updated machine learning model, a respective content selection for the respective patient; and providing the respective content selection, wherein content is delivered to the respective patient in accordance with the respective content selection.

12. The non-transitory computer-readable medium of claim 10, wherein: updating the one or more parameters of the machine learning model is performed on a first day, the first usage information indicates a duration of time during which the first patient engaged in the respiratory therapy during a first night immediately preceding the first day, and the first content delivery information indicates therapy content that was delivered to the first patient during a second day immediately preceding the first day.

13. The non-transitory computer-readable medium of claim 12, the operation further comprising, on a second day immediately subsequent to the first day: accessing second usage information for the plurality of patients, the second usage information indicating, for each respective patient of the plurality of patients, a respective duration of time during which the respective patient engaged in the respiratory therapy during a second night immediately subsequent to the first night; and updating the one or more parameters of the updated machine learning model based on the second usage information to generate a second updated machine learning model.

14. The non-transitory computer-readable medium of claim 10, wherein: updating the one or more parameters of the machine learning model comprises generating, for each respective patient of the plurality of patients, a respective feature vectorbased on respective usage information for the respective patient and respective content delivery information for the respective patient, a respective identity of the respective patient and a respective content selection indicated by the respective content delivery information are encoded using one-hot encodings.

15. The non-transitory computer-readable medium of claim 14, further comprising converting the feature vectors to a sparse matrix data format, wherein the one or more parameters of the machine learning model are updated based on the feature vectors in the sparse matrix data format are used as input for the machine learning model.

16. The non-transitory computer-readable medium of claim 10, wherein generating the first content selection comprises: generating, for each respective content selection of a plurality of content selections, predicted usage information using the updated machine learning model; and selecting the first content selection based on the predicted usage information.

17. A system, comprising: a memory comprising computer-executable instructions; and one or more processors configured to execute the computer-executable instructions and cause the system to perform an operation comprising: accessing first usage information for a plurality of patients, the first usage information indicating participation, by each of the plurality of patients, in respiratory therapy; accessing first content delivery information for the plurality of patients; updating one or more parameters of a machine learning model based on the first usage information and the first content delivery information to generate an updated machine learning model; and generating, using the updated machine learning model, a first content selection for a first patient, wherein the first content selection is delivered to the first patient.

18. The system of claim 17, wherein: updating the one or more parameters of the machine learning model is performed on a first day,the first usage information indicates a duration of time during which the first patient engaged in the respiratory therapy during a first night immediately preceding the first day, and the first content delivery information indicates therapy content that was delivered to the first patient during a second day immediately preceding the first day.

19. The system of claim 18, the operation further comprising, on a second day immediately subsequent to the first day: accessing second usage information for the plurality of patients, the second usage information indicating, for each respective patient of the plurality of patients, a respective duration of time during which the respective patient engaged in the respiratory therapy during a second night immediately subsequent to the first night; and updating the one or more parameters of the updated machine learning model based on the second usage information to generate a second updated machine learning model.

20. The system of claim 17, wherein: updating the one or more parameters of the machine learning model comprises generating, for each respective patient of the plurality of patients, a respective feature vector based on respective usage information for the respective patient and respective content delivery information for the respective patient, a respective identity of the respective patient and a respective content selection indicated by the respective content delivery information are encoded using one-hot encodings, and the operation further comprises converting the feature vectors to a sparse matrix data format, wherein the one or more parameters of the machine learning model are updated based on the feature vectors in the sparse matrix data format are used as input for the machine learning model.