1. A method comprising: receiving a plurality of requests for access to a resource, each request having an associated group of features; analyzing the group of features for each request to collect observations about the plurality of requests; generating a function to predict an outcome of a subsequent request based on the observations; and allocating resources to service the subsequent request based on the function.