Hi,

* When I load a (File)DataModel and do NOT use a Rescorer, two first recommend 
call for a user is slow (cca 3 minutes for my dataset/hw combination).  The 
subsequent call for the same user is quick.  I'm wrapping the Recommender in 
CachingRecommender.

* I just wrote a no-op Rescorer.  When I include it in the recommend call, 
*every* call to recommend is equally slow (cca 3 min for me).  I imagine that's 
related to this comment in CachingRecommender:


  public List<RecommendedItem> recommend(Object userID, int howMany, 
Rescorer<Item> rescorer) throws TasteException {
    // Hmm, hard to recommendationCache this since the rescorer may change
    return recommender.recommend(userID, howMany, rescorer);
  }

I wonder if the CachingRecommender could store information about the Rescorer 
that was used for computing recommendations.  Then, when it sees that the 
Rescorer is the same, it could still use the cached recommendations.  What do 
you think?

Otis

Reply via email to