Just a quick a assumption, maybe I have not thought this through enough: 1. Users probably tend to compare products => similar VIEWS 2. User as well might tend to PURCHASE accessory products, like the laptop bag you mentioned
May be you could filter out products that have a similarity computed from the product views, but leave those similar, based on purchases, in your recommendation set? Nevertheless, I guess this will be strongly depending on the domain the data comes from. On Sep 5, 2013, at 10:07 AM, Nick Pentreath <[email protected]> wrote: > Hi all > > Say I have a set of ecommerce data (views, purchases etc). I've built my > model using implicit feedback ALS. Now, I want to add a little bit of > "smart filtering". > > Filtering based on not recommending something that has been purchased is > straightforward, but I'd like to also filter so as not to recommend "highly > similar" items to someone who has purchased an item. > > In other words, if someone has just purchased a laptop, then I'd like to > not recommend other laptops. Ideally while still recommending "related" > items such as laptop bags, mouse etc etc. (this is just an example). > > Now, I could filter based on metadata tags like "category", but assuming I > don't always have that data, then simplistically I have the option of > filtering out products based on those that have high cosine similarity to > the purchased products. However, this risks filtering out "good" similar > products (like the laptop bags) as well as the "bad" similar products. > > I'm experimenting with building a second variant of the model that > effectively downweights "views" to near zero, hence leaving something sort > of like a "purchased together" model variant. Then recommendations can be > made using this model when a user purchases an item (or perhaps a re-scorer > that is a weighted variant of model A and model B but that tends to weight > model B - the purchased together model - higher) > > Are there other mechanisms to tweak the ALS model such that it tends > towards recommending "related products" (but not "highly similar of the > exact same narrow product type")? > > Any other ideas about how best to go about this? > > Many thanks > Nick
