MyMediaLite  3.11
Public Member Functions | Protected Attributes | Properties | List of all members
PosOnlyFeedback< T > Class Template Reference

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

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

Public Member Functions

void Add (int user_id, int item_id)
 Add a user-item event to the data structure 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...
 
IBooleanMatrix GetItemMatrixCopy ()
 Get a copy of the item matrix More...
 
ISet< int > GetItems (IList< int > indices)
 Get all items that are referenced by a given list of indices More...
 
virtual void GetObjectData (SerializationInfo info, StreamingContext context)
 
IBooleanMatrix GetUserMatrixCopy ()
 Get a copy of the user matrix More...
 
ISet< int > GetUsers (IList< int > indices)
 Get all users that are referenced by a given list of indices More...
 
 PosOnlyFeedback ()
 Default constructor More...
 
 PosOnlyFeedback (IDataSet dataset)
 
 PosOnlyFeedback (SerializationInfo info, StreamingContext context)
 
void Remove (int user_id, int item_id)
 Remove a user-item event from the data structure More...
 
void Remove (int index)
 Remove the event with a given index More...
 
override void RemoveItem (int item_id)
 Remove all feedback about a given item More...
 
override void RemoveUser (int user_id)
 Remove all feedback by a given user More...
 
IPosOnlyFeedback Transpose ()
 Get the transpose of the dataset (users and items exchanged) 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 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...
 

Properties

IList< int > AllItems [get]
 
IList< int > AllUsers [get]
 
IList< IList< int > > ByItem [get]
 
IList< IList< int > > ByUser [get]
 
virtual int Count [get]
 
IList< int > CountByItem [get]
 
IList< int > CountByUser [get]
 
IBooleanMatrix ItemMatrix [get]
 By-item access, items are stored in the rows, users in the columns More...
 
IList< int > Items [get, protected set]
 
int MaxItemID [get, protected set]
 
int MaxUserID [get, protected set]
 
IList< int > RandomIndex [get]
 
IBooleanMatrix UserMatrix [get]
 By-user access, users are stored in the rows, items in the columns More...
 
IList< int > Users [get, protected set]
 

Detailed Description

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_idthe user ID
item_idthe item ID

Implements IPosOnlyFeedback.

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.

IBooleanMatrix GetItemMatrixCopy ( )
inline

Get a copy of the item matrix

Returns
a copy of the item matrix

Implements IPosOnlyFeedback.

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.

IBooleanMatrix GetUserMatrixCopy ( )
inline

Get a copy of the user matrix

Returns
a copy of the user matrix

Implements IPosOnlyFeedback.

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.

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_idthe user ID
item_idthe item ID

Implements IPosOnlyFeedback.

void Remove ( int  index)
inline

Remove the event with a given index

Parameters
indexthe index of the event to be removed
override void RemoveItem ( int  item_id)
inlinevirtual

Remove all feedback about a given item

Parameters
item_idthe item ID

Implements DataSet.

override void RemoveUser ( int  user_id)
inlinevirtual

Remove all feedback by a given user

Parameters
user_idthe 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.

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.

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

Property Documentation

IBooleanMatrix ItemMatrix
get

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

IBooleanMatrix UserMatrix
get

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


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