mahout-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Sean Owen <>
Subject Re: recommendations for new users
Date Wed, 04 Jul 2012 14:03:52 GMT
Have a look at the PlusAnonymousUserDataModel, which is a bit of a
hack but a decent sort of solution for this case. It lets you
temporarily add a user to the system and then everything else works as
normal, so you can make recommendations to these new / temp users.

There isn't a way to inject anything but rating/pref information
directly, no. You can use this info in a Rescorer to influence
recommendations; this is not specific to the case of a new user. You
can also decide to make "recommendations" by a completely different
means for new users -- for example, some canned list of top-10 recs
that is appropriate for their city or referring site. That's
legitimate too in practice.

Yes you can also find most-similar users based on this info. You'd
have to write the similarity metric yourself. I assume this is also
not the metric you use in your real recommender. So maybe you could
use it to find the nearest 1 real user and sub in those
recommendations? or a neighborhood. You would have to rewrite a bit of
what a recommender does to go this way but it's not so hard.

No there is no content-based similarity metric; this is so domain specific.

On Wed, Jul 4, 2012 at 4:54 PM, Matt Mitchell <> wrote:
> Hi,
> Slowly prototyping a recommendation here. The system does not have
> user accounts. Since the users on the system don't have accounts, I'm
> struggling a bit with completely new users, and what to recommend
> them. I do have information about the user, like what referring site
> they came from (1 of n partner sites), the city they want to shop in,
> and rating value of the product. I wonder if I could use this
> information, to find the most similar existing user. Then use that
> most similar user to generate recommendations? Anyone have tips for
> dealing this this?
> I'm not sure if Mahout supports finding most "similar user" based on
> user attributes, if not, this should be a simple sql/where-like select
> from the database.
> - Matt

View raw message