1. A system for transforming a database of products, the system comprising: a first data storage medium storing a raw product database that describes a plurality of products, wherein the raw product database includes, for each of the plurality of products, attributes associated with the products, wherein each attribute has a value that includes a word; one or more processors; a second data storage medium bearing instructions that, when executed on the one or more processors, cause the one or more processors to process the raw product database to provide a standardized data structure that contains standardized values for the attributes of the products for improved analytics by performing the steps of: identify a dictionary comprising each word that appears as a value of at least one attribute of at least one product in the raw product database; partition the dictionary into synonym classes of words, each synonym class forming an equivalence class of mutually equivalent terms for a product attribute, wherein when one of the values appears in two or more synonym classes, the value is stored with a context for differentiating between the two or more synonym classes; select a representative word from each of the synonym classes, thereby associating each word in the dictionary with a corresponding representative word; identify a collection of replacement rules, each of which replaces a target word from one of the synonym classes with the corresponding representative word, wherein the replacement rules comprise global rules, multi-word phrase rules, attribute constant rules, and single-word replacement rules; and for each product in the raw product database, apply the replacement rules to one or more attributes of the product, thereby producing a standardized product database, wherein the global rules are applied before the multi-word phrase rules, the multi-word phrase rules are applied before the attribute constant rules, and the attribute constant rules are applied before the single-word replacement rules, wherein the replacement rules include at least one replacement rule for numerical values that is applied sequentially and repeatedly until a predetermined stopping condition is reached.