1. A computer implemented method of behavioral targeting comprising: receiving, at a computer, a plurality of granular events, wherein a granular event comprises an on-line activity between a user and an entity; preprocessing, using a computer, the received granular events to determine informational content of each granular event; generating, in a computer, preprocessed data comprising a plurality of input features by grouping the granular events into a plurality of clusters based on the informational content, wherein each cluster corresponds to a unique input feature from among the input features; and generating, in a computer, a predictive model based on a linear machine-learning model, the predictive model for determining, using the clusters and a linear combination of their corresponding input features, a likelihood of a predicted input action by a user.