12. One or more storage media, the one or more storage media being hardware, storing computer-readable instructions that when executed by one or more processors perform actions comprising: arranging a memory to store a factor graph specifying a bi-linear collaborative filtering model, wherein the factor graph is updated based on: one or more latent user traits, the latent user traits including one or more demographic traits; one or more latent item traits, the latent item traits including one or more product feature descriptions or service feature descriptions; and a determination of an inner product of at least one latent user trait and at least one latent item trait, the factor graph comprising a plurality of probability distributions representing belief about the one or more latent user traits and the one or more latent item traits-of the bi-linear collaborative filtering model; predicting the user behavior with respect to a plurality of different user and item pairs by arranging a first processor to apply an inference process to the factor graph; recommending, via an output, at least one of the plurality of items to the user based at least in part on the predicted user behavior; and updating a variance of the plurality of probability distributions based at least in part on actual user behavior.
12. One or more storage media, the one or more storage media being hardware, storing computer-readable instructions that when executed by one or more processors perform actions comprising: arranging a memory to store a factor graph specifying a bi-linear collaborative filtering model, wherein the factor graph is updated based on: one or more latent user traits, the latent user traits including one or more demographic traits; one or more latent item traits, the latent item traits including one or more product feature descriptions or service feature descriptions; and a determination of an inner product of at least one latent user trait and at least one latent item trait, the factor graph comprising a plurality of probability distributions representing belief about the one or more latent user traits and the one or more latent item traits-of the bi-linear collaborative filtering model; predicting the user behavior with respect to a plurality of different user and item pairs by arranging a first processor to apply an inference process to the factor graph; recommending, via an output, at least one of the plurality of items to the user based at least in part on the predicted user behavior; and updating a variance of the plurality of probability distributions based at least in part on actual user behavior. 13. One or more storage media as claimed in claim 12 , wherein the inference process comprises an assumed density filtering process.