Enhanced user selection for communication workflows using machine-learning techniques
AssigneeOracle International Corporation
InventorsNavin Chand Boddu, Venkata Chandrashekar Duvvuri
Life of this patent
Estimating the term…
Abstract
The present disclosure relates to systems and methods for intelligently selecting users for inclusion in workflows. In some examples, machine-learning techniques can be executed to intelligently expand the set of user profiles included in a workflow. The intelligent selection of new user profiles may be continuously performed over time intervals, thereby enhancing the computational efficiency and accuracy of expanding the user profiles selected for inclusion in the workflow.
Claims18
A computer-implemented method comprising:
- accessing a first user data set associated with a first set of user profiles representing a first set of user devices and a second user data set associated with a second set of user profiles representing a second set of user devices;
- executing a workflow orchestrated to include one or more tasks to be performed on the first user data set, wherein executing the workflow comprises:
- inputting the first user data set into the workflow, each task of the one or more tasks including transmitting a communication to a user device, and the workflow being configured to execute the one or more tasks in a sequence;
- executing the one or more tasks of the workflow in association with the first set of user devices, the execution including transmitting the communication to each user device of the first set of user devices, wherein receiving the communication at a user device enables the user device to perform one or more actions;
- receiving one or more performance metrics associated with the execution of the one or more tasks of the workflow during a time period, each performance metric of the one or more performance metrics indicating an action of the one or more actions performed by a user device in response to receiving the communication;
- automatically selecting a first subset of user devices from the first set of user devices, the selection of the first subset of user devices being based on the one or more performance metrics associated with the first set of user profiles associated with the first set of user devices, wherein the one or more performance metrics associated with the first set of user profiles associated with the first set of user devices indicate that the first set of user devices took a particular action of the one or more actions;
- using an unsupervised machine learning model of the first user data set and the one or more performance metrics to predict, from the second set of user devices, a second subset of user devices that are likely to take the particular action, wherein using the
- unsupervised machine learning model of the first user data set and the one or more performance metrics to predict, from the second set of user devices, the second subset of user devices that are likely to take the particular action comprises:
- performing a clustering operation on the second user data set associated with the second set of user profiles representing the second set of user devices, the clustering operation generating one or more clusters of user devices of the second set of user devices;
- generating, for each cluster of the one or more clusters, a cluster vector representing the one or more devices included in the cluster;
- generating one or more target vectors representing the first subset of user devices;
- determining a vector-to-vector similarity between the one or more target vectors and each cluster vector of the one or more cluster vectors;
- and
- selecting the second subset of user devices from the second set of user devices based at least in part on the vector-to-vector similarity between the one or more target vectors and the cluster vectors of the second subset of user devices, wherein at least one user device of the second subset of user devices is not included in the first set of user devices;
- continuing to execute the workflow that was orchestrated to include the one or more tasks performed on the first user data set by:
- automatically transmitting at least a portion of the second user data set into the workflow, the portion of the second user data set corresponding to the second subset of user devices;
- executing the one or more tasks of the workflow in association with the second subset of user devices, the execution of the one or more tasks including transmitting the communication to each user device of the second subset of user devices,
- receiving one or more second performance metrics associated with, the execution of the one or more tasks of the workflow in association with, the second subset of user devices, each second performance metric of the one or more second performance metrics indicating a second action of one or more second actions performed by a second user device of the second subset of user devices in response to receiving the communication;
- automatically identifying an additional subset of user devices from, the second subset of user devices, wherein each user device in the subset of user devices is associated with a performance metric above a threshold;
- updating the unsupervised machine learning model using data corresponding to the additional subset of user devices to prioritize detecting other user devices likely to take the particular action;
- and
- continuing to execute the workflow that was orchestrated to include the one or more tasks performed on the first user data set by automatically transmitting a new user data set into the workflow using the updated unsupervised machine learning model until a termination condition is satisfied.
A system, comprising:
- one or more data processors;
- and
- a non-transitory computer-readable storage medium containing instructions which, when executed on the one or more data processors, cause the one or more data processors to perform operations including:
- accessing a first user data set associated with a first set of user profiles representing a first set of user devices and a second user data set associated with a second set of user profiles representing a second set of user devices;
- executing a workflow orchestrated to include one or more tasks to be performed on the first user data set, wherein executing the workflow comprises:
- inputting the first user data set into the workflow, each task of the one or more tasks including transmitting a communication to a user device, and the workflow being configured to execute the one or more tasks in a sequence;
- executing the one or more tasks of the workflow in association with the first set of user devices, the execution including transmitting the communication to each user device of the first set of user devices;
- receiving one or more performance metrics associated with the execution of the one or more tasks of the workflow during a time period, each performance metric of the one or more performance metrics indicating an action of the one or more actions performed by a user device in response to receiving the communication;
- automatically selecting a first subset of user devices from the first set of user devices, the selection of the first subset of user devices being based on the one or more performance metrics associated with the first set of user profiles associated with the first set of user devices, wherein the one or more performance metrics associated with the first set of user profiles associated with the first set of user devices indicate that the first set of user devices took a particular action of the one or more actions;
- using an unsupervised machine learning model of the first user data set and the one or more performance metrics to predict, from the second set of user devices, a second subset of user devices that are likely to take the particular action, wherein using the unsupervised machine learning model of the first user data set and the one or more performance metrics to predict, from the second set of user devices, the second subset of user devices that are likely to take the particular action comprises:
- performing a clustering operation on the second user data set associated with the second set of user profiles representing the second set of user devices, the clustering operation generating one or more clusters of user devices of the second set of user devices;
- generating, for each cluster of the one or more clusters, a cluster vector representing the one or more devices included in the cluster;
- generating one or more target vectors representing the first subset of user devices;
- determining a vector-to-vector similarity between the one or more target vectors and each cluster vector of the one or more cluster vectors;
- and
- selecting the second subset of user devices from the second set of user devices based at least in part on the vector-to-vector similarity between the one or more target vectors and the cluster vectors of the second subset of user devices, wherein at least one user device of the second subset of user devices is not included in the first set of user devices;
- continuing to execute the workflow that was orchestrated to include the one or more tasks performed on the first user data set by:
- automatically transmitting at least a portion of the second user data set into the workflow, the portion of the second user data set corresponding to the second subset of user devices;
- executing the one or more tasks of the workflow in association with the second subset of user devices, the execution of the one or more tasks including transmitting the communication to each user device of the second subset of user devices,
- receiving one or more second performance metrics associated with the execution of the one or more tasks of the workflow in association with the second subset of user devices, each second performance metric of the one or more second performance metrics indicating a second action of one or more second actions performed by a second user device of the second subset of user devices in response to receiving the communication;
- automatically identifying an additional subset of user devices from the second subset of user devices;
- updating the unsupervised machine learning model using data corresponding to the additional subset of user devices to prioritize detecting other user devices likely to take the particular action;
- and
- continuing to execute the workflow that was orchestrated to include the one or more tasks performed on the first user data set by automatically transmitting a new user data set into the workflow using the updated unsupervised machine learning model until a termination condition is satisfied.
A computer-program product tangibly embodied in a non-transitory machine-readable storage medium, including instructions configured to cause a data processing apparatus to perform operations including:
- accessing a first user data set associated with a first set of user profiles representing a first set of user devices and a second user data set associated with a second set of user profiles representing a second set of user devices;
- executing a workflow orchestrated to include one or more tasks to be performed on the first user data set, wherein executing the workflow comprises:
- inputting the first user data set into the workflow, each task of the one or more tasks including transmitting a communication to a user device, and the workflow being configured to execute the one or more tasks in a sequence;
- executing the one or more tasks of the workflow in association with the first set of user devices, the execution including transmitting the communication to each user device of the first set of user devices, wherein receiving the communication at a user device enables the user device to perform one or more actions;
- receiving one or more performance metrics associated with the execution of the one or more tasks of the workflow during a time period, each performance metric of the one or more performance metrics indicating an action of the one or more actions performed by a user device in response to receiving the communication;
- automatically selecting a first subset of user devices from the first set of user devices, the selection of the first subset of user devices being based on the one or more performance metrics associated with the first set of user profiles associated with the first set of user devices, wherein the one or more performance metrics associated with the first set of user profiles associated with the first set of user devices indicate that the first set of user devices took a particular action of the one or more actions;
- using an unsupervised machine learning model of the first user data set and the one or more performance metrics to predict, from the second set of user devices, a second subset of user devices that are likely to take the particular action, wherein using the unsupervised machine learning model of the first user data set and the one or more performance metrics to predict, from the second set of user devices, the second subset of user devices that are likely to take the particular action comprises:
- performing a clustering operation on the second user data set associated with the second set of user profiles representing the second set of user devices, the clustering operation generating one or more clusters of user devices of the second set of user devices;
- generating, for each cluster of the one or more clusters, a cluster vector representing the one or more devices included in the cluster;
- generating one or more target vectors representing the first subset of user devices;
- determining a vector-to-vector similarity between the one or more target vectors and each cluster vector of the one or more cluster vectors;
- and
- selecting the second subset of user devices from the second set of user devices based at least in part on the vector-to-vector similarity between the one or more target vectors and the cluster vectors of the second subset of user devices, wherein at least one user device of the second subset of user devices is not included in the first set of user devices;
- continuing to execute the workflow that was orchestrated to include the one or more tasks performed on the first user data set by:
- automatically transmitting at least a portion of the second user data set into the workflow, the portion of the second user data set corresponding to the second subset of user devices;
- executing the one or more tasks of the workflow in association with the second subset of user devices, the execution of the one or more tasks including transmitting the communication to each user device of the second subset of user devices,
- receiving one or more second performance metrics associated with, the execution of the one or more tasks of the workflow in association with, the second subset of user devices, each second performance metric of the one or more second performance metrics indicating a second action of one or more second actions performed by a second user device of the second subset of user devices in response to receiving the communication;
- automatically identifying an additional subset of user devices from, the second subset of user devices, wherein each user device in the subset of user devices is associated with a performance metric above a threshold;
- updating the unsupervised machine learning model using data corresponding to the additional subset of user devices to prioritize detecting other user devices likely to take the particular action;
- and
- continuing to execute the workflow that was orchestrated to include the one or more tasks performed on the first user data set by automatically transmitting a new user data set into the workflow using the updated unsupervised machine learning model until a termination condition is satisfied.
Dependencies are inferred from the claim text.