MyMediaLite  3.03
Public Member Functions | Properties
ItemRecommender Class Reference

Abstract item recommender class that loads the (positive-only implicit feedback) training data into memory and provides flexible access to it. More...

Inheritance diagram for ItemRecommender:
Recommender IRecommender BPRLinear IncrementalItemRecommender ItemAttributeSVM KNN MostPopularByAttributes MostPopularByNominalAttributes Random Zero

List of all members.

Public Member Functions

virtual bool CanPredict (int user_id, int item_id)
 Check whether a useful prediction (i.e. not using a fallback/default answer) can be made for a given user-item combination.
Object Clone ()
 create a shallow copy of the object
virtual void LoadModel (string file)
 Get the model parameters from a file.
abstract float Predict (int user_id, int item_id)
 Predict rating or score for a given user-item combination.
IList< Tuple< int, float > > Recommend (int user_id, int n=-1, ICollection< int > ignore_items=null, ICollection< int > candidate_items=null)
 Recommend items for a given user.
virtual
System.Collections.Generic.IList
< Tuple< int, float > > 
Recommend (int user_id, int n=-1, System.Collections.Generic.ICollection< int > ignore_items=null, System.Collections.Generic.ICollection< int > candidate_items=null)
virtual void SaveModel (string file)
 Save the model parameters to a file.
override string ToString ()
 Return a string representation of the recommender.
abstract void Train ()
 Learn the model parameters of the recommender from the training data.

Properties

virtual IPosOnlyFeedback Feedback [get, set]
 the feedback data to be used for training
int MaxItemID [get, set]
 Maximum item ID.
int MaxUserID [get, set]
 Maximum user ID.

Detailed Description

Abstract item recommender class that loads the (positive-only implicit feedback) training data into memory and provides flexible access to it.

The data is stored in two sparse matrices: one user-wise (in the rows) and one item-wise.

Positive-only means we only which items a user has accessed/liked, but not which items a user does not like. If there is not data for a specific item, we do not know whether the user has just not yet accessed the item, or whether they really dislike it.

See http://recsyswiki/wiki/Item_recommendation and http://recsyswiki/wiki/Implicit_feedback


Member Function Documentation

virtual bool CanPredict ( int  user_id,
int  item_id 
) [inline, virtual, inherited]

Check whether a useful prediction (i.e. not using a fallback/default answer) can be made for a given user-item combination.

It is up to the recommender implementor to decide when a prediction is useful, and to document it accordingly.

Parameters:
user_idthe user ID
item_idthe item ID
Returns:
true if a useful prediction can be made, false otherwise

Implements IRecommender.

Reimplemented in BiPolarSlopeOne, SlopeOne, Constant, GlobalAverage, UserAverage, ItemAverage, and Random.

Object Clone ( ) [inline, inherited]

create a shallow copy of the object

virtual void LoadModel ( string  filename) [inline, virtual, inherited]
abstract float Predict ( int  user_id,
int  item_id 
) [pure virtual, inherited]
IList<Tuple<int, float> > Recommend ( int  user_id,
int  n = -1,
ICollection< int >  ignore_items = null,
ICollection< int >  candidate_items = null 
) [inherited]

Recommend items for a given user.

Parameters:
user_idthe user ID
nthe number of items to recommend, -1 for as many as possible
ignore_itemscollection if items that should not be returned; if null, use empty collection
candidate_itemsthe candidate items to choose from; if null, use all items
Returns:
a sorted list of (item_id, score) tuples

Implemented in WeightedEnsemble, and Ensemble.

virtual void SaveModel ( string  filename) [inline, virtual, inherited]
override string ToString ( ) [inline, inherited]

Property Documentation

virtual IPosOnlyFeedback Feedback [get, set]

the feedback data to be used for training

int MaxItemID [get, set, inherited]

Maximum item ID.

int MaxUserID [get, set, inherited]

Maximum user ID.


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