MyMediaLite  3.11
Public Member Functions | Protected Member Functions | Protected Attributes | Properties | List of all members
TimedRatings Class Reference

Data structure for storing ratings with time information More...

Inheritance diagram for TimedRatings:
Ratings ITimedRatings DataSet IRatings IRatings ITimedDataSet IDataSet IDataSet IDataSet IDataSet TimedRatingsProxy

Public Member Functions

override void Add (int user_id, int item_id, float rating)
 Add float-valued rating to the collection More...
 
virtual void Add (int user_id, int item_id, float rating, DateTime time)
 add a rating event including time information More...
 
virtual void Add (int user_id, int item_id, byte rating)
 Add byte-valued rating to the collection More...
 
void Add (float item)
 
void Clear ()
 
bool Contains (float item)
 
void CopyTo (float[] array, int index)
 
virtual float Get (int user_id, int item_id, ICollection< int > indexes)
 Directly access rating by user and item More...
 
int GetIndex (int user_id, int item_id)
 Get index for a given user and item More...
 
int GetIndex (int user_id, int item_id, ICollection< int > indexes)
 Get index for given user and item More...
 
ISet< int > GetItems (IList< int > indices)
 Get all items that are referenced by a given list of indices More...
 
override void GetObjectData (SerializationInfo info, StreamingContext context)
 
ISet< int > GetUsers (IList< int > indices)
 Get all users that are referenced by a given list of indices More...
 
int IndexOf (float item)
 
virtual void InitScale ()
 Initialize the Scale property More...
 
void Insert (int index, float item)
 
bool Remove (float item)
 
virtual void RemoveAt (int index)
 
override void RemoveItem (int item_id)
 Remove all events related to a given item More...
 
override void RemoveUser (int user_id)
 Remove all events related to a given user More...
 
 TimedRatings ()
 Default constructor More...
 
 TimedRatings (SerializationInfo info, StreamingContext context)
 
virtual bool TryGet (int user_id, int item_id, out float rating)
 Try to retrieve a rating for a given user-item combination More...
 
virtual bool TryGet (int user_id, int item_id, ICollection< int > indexes, out float rating)
 Try to retrieve a rating for a given user-item combination More...
 
bool TryGetIndex (int user_id, int item_id, out int index)
 Try to get the index for given user and item More...
 
bool TryGetIndex (int user_id, int item_id, ICollection< int > indexes, out int index)
 Try to get the index for given user and item More...
 

Protected Member Functions

void UpdateCountsAndIndices (ISet< int > users, ISet< int > items)
 update user- and item-wise counts and indices More...
 

Protected Attributes

IList< IList< int > > by_item
 Indices organized by item More...
 
IList< IList< int > > by_user
 Indices organized by user More...
 
IList< int > count_by_item
 field for storing the count per item More...
 
IList< int > count_by_user
 field for storing the count per user More...
 
IList< float > Values
 

Properties

IList< int > AllItems [get]
 
IList< int > AllUsers [get]
 
float Average [get]
 
IList< IList< int > > ByItem [get]
 
IList< IList< int > > ByUser [get]
 
new int Count [get]
 
virtual int Count [get]
 
IList< int > CountByItem [get]
 
IList< int > CountByUser [get]
 
DateTime EarliestTime [get, protected set]
 
bool IsReadOnly [get]
 
IList< int > Items [get, protected set]
 
DateTime LatestTime [get, protected set]
 
int MaxItemID [get, protected set]
 
int MaxUserID [get, protected set]
 
IList< int > RandomIndex [get]
 
RatingScale Scale [get, protected set]
 
virtual float this[int index] [get, set]
 
virtual float this[int user_id, int item_id] [get]
 
IList< DateTime > Times [get, protected set]
 
IList< int > Users [get, protected set]
 

Detailed Description

Data structure for storing ratings with time information

This data structure supports incremental updates.

Loading the Netflix Prize data set (100,000,000 ratings) into this data structure requires about 3.2 GB of memory.

Constructor & Destructor Documentation

TimedRatings ( )
inline

Default constructor

Member Function Documentation

override void Add ( int  user_id,
int  item_id,
float  rating 
)
inlinevirtual

Add float-valued rating to the collection

Parameters
user_idthe user ID
item_idthe item ID
ratingthe rating

Reimplemented from Ratings.

virtual void Add ( int  user_id,
int  item_id,
float  rating,
DateTime  time 
)
inlinevirtual

add a rating event including time information

It is up to the user of a class implementing this interface to decide whether the DateTime object represent local time, UTC, or any other time.

