One nice way to do this to to mark the classes in question depreciated
for a few releases, and then remove them on an announced schedule. That
lets any end users know what is coming and gives them time to respond.
On 12/06/2012 10:21 AM, Sebastian Schelter wrote:
FunkSVD is a suboptimal duplicate of RatingSGDFactorizer,
ImplicitLinearRegressionFactorizer is a duplicate of ALSWR so I think we
should only keep one of each.
The other three recommenders seem to be used almost never, so I'd likean
announced
to remove them, however I wouldn't have a problem with keeping them for
any reason.
Best,
Sebastian
On 06.12.2012 16:14, Sean Owen wrote:
The tree-based ones are very old and not fast, and were more of an
experiment. I recall a few questions about them but it seemed like
people were really just trying to do clustering, and this is a bad way
to do clustering.
knn is old too, and in a sense spiritually quite similar to ALS. I
don't mind removing it either.
It would seal it if there were even a nominal argument that this
improves the rest of the code base -- less to maintain, removes
duplication, inconsistency, etc. I could imagine that argument here.
On Thu, Dec 6, 2012 at 3:06 PM, Sebastian Schelter <[email protected]> wrote:
Hi there,
I'm currently thinking whether we should do a little cleanup in the
non-distributed recommenders package and throw out recommenders that
have not been used/asked about on the mailinglist or that have been
replaced by a superior implementation.
If anyone reads this and sees a recommender, he/she wants to be kept,
please shout!
/s
Here's a list of suggested stuff to remove, let me know what you think:
org.apache.mahout.cf.taste.impl.recommender.svd.FunkSVDFactorizer
RatingSGDFactorizer should be learning faster and has a nicer model as
it includes user/item biases
org.apache.mahout.cf.taste.impl.recommender.svd.ImplicitLinearRegressionFactorizer
Seems to be using the same model as ALSWRFactorizer, however there are
no tests and ALSWR can handle more explicit and implicit feedback
org.apache.mahout.cf.taste.impl.recommender.TreeClusteringRecommender
org.apache.mahout.cf.taste.impl.recommender.TreeClusteringRecommender2
org.apache.mahout.cf.taste.impl.recommender.knn
I don't recall anybody using those or asking about them the last years.