Skip to content
This repository has been archived by the owner on Mar 20, 2024. It is now read-only.

Develop Event abstraction #48

Closed
ghost opened this issue Sep 21, 2013 · 12 comments
Closed

Develop Event abstraction #48

ghost opened this issue Sep 21, 2013 · 12 comments
Milestone

Comments

@ghost
Copy link

ghost commented Sep 21, 2013

(originally reported in Trac by @elehack on 2011-04-05 14:44:19)

In order to support basket-based recommenders, we need the ability to present unary purchase or click data in the data source. In order to support this, we will introducing the concept of Events which are stored in the DAO.

  • Users have a sequence of Events associated with Items (non-item events may or may not be supported) - the user history or profile.
  • Ratings are events.
  • Recommenders often operate on summaries of the user's history - e.g. a rating vector extracted from the most recent rating of each rated item.
  • Events can be untimestamped (so if all you have is a rating matrix, it shows up as a set of ratings without timestamps). Untimestamped events are assumed to occur in the present.

The upshot of this is that we no longer need a hierarchy of DAO objects - we can just have DAO which provides users, items, and history queries. This also makes all data sources available uniformly - so more exotic recommenders can operate on combinations of purchases and ratings, for example. Subclasses can, of course, introduce additional information such as item metadata.

Note: This issue has been automatically migrated from Bitbucket
Created by grouplens on 2013-02-01T21:55:47.002449+00:00, last updated: 2013-02-01T22:35:41.165673+00:00

@ghost
Copy link
Author

ghost commented Sep 21, 2013

Michael Ekstrand ekstrand@cs.umn.edu on 2011-07-15 20:25:52 said:

In [d3a13596ca2a9e995f74e1197fef52916bcd5d78]:

Update the evaluation tools for events (refs #48)

* Update TrainTestPredictEvaluator to use the new event
* Add user history fromRatings method to UserRatingVector
* Update the CrossfoldSplit and Import tasks to use events
  * Extract code binding rating values to statement parameters into a helper method

Note: This comment has been automatically migrated from Bitbucket
Created by grouplens on 2013-02-01T21:55:51.212350+00:00, last updated: None

@ghost
Copy link
Author

ghost commented Sep 21, 2013

Michael Ekstrand ekstrand@cs.umn.edu on 2011-07-15 20:25:51 said:

In [b9cbfd068f0ff714c0dc39c3d4003c1fc4cfc77f]:

Introduce Events (refs #48)

* Introduce the Event hierarchy
* Introduce Preference
* Make rating snapshots operate on preferences
* Make rating snapshot packing logic iterate in timestamp order for simplicity
* Randomize rating snapshot ordering
* Rework and sanitize DAO for event-based data access

Note: This comment has been automatically migrated from Bitbucket
Created by grouplens on 2013-02-01T21:55:50.879260+00:00, last updated: None

@ghost
Copy link
Author

ghost commented Sep 21, 2013

ekstrand on 2011-07-15 18:41:42 said:

This is written and in review.

Note: This comment has been automatically migrated from Bitbucket
Created by grouplens on 2013-02-01T21:55:50.533469+00:00, last updated: None

@ghost
Copy link
Author

ghost commented Sep 21, 2013

Michael Ekstrand ekstrand@cs.umn.edu on 2011-07-14 15:45:59 said:

In [98892a010b793929006ede7ecb8e0341daffeec6]:

Move rating data to o.g.l.d.event package (refs #48)

Moves the rating data to the o.g.l.d.event package in preparation for creating the Event abstraction.

Note: This comment has been automatically migrated from Bitbucket
Created by grouplens on 2013-02-01T21:55:50.179022+00:00, last updated: None

@ghost
Copy link
Author

ghost commented Sep 21, 2013

ekstrand on 2011-07-01 16:16:27 said:

Deferring unfinished tickets.

Note: This comment has been automatically migrated from Bitbucket
Created by grouplens on 2013-02-01T21:55:49.848729+00:00, last updated: None

@ghost
Copy link
Author

ghost commented Sep 21, 2013

ekstrand on 2011-07-01 15:22:55 said:

This is changing a lot - we now want an Event abstraction (and have gotten rid of ScoredId).

Note: This comment has been automatically migrated from Bitbucket
Created by grouplens on 2013-02-01T21:55:49.438053+00:00, last updated: None

@ghost
Copy link
Author

ghost commented Sep 21, 2013

ekstrand on 2011-06-17 21:36:27 said:

Deferring to future release.

Note: This comment has been automatically migrated from Bitbucket
Created by grouplens on 2013-02-01T21:55:49.074924+00:00, last updated: None

@ghost
Copy link
Author

ghost commented Sep 21, 2013

ekstrand on 2011-06-15 21:46:57 said:

Evaluate this for 0.1, need the API solidified.

Note: This comment has been automatically migrated from Bitbucket
Created by grouplens on 2013-02-01T21:55:48.733251+00:00, last updated: None

@ghost
Copy link
Author

ghost commented Sep 21, 2013

ekstrand on 2011-07-15 20:47:59 said:

Now done.

Note: This comment has been automatically migrated from Bitbucket
Created by grouplens on 2013-02-01T21:55:48.396465+00:00, last updated: None

@ghost
Copy link
Author

ghost commented Sep 21, 2013

Michael Ekstrand ekstrand@cs.umn.edu on 2011-07-15 20:25:53 said:

In [936be4f70e051ac06adabb6c111abafbf9560ff6]:

Update SVD recommenders for events (refs #48)

Note: This comment has been automatically migrated from Bitbucket
Created by grouplens on 2013-02-01T21:55:48.033026+00:00, last updated: None

@ghost
Copy link
Author

ghost commented Sep 21, 2013

Michael Ekstrand ekstrand@cs.umn.edu on 2011-07-15 20:25:53 said:

In [214770fd7542cae20f157ef1e838fc28b531790c]:

Update the Slope-One recommenders for events (refs #48)

Note: This comment has been automatically migrated from Bitbucket
Created by grouplens on 2013-02-01T21:55:47.677229+00:00, last updated: None

@ghost
Copy link
Author

ghost commented Sep 21, 2013

Michael Ekstrand ekstrand@cs.umn.edu on 2011-07-15 20:25:52 said:

In [c692655e080de952c2f42ecc0f4fd4e2b9e25213]:

Update the kNN recommenders for events (refs #48)

Note: This comment has been automatically migrated from Bitbucket
Created by grouplens on 2013-02-01T21:55:47.325045+00:00, last updated: None

@ghost ghost closed this as completed Sep 21, 2013
This issue was closed.
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

0 participants