Sebastian,
Would it not be easier to just have SVDRecommender refresh the
DataModel first and then just make it recompute the factorization?
The problem is that when the DataModel is refreshed the userIDMapping
and itemIDMapping in the Factorizer also need to be refreshed and I
don't think this is currently possible (unless we take option 1)
Chris
On 29.03.2011 12:23, Chris Newell wrote:
AbstractFactorizer (in package
org.apache.mahout.cf.taste.impl.recommender.svd) does not currently
implement refreshable. This makes it difficult to implement refresh in
SVDRecommender (currently a "ToDo" which I'd like to fix).
There are two options I can see:
1) remember which Factorizer Class has been used in SVDRecommender and
create a new instance when you call refresh
2) make AbstractFactorizer implement Refreshable
I would prefer option 2 but this would require minor changes to one of
the existing sub-classes (ExpectationMaximizationSVDFactorizer - some
code would have to be moved from the constructor to the factorize
method).
Does anyone else have a preference or see a better option?
Chris
--
_______________________
*Chris Newell*
Lead Technologist
Audience Experience
*BBC R & D South Lab*
BBC Centre House
*Tel:* +44 (0)303 040 9747
*Fax:* +44 (0)208 811 8815
*Email:* [email protected]