What is the best way to manage repetitveness of recommendations in a tensorflow recommender system?

In a recommender system, what is the best way to manage repetiveness of items being recommended?

This may come about, for example, if the user provides no additional input and so the same items are recommended. In some cases, re-recommended items are desirable to give the user more time to consider the item.

What is the best way to manage the trade off between items being under and over recommended in a tensorflow recommender system? Do you manage this in tensorflow itself or do you need a custom filter afterwards?

Hi @James_Hope ,

Here is my thought about under- and over-recommending in a tensorflow recommender system.

Regarding the tradeoff between under and over-recommending, there is no one-size-fits-all approach as it depends on the specific use case and user preferences. In some cases, re-recommending items may be desirable to give the user more time to consider the item, as you mentioned. In other cases, it may be more important to avoid over-recommending items to prevent user fatigue or annoyance. It is important to monitor user feedback and adjust the recommender system accordingly.

These techniques can be implemented in TensorFlow using custom loss functions, sampling strategies, or using libraries such as TensorFlow Recommenders. Whether a custom filter is needed afterwards depends on the specific use case and how well the techniques are able to manage repetitiveness.

Please let me know your opinion on the above thought.


  1. Use post-processing techniques to filter out items that are too similar to each other. This can be done by clustering similar items and selecting representative items from each cluster, or by applying a diversity score to the recommended items and removing those that fall below a certain threshold.

First of all, collect the explicit or implicit feedback from users regarding the recommended they receive. This feedback can be used to improve the recommender system and reduce repetitiveness. such as you can incorporate feedback signals like ratings, clicks, or dwell time to adapt the recommendation to individual prefrences.

there are many approaches to manage the recommendation trade off between under and over recommended item,and the best method depends on the specific application like personalization is the key and balancing recency and diversity…

There are a few ways to manage repetitiveness of items being recommended in a recommender system. One way is to use a diversity score. This score can be used to measure how similar two items are, and items with a high diversity score are less likely to be recommended together.
Another way to manage repetitiveness is to use a temporal decay function. This function can be used to decrease the score of items that have been recommended recently.
This helps to ensure that the recommender system does not keep recommending the same items over and over again.

Managing repetitiveness of recommended items is an important aspect of designing a recommender system to provide a diverse and engaging user experience. There are several strategies you can employ to balance between over-recommending and under-recommending items.These strategies can be implemented within the TensorFlow-based recommender system itself, and you might not necessarily need a custom filter afterward.

There are a few ways. One way is to use a weighted ranking algorithm, which assigns different weights to items based on how likely they are to be of interest to the user. Another way is to use a recency filter, which only recommends items that the user has not interacted with recently. In some cases,re-recommended items can be desirable to give the user more time to consider the item. The best way to manage the trade-off between items being under and over recommended depends on the specific application.