Rebuilding every day works very well in practice, but it captures a moving
average, not a good estimate of the current popularity of items.

A simple hack is to implement a search based recommender and simply put an
empirically scaled boost on items which are rising rapidly in popularity.
 Of course you should also have specialized pages that show popular items
and another that shows rapidly rising items.

The simplest approach to marking rapidly rising items that I know is to use
the log of recent plays over less plays, offsetting both counts in a manner
similar to Laplace correction.  The philosophy behind the score is that for
power law play counts, log play count is proportional to -log rank.  Then,
the thought is something that rises from 2000-th rank to 1000-th rank is
rising as significantly as something going from 100-th to 50-th.






On Sat, Sep 13, 2014 at 11:25 AM, Peter Wolf <[email protected]> wrote:

> Thanks Dmitriy,
>
> Is anyone working on an open source version of RLFM?
>
> For the moment, I have few enough classes of users that I can just build
> multiple recommenders.  For example, one for men and one for women.
>
> What about adaptive on-line algorithms?  Just like Agarwal's Yahoo research
> my items may rise and fall in popularity over time.  In fact, time may be
> more important than user preferences in my application.
>
> Do I just rebuild every day with a window of recent data, or does Mahout
> have something better?
>
> On Sat, Sep 13, 2014 at 12:26 PM, Dmitriy Lyubimov <[email protected]>
> wrote:
>
> > Afaik mahout doesnt have these algorthms. Agarwal's RLFM is one of the
> more
> > promising while sitll simple enough things to implement  at scale that
> does
> > that.
> > On Sep 13, 2014 9:07 AM, "Peter Wolf" <[email protected]> wrote:
> >
> > > Hello, I am new to Mahout but not ML in general
> > >
> > > I want to create a Recommender that combines things I know about Users
> > with
> > > their Ratings.
> > >
> > > For example, perhaps I know the sex, age and nationality of my users.
> > I'd
> > > like to use that information to improve the recommendations.
> > >
> > > How is this information represented in the Mahout API?  I have not been
> > > able to find any documentation or examples about this.
> > >
> > > Thanks
> > > Peter
> > >
> >
>

Reply via email to