1. A computer implemented method of profiling a user of a computing device connected to a network, the method comprising: receiving a user event comprising a content identifier for indicating web content requested by the user and a user identifier; when the content identifier is not present in a cached web map, sending the content identifier to a modeling system which performs a mapping function of a location associated with the content identifier and determines classification information of the content identifier, wherein the classification information is added to the cached web map; accessing the classification information from the cached web map, stored remotely from the user, using the content identifier of the user event, the cached web map associating a plurality of content identifiers each with respective classification information, the classification information associating a score with a text string defined in a lexical ontology comprising a hierarchy of categories, the score representing a strength of association of the respective text string to web content associated with the respective content identifier; accessing a user profile associated with the user identifier of the user event, the user profile associating one or more scores with one or more respective categories from the hierarchy of categories, each score of the user profile providing an indication of user preference for an associated category; and updating scores of the user profile based on the classification information associated with the content identifier by applying profiling rules generated from a plurality of user events of one or more users, the profiling rules being provided by the modeling system for modeling user behavior from the plurality of user events to predict user preferences, wherein the profiling rules are generated by: aggregating the plurality of user events; periodically modeling user behavior based on the aggregated plurality of user events independently of user identifiers of the aggregated plurality of user events; and receiving updated profiling rules in response to the modeled aggregated plurality of user events, the updated profiling rules used for updating scores of user profiles.