This is exactly what Rescorer is for in the recommend() method. Does that
suit?
On Nov 15, 2011 11:37 AM, "Anatoliy Kats" <a.k...@rambler-co.ru> wrote:

> Hi all,
>
> I have a use case for Taste where we should use all available items for
> computation of user similarity, but only some items are eligible to be
> recommended.  The reason is that items expire:  goods get discontinued, for
> example.  The fact that a user bought something now discontinued is
> important for finding similar users, but we cannot recommend it.  One way
> of solving this is using mahout to generate recommendations, and then
> post-process it to remove ineligible items.  But this can run into
> performance issues if the set of ineligible items is large.  Also, the
> evaluation framework is not designed to handle this kind of a restriction.
>
> I can contribute a patch, but since I am new to the project, I need some
> help with the software engineering from the regular contributors.  How
> would I design the necessary classes?  One idea I considered was using the
> existing tools for candidate item strategy.  This has two downsides:  you
> can only use one candidate item strategy at a time, so having an eligible
> set would make it impossible to have a candidate item strategy.  Also, the
> evaluator doesn't take the candidate item strategy into account.  So, I
> suppose I could try writing an EligibleSetCandidateItemStrate**gy that
> takes another CandidateItemStrategy and applies it as well, and I can add a
> new evaluator that takes eligible sets into account.  I don't know the
> thinking behind the design, so I don't know if this is a good idea or not.
>  Can we agree on a design before I get started?
>
> Cheers,
>
> Anatoliy
>

Reply via email to