It really depends on what you mean by "based on time", as it could mean many things. I'm assuming you mean that an item's seasonality should somehow boost its importance, and boost its perceived value, by some multiplier.
The useful application of that idea is in fact what you get in IDRescorer. I could imagine you also use that boost in similarity computations, though I don't think it would make much difference. IDRescorer is for filtering as well as boosting. No, it is not a tool for reordering per se, but altering scores, which of course could affect ordering. From what you say I think it really is what you want, or at least 80% of it. You can create a 'perfect item' but how then does the user come into play for recommendations -- what about that is affected by user prefs. On Sat, Mar 10, 2012 at 6:49 PM, Alex Geller <[email protected]> wrote: > By "time-based" I meant something that supports recommendation by time of > year (#2 on my list). > > IDRescorer looks interesting, but (correct me if I'm wrong, I'm a complete > newbie with Mahout and generally in this field) it seems more like a tool > to refine the order of recommended items after the initial recommendation > logic was applied. What I need is for the recommendation logic itself to be > based on time and user-item similarity (I probably won't have relevant > user-user information anyway). So, for example, I'm able to recommend > christmas-related items only a week before christmas, and not just give > them a boost using Rescorer. > > If that isn't possible I'm considering creating a virtual "perfect item" > from the data I have (time of year and user data) and running an > ItemBasedRecommender to find the items that most closely match this perfect > item. Do you think that would be a feasible solution? > > On Sat, Mar 10, 2012 at 6:25 PM, Sean Owen <[email protected]> wrote: > >> If by #3 you mean you have preferences for many users, this is of >> course the standard input for a recommender, yes. If you also have >> some user-user similarity info beyond that, you can implement >> UserSimliarity and use GenericUserBasedRecommender to incorporate >> that. >> >> If you want to boost items according to some logic, like time (#2), >> use IDRescorer. >> >> It sounds like you have a priori understanding of what items are best >> for what users (#1). That's not something you can use directly, but I >> suppose you could simply use this info as a multiplier (again with >> IDRescorer), or perhaps the basis of a separate set of recommendations >> you blend. >> >> What's a time-based recommender? >> >> >> On Sat, Mar 10, 2012 at 2:51 PM, Alex Geller <[email protected]> wrote: >> > Hi, >> > >> > I want to write a recommendation system which recommends items to >> customers >> > based on the following parameters (and some others): >> > >> > - User-item similarity (for example recommend items which target >> certain >> > gender,age etc. to users which meet these criteria) >> > - Time of year (recommend items with a holiday theme before a major >> > holiday) >> > - Preferences of similar users >> > >> > I know Mahout supports User-User and Item-Item similarity, but how can I >> > implement User-Item similarity? >> > Also, is there any support for time-based recommendations? >> > >> > >> > Thanks, >> > >> > Alex >>
