US-12622638-B2 - Configuring applications based on a user's wakefulness state
Abstract
Techniques for configuring one or more applications based on a detected wakefulness state of a user are disclosed. A system trains and applies a machine learning model to wakefulness data to compute a wakefulness state of a user. The system obtains the wakefulness data from wearable devices worn by the user and environmental devices in a user's environment. The system configures applications and/or devices based on the computed wakefulness state of the user. The system configures the ability of devices or applications to generate visual, audible, or tactile notifications in response to determining that a user is awake or asleep.
Inventors
- Michael Patrick Rodgers
Assignees
- ORACLE INTERNATIONAL CORPORATION
Dates
- Publication Date
- 20260512
- Application Date
- 20211210
Claims (20)
- 1 . One or more non-transitory machine-readable media storing instructions which, when executed by one or more processors, cause performance of operations comprising: training a machine learning model to determine whether users of wearable devices were asleep or awake at least by: obtaining historical training data sets comprising: a first historical training data set corresponding to a first period of time, wherein the first historical training data set comprises (a) a first set of user information corresponding to at least one user, collected by at least one wearable device, corresponding to the first period of time and (b) a first label indicating that the at least one user was asleep during the first period of time; a second historical training data set corresponding to a second period of time, wherein the second historical training data set comprises (a) a second set of user information corresponding to the at least one user, collected by the at least one wearable device, corresponding to the second period of time and a second label indicating that the at least one user was awake during the second period of time; training the machine learning model based on the historical training data sets; executing the machine learning model in a wakefulness detection engine to determine whether a target user is awake or asleep, wherein the wakefulness detection engine is implemented in a first device, wherein the first device is at least one of: (a) a wearable device, and (b) a first remote device in communication with the wearable device; detecting, using the wearable device during a third period of time, a third set of user information corresponding to the target user; applying the machine learning model to the third set of user information, corresponding to the target user, to determine that the target user was asleep during the third period of time; responsive to determining the target user was asleep during the third period of time: applying a first configuration for a first application running on a second device, wherein the second device comprises at least one of (a) the wearable device, and (b) a second remote device in communication with the wearable device; detecting, by the first application, a first trigger event in the third period of time, wherein a first function, to be triggered by the first trigger event includes at least one of generating a light, generating a sound, and generating a vibration in the second device; responsive to determining that the first application is in the first configuration, refraining from performing the first function mapped to the first trigger event in configuration data of the first application, even though the first trigger event for the first function was detected by the first application; detecting, using the wearable device during a fourth period of time, a fourth set of user information corresponding to the target user; applying the machine learning model to the fourth set of user information to determine that the target user was awake during the fourth period of time; responsive to determining the target user was awake during the fourth period of time: applying a second configuration for the first application running on the second device; detecting, by the first application, the first trigger event in the fourth period of time; and responsive to determining that the first application is in the second configuration, performing the first function mapped to the first trigger event in the configuration data of the first application.
- 2 . The non-transitory machine-readable media of claim 1 , wherein training the machine learning model based on the historical training data sets includes training the machine learning model to correlate sensor data collected by the at least one wearable device with whether the at least one user of the wearable device was asleep or awake, wherein the sensor data includes: motion sensor data; heart rate sensor data; and audio sensor data.
- 3 . The non-transitory machine-readable media of claim 1 , wherein the historical training data sets further comprise: environmental information generated by one or more sensors in an environment in which the at least one wearable device is located.
- 4 . The non-transitory machine-readable media of claim 1 , wherein training the machine learning model based on the historical training data sets includes training the machine learning model to identify a daily pattern of wakefulness and sleep based on sensor data of the wearable device measured over a period spanning a plurality of days.
- 5 . The non-transitory machine-readable media of claim 1 , wherein training the machine learning model based on the historical training data sets includes training the machine learning model to correlate sensor data collected by the at least one wearable device with whether the at least one user of the wearable device was asleep or awake, wherein the sensor data includes: motion sensor data; heart rate sensor data; and audio sensor data; wherein the historical training data sets further comprise: environmental information generated by one or more sensors in an environment in which the at least one wearable device is located; and wherein training the machine learning model based on the historical training data sets includes training the machine learning model to identify a daily pattern of wakefulness and sleep based on the sensor data of the wearable device measured over a period spanning a plurality of days.
- 6 . The non-transitory machine-readable media of claim 1 , wherein the operations further comprise: detecting, using the wearable device during a fifth period of time, a fifth set of user information corresponding to the target user; applying the machine learning model to the fifth set of user information in real-time to determine that the target user is asleep during the fifth period of time; responsive to determining the target user is asleep: determining an elapsed sleep time that the target user has been asleep; and responsive to determining the elapsed sleep time meets a threshold: triggering a second function of a third device to perform one of activating the second function and deactivating the second function.
- 7 . The non-transitory machine-readable media of claim 1 , wherein the operations further comprise: receiving, by a cloud-based application, a first set of selections to apply the first configuration for the first application based on detecting a sleeping state of the target user; based on the first set of selections, generating a first rule to apply the first configuration for the first application based on detecting the target user is asleep; receiving, by a cloud-based application, a second selection to apply the second configuration for the first application based on detecting an awake state of the target user; based on the second selection, generating a second rule to apply the second configuration for the first application based on detecting the target user is awake; and transmitting, by the cloud-based application, the first rule and the second rule to the second device.
- 8 . The non-transitory machine-readable media of claim 7 , wherein the operations further comprise: receiving, by the cloud-based application, a third set of selections to apply a third configuration for a second application based on detecting a sleeping state of the target user; based on the third set of selections, generating a third rule to apply a third configuration for the second application based on detecting the target user is asleep; transmitting, by the cloud-based application, the third rule to the second device; detecting, by the second application, a second trigger event in the third period of time, wherein a second function triggered by the second trigger event includes at least one of generating a light, generating a sound, and generating a vibration in the second device; and responsive to determining that the second application is in the third configuration, performing the second function associated with the second trigger event.
- 9 . The non-transitory machine-readable media of claim 1 , wherein the first application is a communications application, and wherein the first trigger event comprises the first application receiving a communication from a third device external to the wearable device.
- 10 . The non-transitory machine-readable media of claim 1 , wherein the operations further comprise: responsive to determining the target user was asleep during the third period of time: applying a third configuration for a second application running on the second device; detecting, by the second application, the first trigger event in the third period of time; and responsive to determining that the second application is in the third configuration, performing a second function associated with the first trigger event.
- 11 . The non-transitory machine-readable media of claim 1 , wherein the operations further comprise: determining an elapsed time from when the first configuration was applied for the first application; based on determining the elapsed time meets a threshold: applying a third configuration for the first application; detecting, by the first application, the first trigger event in a fifth period of time; and responsive to determining that the first application is in the third configuration, performing the first function associated with the first trigger event.
- 12 . The non-transitory machine-readable media of claim 1 , wherein applying the first configuration for the first application running on the second device, responsive to determining the target user was asleep comprises: changing a setting that maps the first trigger event to the first function from (a) enabling performance of the first function responsive to detecting the first trigger event to (b) disabling performance of the first function responsive to detecting the first trigger event.
- 13 . The non-transitory machine-readable media of claim 1 , wherein applying the first configuration for the first application running on the second device comprises storing a first value for a wakefulness setting, wherein the first value corresponds to an “asleep” state and a second value corresponds to an “awake” state, wherein determining that the first application is in the first configuration comprises determining the wakefulness setting stores the first value.
- 14 . The non-transitory machine-readable media of claim 1 , wherein the at least one user comprises the target user.
- 15 . A method comprising: training a machine learning model to determine whether users of wearable devices were asleep or awake at least by: obtaining historical training data sets comprising: a first historical training data set corresponding to a first period of time, wherein the first historical training data set comprises (a) a first set of user information corresponding to at least one user, collected by at least one wearable device, corresponding to the first period of time and (b) a first label indicating that the at least one user was asleep during the first period of time; a second historical training data set corresponding to a second period of time, wherein the second historical training data set comprises (a) a second set of user information corresponding to the at least one user, collected by the at least one wearable device, corresponding to the second period of time and a second label indicating that the at least one user was awake during the second period of time; training the machine learning model based on the historical training data sets; executing the machine learning model in a wakefulness detection engine to determine whether a target user is awake or asleep, wherein the wakefulness detection engine is implemented in a first device, wherein the first device is at least one of: (a) a wearable device, and (b) a first remote device in communication with the wearable device; detecting, using the wearable device during a third period of time, a third set of user information corresponding to the target user; applying the machine learning model to the third set of user information, corresponding to the target user, to determine that the target user was asleep during the third period of time; responsive to determining the target user was asleep during the third period of time: applying a first configuration for a first application running on a second device, wherein the second device comprises at least one of (a) the wearable device, and (b) a second remote device in communication with the wearable device; detecting, by the first application, a first trigger event in the third period of time, wherein a first function, to be triggered by the first trigger event includes at least one of generating a light, generating a sound, and generating a vibration in the second device; responsive to determining that the first application is in the first configuration, refraining from performing the first function mapped to the first trigger event in configuration data of the first application, even though the first trigger event for the first function was detected by the first application; detecting, using the wearable device during a fourth period of time, a fourth set of user information corresponding to the target user; applying the machine learning model to the fourth set of user information to determine that the target user was awake during the fourth period of time; responsive to determining the target user was awake during the fourth period of time: applying a second configuration for the first application running on the second device; detecting, by the first application, the first trigger event in the fourth period of time; and responsive to determining that the first application is in the second configuration, performing the first function mapped to the first trigger event in the configuration data of the first application.
- 16 . The method of claim 15 , wherein training the machine learning model based on the historical training data sets includes training the machine learning model to correlate sensor data collected by the at least one wearable device with whether the at least one user of the wearable device was asleep or awake, wherein the sensor data includes: motion sensor data; heart rate sensor data; and audio sensor data.
- 17 . The method of claim 15 , wherein the historical training data sets further comprise: environmental information generated by one or more sensors in an environment in which the at least one wearable device is located.
- 18 . The method of claim 15 , wherein training the machine learning model based on the historical training data sets includes training the machine learning model to identify a daily pattern of wakefulness and sleep based on sensor data of the wearable device measured over a period spanning a plurality of days.
- 19 . The method of claim 15 , further comprising: detecting, using the wearable device during a fifth period of time, a fifth set of user information corresponding to the target user; applying the machine learning model to the fifth set of user information in real-time to determine that the target user is asleep during the fifth period of time; responsive to determining the target user is asleep: determining an elapsed sleep time that the target user has been asleep; and responsive to determining the elapsed sleep time meets a threshold: triggering a second function of a third device to perform one of activating the second function and deactivating the second function.
- 20 . The method of claim 15 , further comprising: receiving, by a cloud-based application, a first set of selections to apply the first configuration for the first application based on detecting a sleeping state of the target user; based on the first set of selections, generating a first rule to apply the first configuration for the first application based on detecting the target user is asleep; receiving, by a cloud-based application, a second selection to apply the second configuration for the first application based on detecting an awake state of the target user; based on the second selection, generating a second rule to apply the second configuration for the first application based on detecting the target user is awake; and transmitting, by the cloud-based application, the first rule and the second rule to the second device.
Description
TECHNICAL FIELD The present disclosure relates to configuring one or more applications based on a detected wakefulness state of a user. In particular, the present disclosure relates to applying a machine learning model to a set of wakefulness state data to determine a wakefulness state and configure applications accordingly. BACKGROUND Wearable devices provide a wide variety of functionality for users, such as communications, media output, and monitoring physiological characteristics of the user. Wearable devices may use physiological characteristics to monitor a user's sleep. For example, a device may monitor the heart rate or movement of a user to determine a sleep state of the wearer. Some devices seek to improve a user's sleep quality by providing sleep information to the user once the user awakes. For example, a watch may detect the movement of the user during a period of time defined as sleep time by the user. The watch may communicate with a phone to inform the user whether the user had restless sleep or restful sleep based on the amount of motion detected by the watch. Other devices seek to improve the user's sleep while the user is sleeping by emitting relaxing sounds. For example, a watch may detect a heart rate of the user and alter sounds emitted by the watch based on the detected heart rate. The approaches described in this section are approaches that could be pursued, but not necessarily approaches that have been previously conceived or pursued. Therefore, unless otherwise indicated, it should not be assumed that any of the approaches described in this section qualify as prior art merely by virtue of their inclusion in this section. BRIEF DESCRIPTION OF THE DRAWINGS The embodiments are illustrated by way of example and not by way of limitation in the figures of the accompanying drawings. It should be noted that references to “an” or “one” embodiment in this disclosure are not necessarily to the same embodiment, and they mean at least one. In the drawings: FIG. 1 illustrates a system in accordance with one or more embodiments; FIG. 2 illustrates an example set of operations for configuring applications based on a current user wakefulness state in accordance with one or more embodiments; FIG. 3 illustrates an example set of operations for training a machine learning model to identify a wakefulness state of a user based on current user wakefulness data according to one or more embodiments; FIG. 4 illustrates an example embodiment of a system for configuring applications based on a current wakefulness state of a user; FIG. 5 illustrates another example embodiment of a system for configuring applications based on a current wakefulness state of a user; FIG. 6 illustrates an example embodiment of a graphical user interface for configuring devices and applications based on detected wakefulness settings; and FIG. 7 shows a block diagram that illustrates a computer system in accordance with one or more embodiments. DETAILED DESCRIPTION In the following description, for the purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding. One or more embodiments may be practiced without these specific details. Features described in one embodiment may be combined with features described in a different embodiment. In some examples, well-known structures and devices are described with reference to a block diagram form in order to avoid unnecessarily obscuring the present invention. 1. GENERAL OVERVIEW2. SYSTEM ARCHITECTURE3. CONFIGURING APPLICATIONS BASED ON DETECTED CURRENT USER WAKEFULNESS STATE3.1 APPLYING SETS OF RULES TO CURRENT WAKEFULNESS DATA TO DETERMINE USER WAKEFULNESS STATE3.2 DETERMINING USER WAKEFULNESS STATE BASED ON ENVIRONMENTAL WAKEFULNESS DATA3.3 DETERMINING LEVELS OF USER WAKEFULNESS BASED ON CURRENT WAKEFULNESS DATA4. TRAINING MACHINE LEARNING MODEL5. EXAMPLE EMBODIMENT: CONFIGURING APPLICATION SETTINGS OF A DEVICE BASED ON DETECTING CURRENT WAKEFULNESS DATA6. EXAMPLE EMBODIMENT: CLOUD-BASED WAKEFULNESS CONFIGURATION INTERFACE7. COMPUTER NETWORKS AND CLOUD NETWORKS8. MISCELLANEOUS; EXTENSIONS9. HARDWARE OVERVIEW 1. General Overview One or more embodiments train and apply a machine learning model to wakefulness data to compute a wakefulness state of a user. Wakefulness data includes any data that may be used to compute a wakefulness state of a user. Wakefulness data includes user data detected by a wearable device or sensor. Wakefulness data includes environmental data corresponding to an environment that includes a target user. Alternatively, or additionally, the system may apply a set of static rules to wakefulness data to compute the wakefulness state of a user. The system configures applications and/or devices based on the computed wakefulness state of a user. In an example, a system may reduce or altogether stop visual, audible, or tactile notifications in response to determining that a user is asleep. The system may configure applicatio