Parameters
user_idthe user ID
item_idthe item ID
ratingthe rating value
timeA DateTime specifying the time of the rating event

Implements ITimedRatings.

virtual void Add ( int  user_id,
int  item_id,
byte  rating 
)
inlinevirtualinherited

Add byte-valued rating to the collection

Parameters
user_idthe user ID
item_idthe item ID
ratingthe rating

Implements IRatings.

Reimplemented in StaticByteRatings.

virtual float Get ( int  user_id,
int  item_id,
ICollection< int >  indexes 
)
inlinevirtualinherited

Directly access rating by user and item

Parameters
user_idthe user ID
item_idthe item ID
indexesthe indexes to look at
Returns
the first rating encountered that matches the user ID and item ID

Implements IRatings.

Reimplemented in StaticByteRatings.

int GetIndex ( int  user_id,
int  item_id 
)
inlineinherited

Get index for a given user and item

Parameters
user_idthe user ID
item_idthe item ID
Returns
the index of the first event encountered that matches the user ID and item ID

Implements IDataSet.

int GetIndex ( int  user_id,
int  item_id,
ICollection< int >  indexes 
)
inlineinherited

Get index for given user and item

Parameters
user_idthe user ID
item_idthe item ID
indexesthe indexes to look at
Returns
the index of the first event encountered that matches the user ID and item ID

Implements IDataSet.

ISet<int> GetItems ( IList< int >  indices)
inlineinherited

Get all items that are referenced by a given list of indices

Parameters
indicesthe indices to take into account
Returns
all items referenced by the list of indices

Implements IDataSet.

ISet<int> GetUsers ( IList< int >  indices)
inlineinherited

Get all users that are referenced by a given list of indices

Parameters
indicesthe indices to take into account
Returns
all users referenced by the list of indices

Implements IDataSet.

virtual void InitScale ( )
inlinevirtualinherited

Initialize the Scale property

Implements IRatings.

Reimplemented in StaticByteRatings.

override void RemoveItem ( int  item_id)
inlinevirtualinherited

Remove all events related to a given item

Parameters
item_idthe item ID

Implements DataSet.

Reimplemented in StaticRatings, and RatingsProxy.

override void RemoveUser ( int  user_id)
inlinevirtualinherited

Remove all events related to a given user

Parameters
user_idthe user ID

Implements DataSet.

Reimplemented in StaticRatings, and RatingsProxy.

virtual bool TryGet ( int  user_id,
int  item_id,
out float  rating 
)
inlinevirtualinherited

Try to retrieve a rating for a given user-item combination

Parameters
user_idthe user ID
item_idthe item ID
ratingwill contain the first rating encountered that matches the user ID and item ID
Returns
true if a rating was found for the user and item

Implements IRatings.

Reimplemented in StaticByteRatings.

virtual bool TryGet ( int  user_id,
int  item_id,
ICollection< int >  indexes,
out float  rating 
)
inlinevirtualinherited

Try to retrieve a rating for a given user-item combination

Parameters
user_idthe user ID
item_idthe item ID
indexesthe indexes to look at
ratingwill contain the first rating encountered that matches the user ID and item ID
Returns
true if a rating was found for the user and item

Implements IRatings.

Reimplemented in StaticByteRatings.

bool TryGetIndex ( int  user_id,
int  item_id,
out int  index 
)
inlineinherited

Try to get the index for given user and item

Parameters
user_idthe user ID
item_idthe item ID
indexwill contain the index of the first event encountered that matches the user ID and item ID
Returns
true if an index was found for the user and item

Implements IDataSet.

bool TryGetIndex ( int  user_id,
int  item_id,
ICollection< int >  indexes,
out int  index 
)
inlineinherited

Try to get the index for given user and item

Parameters
user_idthe user ID
item_idthe item ID
indexesthe indexes to look at
indexwill contain the index of the first event encountered that matches the user ID and item ID
Returns
true if an index was found for the user and item

Implements IDataSet.

void UpdateCountsAndIndices ( ISet< int >  users,
ISet< int >  items 
)
inlineprotectedinherited

update user- and item-wise counts and indices

Parameters
usersthe modified users
itemsthe modified itemsItems.

Member Data Documentation

IList<IList<int> > by_item
protectedinherited

Indices organized by item

IList<IList<int> > by_user
protectedinherited

Indices organized by user

IList<int> count_by_item
protectedinherited

field for storing the count per item

IList<int> count_by_user
protectedinherited

field for storing the count per user


The documentation for this class was generated from the following file: