1. A computer implemented method of recommending products and services executed by one or more computer processors, comprising the digital processing steps of: providing an item recommendation for a subject user profile, where each item has a respective set of associated keywords, the item recommendation being provided by: processing the subject user profile to extract an initial set of keywords; comparing the initial set of extracted user profile keywords with co-occurring keywords identified in a stored data expansion model that is configured to provide the measured degree to which at least two keywords tend to occur together in a multitude of user profiles; expanding the initial set of extracted user profile keywords with additional related keywords, where the additional related keywords are determined using one or more of the identified co-occurring keywords from the expansion model that frequently appear together with the extracted user profile keywords in at least a portion of the multitude of user profiles, the expansion model being a vector space model; and determining an item recommendation by relating respective sets of item keywords with the expanded set of keywords and the initial set of extracted user profile keywords.
7. The computer implemented method as in claim 1 wherein the additional recommended keywords are determined using one or more of the identified co-occurring keywords from the data expansion model by using a term frequency—inverse document frequency (idf) weighting calculation to determine the value of the extracted keyword from the subject user profile as an indication of user interest.