The present invention relates to electronically targeting goods, services, content, advertising and other entities through the automated analysis of human behavior. Particularly, the invention relates to a means of creating predictive models in instances where the data is not presented as a simple functional relationship, but rather consists of samples of the occurrence or non-occurrence of an item of interest. The invention provides a means of creating and modeling such sampled data and creating a predictive system for recommending items of interest based on derived model segments. The system has application in personalization, behavioral targeting, Internet retailing, email segmentation and ad targeting, to name but a few applications.
The present invention relates to predictive systems where the objective of the prediction is to model the probability that a certain event will occur given the parameters of population membership. Predictive models create value by taking available data samples and then applying some modeling technique to the data. Common modeling techniques include linear regression, logistic regression, neural networks, classification and regression tree (CART), and other techniques. A key requirement of each of these methods is that they require a set of functional relationships, or input-output pairs (Z, Y) as the starting point of the modeling process. The present invention addresses the circumstance where such input-output, pairs are not readily available and must be synthesized from distributions of samples that contain the event of interest and samples that do not contain the event of interest. Some examples of how this data requirement impacts other approaches are described below.
Many systems create models by using regression techniques. Whether linear, nonlinear, logistic, neural network or otherwise, all of these techniques require a well-defined set of functional pairs against which the model is fit. The present invention creates predictive segments as a pre-processing step to a regression modeling system or can be used as a fully functional predictive model by itself.
Clustering techniques, such as K-means or vector quantization, define groupings from which density functions can be defined, and hence can be used as means of generating input-output pair's to be used a pre-processing step to a predictive modeling process, such as a regression model. However, shortcomings of clustering techniques, which are addressed by the present invention are (i) clusters may not be predictive; that is, the clustering and differentiation of the input variable space may be different than the clustering and differentiation of the output variable space; (ii) the methods are computationally expensive; that is, they require a large number of iterative calculations to adjust the clusters to convergence (although only against the clustering criteria of the input space, not the output/prediction space); and (iii) determination of the number of clusters is difficult and may require trial and error, particularly given the non-guarantee of the predictability of the clusters; and (iv) the clustering is further complicated by the existence of two distributions, a normalizing distribution, and the differentiated distribution.
The present invention is similar to classification and regression trees (CART) in that it generates progressive levels of segmentation based on the significance of data. However, the significant drawback of CART is that CART assumes that the functional pairs already exist. The present invention can be applied to the circumstance where input-output pairs exist, but more importantly also applies in cases where the functional pairs are not defined as part of the data set. Also, the present invention has the benefit that it produces natural predictive segments of the input variables relative to the output variables.
In accordance with the present invention, a method and system is presented for recommending items of potential interest to users of a website, mobile application, or other application in which a user selects from a number of possible items. The recommendations are based on known information of the user, such as demographics, location, customer rewards, and past actions. The prediction of items of interest is based on comparing distributions of sample data, whereby one distribution of samples contains occurrences of the item of interest and the other distribution of samples does not contain occurrences of the item of interest. This invention is sometimes referred to in this patent by its commercial trademarked name, Resonance®.
An object of the invention is to provide a means of recommending objects to subjects based on demographic, geographic, behavioral or other characteristics of the subject.
Another object of die invention is to provide a means of recommending subjects to objects based on demographic, geographic, behavioral or other characteristics of the subject.
Another object of the invention is to automatically segment subjects according to their preference of certain items over other items based on sample transactions that contain and don't contain the item of interest.
Another object of the invention is to automatically provide variable segmentation commensurate with the predictive nature of the characteristics.
Another object of the invention is to be able to create predictive models from a variety of input characteristics, including continuous, binary, and enumerated characteristics.
Another object of the invention is to provide an efficient storage and runtime computation representation for the predictive segmentation models.
Another object of the invention is to provide an efficient single pass method for calculating segments during the training process.
Another object of the invention is to provide predictions even when certain model characteristics are not available for a given subject.
Another object of the invention is to combine attribute models of items of interest with other affinity models, such as based on browse behavior or individual ratings of items.
Another object of the invention is to filter recommended items from the attribute model with business rules.
Another object of the invention is to provide an interface to allow the business user who is setting up the system to assess the efficacy of the available input characteristics and to select which variables to use in the modeling and training process.
Another object of the invention is to create functional input-output pairs that can be used to train other models, such as linear regression, neural networks, or CART.
The present invention is a system and method for predicting subject responses to objects based on descriptive characteristics of the subject and the past responses of other subjects with matching characteristics. The process of matching subject segments to object response models produces a predicted response score that can be used to rank recommended content. The scores can be used as is or combined with other scoring models or business logic to render the final recommendation rank. The invention can be applied to a broad range of applications, including the retailing of single consumption items, such as non-recurring purchases or content views, where the previous purchase or view of an object cannot be used to predict additional purchases or views of the same object. The invention can also be used to predict subject responses to recurring purchases and to recommend new consumables.
The invention considers the interaction of subjects and objects. The subject is an active entity that initiates transactions. The subject consumes or experiences objects and provides feedback on the level of satisfaction with the object. The subject could be a single person or a corporate entity, such as a business. The object is a passive target of interaction by the subject. This could be a physical object, such as a consumer good, for example cars, MP3 player, or ice cream; media, such as music, movies, books, art, or plays; or even a person, as in the case of a job search or a matchmaking service. In the case of active entities, it is possible for the subject and object to reverse roles depending on the situation.
The invention provides a novel solution to the problem of how to identify objects, for example products, that will appeal to a particular subject, for example a person, where the large number of possible objects, including less desirable objects that are descriptively similar but aesthetically different or where some objects may appeal highly to a limited population of subjects while being undesirable to the broader population, makes it difficult for the subject to notice the objects that the subject wants simply by browsing the entire set of objects. This provides a breakthrough for target marketing and retail applications because it allows the consumer, solely by behavior, to “self-market” or “pull” those products which are of interest, rather than requiring that retailers “push” potentially unwanted products through advertising or other inefficient means.
The invention works by forming segments of subjects, for example consumers, and objects, such as goods or media, based on aesthetic evaluations of objects by subjects. The invention automatically generates segments based on the differential conversion of items within the segment relative to conversion of all items.
The invention also relates to the field of neural networks and optimization. Generally, neural networks take an input vector through a transfer function to produce an output. Neural network training methods are classified into supervised and unsupervised models. In supervised models the training method adapts the weights of the transfer function to minimize some function of the outputs, such as the mean squared error between the outputs produced by the transformation of the inputs and the expected outputs, which are known for a certain set of inputs commonly known as the training set. Once the weights have been trained, the network can be used to predict outputs for operational inputs. In unsupervised networks the data is clustered in some way that makes it useful for subsequent processing; however, the desired result, namely the closest matching template, is not known during training.
The proposed method is supervised insofar as the desired outputs are known as part of a training set; however, similar to unsupervised methods, the method is also self-organizing insofar as the inputs are not known; i.e., the method derives the input values using a known transfer function and known outputs.
Because of the large number of weights or adapted parameters of the system, which scales as the number of subjects and objects, a key aspect of the method is that the weights for each subject or object are decoupled from other subjects and objects when updated separately. This allows individual subjects and objects to be trained by different processing units, which allows the method to scale up to large numbers of subjects and objects, which may ultimately total millions or tens of millions or more.
A key improvement of the invention over predictive modeling systems is that it is able to synthesize the functional input output pairs that are required as a pre-condition for other modeling systems. This provides several advantages, including being able to create models from any type of sample data, support for any data type, working with correlated, input variables, not requiring expert knowledge or pre-analysis to identify variables or variable bins to create input output pairs.
A subject interacts with the user interface. The user interface makes a request to the recommendation system, which returns personalized content based on the context of the request, where the context of the request includes the identity of the subject, the specific type of system, such as desktop computer or mobile phone, the physical location of the subject, the specific page of the application being viewed, or any other known attributes that may be relevant to determining the interest or intent of the subject. In addition to requesting and displaying recommended content, the user interface submits information on the activity of the subject, including whether the subject completes a desired or targeted outcome, such as making a purchase, booking a hotel, completing a survey, accepting an offer, or any other conversion event for the site. The recommendation system stores all of the recommendation requests and subject outcomes, which are used to build subject profiles in accordance with the present invention.
In order to process an arbitrarily large number of visitors the web servers are multiplexed using a load balancer, which makes a collection of web servers appear to the Internet as a single server. Also, when a web server becomes unavailable or out of service for any reason, the load balancer automatically transfers traffic to another server. This provides a high level of fault tolerance for the system. In order to provide additional service availability the database and web servers can be replicated to other data centers, through geographic load balancing. Note that in this embodiment the service has been distributed over multiple servers. In an alternative embodiment all of the functions of the service could be put onto a single or smaller set of servers without a substantive change in the overall functionality of the service. This embodiment also supports multiple Service Customers making simultaneous requests to the web services by allocating different requests to different subsets of servers in the server farm and by creating a separate database for each Service Customer.
The content management module not only generates content for the website, it also feeds content information (metadata) to the catalog management module, which stores both information necessary to display content and descriptive attributes that may be applied to filter targeted content according to website-defined business rules or objectives. When a request is made to the recommendation engine for targeted content, the recommendation engine combines the subject profiles with the catalog metadata to find, the optimal content subject to any business rules, or other restrictions, put on the results.
The segmentation models return a score for each possible recommendable item, whereby the scores indicate the relative probabilities of the subject, transacting the items. The items' segmentation scores may be combined with the scores from other recommendation modules, such as based on behavioral affinity models, collaborative filters, or other alternative models. The items are ranked by their combined scores and then filtered according to any specified business rules, which may include rules for pricing, category matching, inventory, or other merchandising goals. Business rules may be based on any attributes of the context, including subject attributes and content metadata. Finally, the resulting recommendations are formatted for display, including images, descriptions, destination links, purchase information, and other display attributes.
The segmentation model returns a score for each possible available subject, whereby the scores indicate the relative probabilities of the subjects transacting the item. The subjects' segmentation scores may be combined with the scores from other recommendation modules, such as based on behavioral affinity models, collaborative filters, or other alternative models. The subject are ranked by their combined scores and then filtered according to any specified business rules, which may include rules for pricing, category matching, inventory, or other merchandising goals. Business rules may be based on any attributes of the context, including subject attributes and content metadata. Finally, the resulting subjects are targeted and presented with the item of interest through email, mobile text, advertisement, direct mail, or other targeted medium. The recommendations are formatted for display, including images, descriptions, destination links, purchase information, and other display attributes using the catalog metadata or other attribute repository.
The invention applies to the case where the model training data consists of samples where an item of interest is present in some samples and absent from others. More specifically, the invention considers two distributions against a set of segmentation attributes that are to be used as the input variables to a predictive model:
In this case the underlying functional relationship is the relative probability of a subject with attributes Z making a purchase of the specific item being model vs. purchasing any other item. This relationship can be quantified as
Y
j(Z)=Dj,present(Z)/Dj,absent(Z),
where Dj,present(Z) is the probability of a consumer with attributes Z will purchase the item of interest j, and Dj,absent(Z) is probability of a consumer with attributes Z making any other kind of purchase without the item of interest j. It is a key innovation of the invention, that it synthesizes the input output pairs (Z, Y), whereas other predictive modeling systems require that this data be already present as a necessary requirement for applying those systems.
For each segmentation attribute, analyze the distribution of samples as follows:
The above process is repeated for all dimensions and cells. To determine which dimension “wins,” only consider those dimensions for which the density factor is significant as defined above. If no dimension meets the significance criterion, then terminate the partitioning process. Otherwise, pick; the dimension for which the density factor significance R, as defined above, is highest. Split the cell and repeat the above process until there are no more significant partitions. Referring back to the example in
The partitioning process is efficient because the results of each step can be bookmarked and the densities only need to be recalculated for the two partitioned cells.
Once done with the partitioning, the functional pairs can be defined as
Y(Z)=(number of items in the bin)/(all items in the bin),
where Z is the center of the bin.
From an operational standpoint, the results can be stored and accessed directly using the partitioning table as a lookup table. Alternatively, an interpolating model can be built from the samples using any typical modeling technique, such as linear regression or neural networks.
The present invention can also be used to predict response even when some of the segmentation variables are not available to a certain request, such as because it requires the subject to provide the data and not every user complies or because data may come from different sources and not all sources may be able to provide all of the attributes used in the segmentation. The invention handles this case by traversing through the segments of a given item's models in the order that they were created (defined as the Partition Order in
Another aspect of the invention is that it optimizes the segments boundaries to the specific objectives of the model rather than simply reproducing the underlying density functions, which may or may not track the predictive nature of the attributes.
Another aspect of the invention is that it provides a linear training process vs. iterative processing for clustering and density estimation techniques.
Another aspect of the invention is that, it provides an efficient partitioning and recursively adds detail to the level supported by the statistics and selectivity of the data.
Another aspect of the invention is that it ignores missing inputs by falling back to previous cut points.
Another aspect of the invention is that it supports a simple runtime computation via a lookup table.
Another aspect of the invention is that it can be used as a front-end data generator for regression models.
Another aspect of the invention is that it doesn't require orthogonal (uncorrelated) variables.
Another aspect of the invention is that it naturally handles continuous, binary, and categorical data, whereas other modeling techniques just handle continuous variables.
Another aspect of the invention is that it can be applied even when data is sparse or abnormally distributed. Unlike other methods it only relies on the order of the data rather than the absolute positioning to estimate density functions.
The foregoing description of a preferred embodiment has been presented by way of example only, and should not be read in a limiting sense. The scope of the present invention is defined only by the following claims.
In the claims reference characters used to designate claim steps are provided for convenience of description only, and are not intended to imply a particular order for performing the steps.
Number | Date | Country | |
---|---|---|---|
61581700 | Dec 2011 | US |