1. A method comprising: by a computing device, accessing a plurality of dynamic rules for a plurality of users, each of the dynamic rules being specific to one of the plurality of users, each of the dynamic rules being based on historical transactional data for the specific user corresponding to the dynamic rule; by a computing device, accessing factual user information for a user from the plurality of users; by a computing device, generating a static profile for the user based on the factual user information and the historical transactional data for the user; by a computing device, compressing the user dynamic rules into one or more aggregate rules; by a computing device, providing at least some of the aggregate rules to an entity for validation; by a computing device, receiving information identifying one or more of the provided aggregate rules as having been validated by the entity; by a computing device, generating a dynamic profile for the user based on a match between the dynamic rules specific to the user and the identified aggregate rules; and by a computing device, generating a user profile for the user based on the static profile and the dynamic profile.