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:
IRecommender BPRLinear IncrementalItemRecommender ItemAttributeSVM KNN Random Zero MF MostPopular ItemKNN UserKNN BPRMF WRMF ItemAttributeKNN WeightedItemKNN UserAttributeKNN WeightedUserKNN BPRMF_Mapping MultiCoreBPRMF SoftMarginRankingMF WeightedBPRMF BPRMF_ItemMapping BPRMF_UserMapping BPRMF_ItemMapping_Optimal BPRMF_ItemMappingKNN BPRMF_ItemMappingSVR BPRMF_UserMapping_Optimal

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
abstract void LoadModel (string filename)
 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.
abstract void SaveModel (string filename)
 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]

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_id the user ID
item_id the item ID
Returns:
true if a useful prediction can be made, false otherwise

Implements IRecommender.

Object Clone (  )  [inline]

create a shallow copy of the object

abstract void LoadModel ( string  filename  )  [pure virtual]

Get the model parameters from a file.

Parameters:
filename the name of the file to read from

Implements IRecommender.

Implemented in BPRLinear, BPRMF, ItemAttributeSVM, KNN, MF, MostPopular, Random, and Zero.

abstract float Predict ( int  user_id,
int  item_id 
) [pure virtual]

Predict rating or score for a given user-item combination.

Parameters:
user_id the user ID
item_id the item ID
Returns:
the predicted score/rating for the given user-item combination

Implements IRecommender.

Implemented in BPRMF_ItemMapping, BPRMF_UserMapping, BPRLinear, BPRMF, ItemAttributeSVM, ItemKNN, MF, MostPopular, Random, UserKNN, WeightedItemKNN, WeightedUserKNN, and Zero.

abstract void SaveModel ( string  filename  )  [pure virtual]

Save the model parameters to a file.

Parameters:
filename the name of the file to write to

Implements IRecommender.

Implemented in BPRLinear, BPRMF, ItemAttributeSVM, KNN, MF, MostPopular, Random, and Zero.

override string ToString (  )  [inline]

Return a string representation of the recommender.

The ToString() method of recommenders should list the class name and all hyperparameters, separated by space characters.

Implements IRecommender.

Reimplemented in BPRMF_ItemMapping, BPRMF_ItemMapping_Optimal, BPRMF_ItemMappingKNN, BPRMF_ItemMappingSVR, BPRMF_UserMapping, BPRMF_UserMapping_Optimal, BPRLinear, BPRMF, ItemAttributeKNN, ItemAttributeSVM, ItemKNN, MultiCoreBPRMF, SoftMarginRankingMF, UserAttributeKNN, UserKNN, WeightedBPRMF, WeightedItemKNN, WeightedUserKNN, and WRMF.


Property Documentation

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.


The documentation for this class was generated from the following file:
Generated on Thu Apr 5 01:11:34 2012 for MyMediaLite by  doxygen 1.6.3