In many ML problems we collect data and train models using the collected data. Using recommendation as an example, data collected could be biased for various reasons:

  1. presentation bias. For example, on web one may have pagination; for mobile one may need to scroll down to see items beyond a few.

  2. bias from existing recommendation system: usually data is collected on a running production recommendation system, this introduces bias. For example, due to personalization, a male consumer may have little chance to see female products, etc.

What are approaches to handle this when training a model?


In the world of Big data, the data is already there and there are more than enough ML models currently but constantly there are improvements and applications, the main reason for that is how the features are defined from the raw data.

In your case, introduce a new feature as penalty for the bias present in the data. For ex. in the presentation bias, high penalty is given to the top items and low penalty is given to the items farther down. similarly, introduce weight feature with less weight for men products when most of the products are male products and vice versa.

ML still needs human intuition in the form of features ;-)


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.