PosOnlyFeedback< T > Class Template Reference

Data structure for implicit, positive-only user feedback. More...

Inheritance diagram for PosOnlyFeedback< T >:
DataSet IPosOnlyFeedback IDataSet IDataSet

List of all members.

Public Member Functions

void Add (int user_id, int item_id)
 Add a user-item event to the data structure.
void BuildItemIndices ()
 Build the item indices.
void BuildRandomIndex ()
 Build the random index.
void BuildUserIndices ()
 Build the user indices.
IBooleanMatrix GetItemMatrixCopy ()
 Get a copy of the item matrix.
IBooleanMatrix GetUserMatrixCopy ()
 Get a copy of the user matrix.
 PosOnlyFeedback ()
 Default constructor.
void Remove (int index)
 Remove the event with a given index.
void Remove (int user_id, int item_id)
 Remove a user-item event from the data structure.
override void RemoveItem (int item_id)
 Remove all feedback about a given item.
override void RemoveUser (int user_id)
 Remove all feedback by a given user.
IPosOnlyFeedback Transpose ()
 Get the transpose of the dataset (users and items exchanged).
bool TryGetIndex (int user_id, int item_id, out int index)

Protected Attributes

IList< IList< int > > by_item
 Rating indices organized by item.
IList< IList< int > > by_user
 Rating indices organized by user.

Properties

IList< int > AllItems [get]
 all item IDs in the dataset
IList< int > AllUsers [get]
 all user IDs in the dataset
IList< IList< int > > ByItem [get]
 indices by item
IList< IList< int > > ByUser [get]
 indices by user
int Count [get]
 the number of feedback events
virtual int Count [get]
IBooleanMatrix ItemMatrix [get]
 By-item access, items are stored in the rows, users in the columns.
IList< int > Items [get, set]
 the item entries
int MaxItemID [get, set]
 the maximum item ID in the dataset
double MaxRating [get, set]
int MaxUserID [get, set]
 the maximum user ID in the dataset
double MinRating [get, set]
IList< int > RandomIndex [get]
 get a randomly ordered list of all indices
IBooleanMatrix UserMatrix [get]
 By-user access, users are stored in the rows, items in the columns.
IList< int > Users [get, set]
 the user entries

Detailed Description

template<T>
class MyMediaLite::Data::PosOnlyFeedback< T >

Data structure for implicit, positive-only user feedback.

This data structure supports incremental updates if supported by the type parameter T.

Type Constraints
T :IBooleanMatrix 
T :new() 

Constructor & Destructor Documentation

PosOnlyFeedback (  )  [inline]

Default constructor.


Member Function Documentation

void Add ( int  user_id,
int  item_id 
) [inline]

Add a user-item event to the data structure.

Parameters:
user_id the user ID
item_id the item ID

Implements IPosOnlyFeedback.

void BuildItemIndices (  )  [inline, inherited]

Build the item indices.

Implements IDataSet.

void BuildRandomIndex (  )  [inline, inherited]

Build the random index.

Implements IDataSet.

void BuildUserIndices (  )  [inline, inherited]

Build the user indices.

Implements IDataSet.

IBooleanMatrix GetItemMatrixCopy (  )  [inline]

Get a copy of the item matrix.

Returns:
a copy of the item matrix

Implements IPosOnlyFeedback.

IBooleanMatrix GetUserMatrixCopy (  )  [inline]

Get a copy of the user matrix.

Returns:
a copy of the user matrix

Implements IPosOnlyFeedback.

void Remove ( int  index  )  [inline]

Remove the event with a given index.

Parameters:
index the index of the event to be removed
void Remove ( int  user_id,
int  item_id 
) [inline]

Remove a user-item event from the data structure.

If no event for the given user-item combination exists, nothing happens.

Parameters:
user_id the user ID
item_id the item ID

Implements IPosOnlyFeedback.

override void RemoveItem ( int  item_id  )  [inline, virtual]

Remove all feedback about a given item.

Parameters:
item_id the item ID

Implements DataSet.

override void RemoveUser ( int  user_id  )  [inline, virtual]

Remove all feedback by a given user.

Parameters:
user_id the user id

Implements DataSet.

IPosOnlyFeedback Transpose (  )  [inline]

Get the transpose of the dataset (users and items exchanged).

Returns:
the transpose of the dataset

Implements IPosOnlyFeedback.


Member Data Documentation

IList<IList<int> > by_item [protected, inherited]

Rating indices organized by item.

IList<IList<int> > by_user [protected, inherited]

Rating indices organized by user.


Property Documentation

IList<int> AllItems [get, inherited]

all item IDs in the dataset

Implements IDataSet.

IList<int> AllUsers [get, inherited]

all user IDs in the dataset

Implements IDataSet.

IList<IList<int> > ByItem [get, inherited]

indices by item

Should be implemented as a lazy data structure

Implements IDataSet.

IList<IList<int> > ByUser [get, inherited]

indices by user

Should be implemented as a lazy data structure

Implements IDataSet.

int Count [get, inherited]

the number of feedback events

IBooleanMatrix ItemMatrix [get]

By-item access, items are stored in the rows, users in the columns.

Implements IPosOnlyFeedback.

IList<int> Items [get, set, inherited]

the item entries

Implements IDataSet.

int MaxItemID [get, set, inherited]

the maximum item ID in the dataset

Implements IDataSet.

int MaxUserID [get, set, inherited]

the maximum user ID in the dataset

Implements IDataSet.

IList<int> RandomIndex [get, inherited]

get a randomly ordered list of all indices

Should be implemented as a lazy data structure

Implements IDataSet.

IBooleanMatrix UserMatrix [get]

By-user access, users are stored in the rows, items in the columns.

Implements IPosOnlyFeedback.

IList<int> Users [get, set, inherited]

the user entries

Implements IDataSet.


The documentation for this class was generated from the following file:
Generated on Sun Nov 13 20:32:47 2011 for MyMediaLite by  doxygen 1.6.3