Analyzing mobile-device location histories to characterize consumer behavior
First Claim
1. A method of inferring a user'"'"'s reason for movement between geolocations sensed by a mobile device of the user, the method comprising:
- obtaining, with one or more processors, a history of time-stamped geolocations of a user, the time-stamped geolocations being obtained based on data from one or more computing devices associated with the user and reported to one or more remote server systems;
selecting, with one or more processors, a plurality of geographic areas based on each of the selected geographic areas including at least one of the time-stamped geolocations;
associating, with one or more processors, the selected geographic areas with the time-stamp of the included geolocation to establish a time series sequence of the geographic areas;
training, with one or more processors, a probabilistic model, wherein training the probabilistic model comprises;
obtaining an initial set of probabilities for the model;
selecting a training set of time series sequences of geographic areas for the user, wherein the training set comprises at least a portion of the established time series sequence of the geographic areas;
selecting a plurality of user events, each user event being an underlying potential reason why users move between geographic locations;
calculating a plurality of probabilities of the model by iterating steps comprising;
estimating, for each pairwise combination of user events in the plurality of user events, a probability of the user transitioning between the pairwise combination of the user events based on the training set and, in a first iteration, the initial set of probabilities and, in a subsequent iteration, a revised set of probabilities;
normalizing the estimated probabilities of the user transitioning between the pairwise combinations of user events to form revised probabilities of the user transitioning between the pairwise combinations of user events;
estimating the probabilities of obtaining a geolocation reported by the computing devices associated with the user based on the training set and the revised probabilities of the user transitioning between the pairwise combinations of the user events; and
normalizing the estimated probabilities of obtaining a geolocation reported by the computing devices associated with the user to form revised probabilities of obtaining a geolocation reported by the computing devices associated with the user,wherein the revised set of probabilities includes both the revised probabilities of the user transitioning between the pairwise combinations of the user events and the revised probabilities of obtaining a geolocation reported by the computing devices associated with the user;
determining, with the trained probabilistic model, parameters for an input time series sequence of geographic areas based on a recent subset of time-stamped geolocations of the user in the history, the parameters comprising;
a plurality of candidate user events from the plurality of user events, each candidate user event being an underlying potential reason why the user moved between geographic locations;
probabilities of the user transitioning between each pair of the candidate user events; and
probabilities of obtaining a geolocation reported by the computing devices associated with the user in each of the geographic areas in the input time series sequence of the geographic areas following occurrence of each of the candidate user events;
inferring, with one or more processors, a reason why the user transitioned between a given sequential pair of the geographic areas in the input time series sequence of geographic areas responsive to the parameters determined by the trained probabilistic model, wherein the reason comprises one of the candidate user events; and
storing, with one or more processors, the inferred reason in memory.
5 Assignments
0 Petitions
Accused Products
Abstract
Provided is a process of inferring a user'"'"'s reason for movement between geolocations sensed by a mobile device of the user, the process including: obtaining a history of time-stamped geolocations of a user; selecting a plurality of geographic areas based on each of the selected geographic areas including at least one of the time-stamped geolocations; obtaining a probabilistic model specifying parameters comprising: a plurality of candidate user events, each candidate user event being an underlying potential reason why the user moved between geographic locations; probabilities of the user transitioning between each pair of the candidate user events; and probabilities of obtaining a geolocation reported by the computing devices associated with the user in each of the plurality of geographic areas following occurrence of each of the candidate user events; inferring, with one or more processors, one of the candidate user events.
26 Citations
25 Claims
-
1. A method of inferring a user'"'"'s reason for movement between geolocations sensed by a mobile device of the user, the method comprising:
-
obtaining, with one or more processors, a history of time-stamped geolocations of a user, the time-stamped geolocations being obtained based on data from one or more computing devices associated with the user and reported to one or more remote server systems; selecting, with one or more processors, a plurality of geographic areas based on each of the selected geographic areas including at least one of the time-stamped geolocations; associating, with one or more processors, the selected geographic areas with the time-stamp of the included geolocation to establish a time series sequence of the geographic areas; training, with one or more processors, a probabilistic model, wherein training the probabilistic model comprises; obtaining an initial set of probabilities for the model; selecting a training set of time series sequences of geographic areas for the user, wherein the training set comprises at least a portion of the established time series sequence of the geographic areas; selecting a plurality of user events, each user event being an underlying potential reason why users move between geographic locations; calculating a plurality of probabilities of the model by iterating steps comprising; estimating, for each pairwise combination of user events in the plurality of user events, a probability of the user transitioning between the pairwise combination of the user events based on the training set and, in a first iteration, the initial set of probabilities and, in a subsequent iteration, a revised set of probabilities; normalizing the estimated probabilities of the user transitioning between the pairwise combinations of user events to form revised probabilities of the user transitioning between the pairwise combinations of user events; estimating the probabilities of obtaining a geolocation reported by the computing devices associated with the user based on the training set and the revised probabilities of the user transitioning between the pairwise combinations of the user events; and normalizing the estimated probabilities of obtaining a geolocation reported by the computing devices associated with the user to form revised probabilities of obtaining a geolocation reported by the computing devices associated with the user, wherein the revised set of probabilities includes both the revised probabilities of the user transitioning between the pairwise combinations of the user events and the revised probabilities of obtaining a geolocation reported by the computing devices associated with the user; determining, with the trained probabilistic model, parameters for an input time series sequence of geographic areas based on a recent subset of time-stamped geolocations of the user in the history, the parameters comprising; a plurality of candidate user events from the plurality of user events, each candidate user event being an underlying potential reason why the user moved between geographic locations; probabilities of the user transitioning between each pair of the candidate user events; and probabilities of obtaining a geolocation reported by the computing devices associated with the user in each of the geographic areas in the input time series sequence of the geographic areas following occurrence of each of the candidate user events; inferring, with one or more processors, a reason why the user transitioned between a given sequential pair of the geographic areas in the input time series sequence of geographic areas responsive to the parameters determined by the trained probabilistic model, wherein the reason comprises one of the candidate user events; and storing, with one or more processors, the inferred reason in memory. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24)
-
-
25. A system, comprising:
-
one or more processors; and memory storing instructions that when executed by at least some of the processors effectuate operations comprising; obtaining a history of time-stamped geolocations of a user, the time-stamped geolocations being obtained based on data from one or more computing devices associated with the user and reported to one or more remote server systems; selecting a plurality of geographic areas based on each of the selected geographic areas including at least one of the time-stamped geolocations; associating the selected geographic areas with the time-stamp of the included geolocation to establish a time series sequence of the geographic areas; training a probabilistic model, wherein training the probabilistic model comprises; obtaining an initial set of probabilities for the model; selecting a training set of time series sequences of geographic areas for the user, wherein the training set comprises at least a portion of the established time series sequence of the geographic areas; selecting a plurality of user events, each user event being an underlying potential reason why users move between geographic locations; calculating a plurality of probabilities of the model by iterating steps comprising; estimating, for each pairwise combination of user events in the plurality of user events, a probability of the user transitioning between the pairwise combination of the user events based on the training set and, in a first iteration, the initial set of probabilities and, in a subsequent iteration, a revised set of probabilities; normalizing the estimated probabilities of the user transitioning between the pairwise combinations of user events to form revised probabilities of the user transitioning between the pairwise combinations of user events; estimating the probabilities of obtaining a geolocation reported by the computing devices associated with the user based on the training set and the revised probabilities of the user transitioning between the pairwise combinations of the user events; and normalizing the estimated probabilities of obtaining a geolocation reported by the computing devices associated with the user to form revised probabilities of obtaining a geolocation reported by the computing devices associated with the user, wherein the revised set of probabilities includes both the revised probabilities of the user transitioning between the pairwise combinations of the user events and the revised probabilities of obtaining a geolocation reported by the computing devices associated with the user; determining, with the trained probabilistic model, parameters for an input time series sequence of geographic areas based on a recent subset of time-stamped geolocations of the user in the history, the parameters comprising; a plurality of candidate user events from the plurality of user events, each candidate user event being an underlying potential reason why the user moved between geographic locations; probabilities of the user transitioning between each pair of the candidate user events; and probabilities of obtaining a geolocation reported by the computing devices associated with the user in each of the geographic areas in the input time series sequence of the geographic areas following occurrence of each of the candidate user events; inferring, with one or more processors, a reason why the user transitioned between a given sequential pair of the geographic areas in the input time series sequence of geographic areas responsive to the parameters determined by the trained probabilistic model, wherein the reason comprises one of the candidate user events; and storing the inferred reason in memory.
-
Specification