IIncrementalRatingPredictor Interface Reference

Interface for rating predictors which support incremental training. More...

Inheritance diagram for IIncrementalRatingPredictor:
IRatingPredictor IRecommender IncrementalRatingPredictor Constant EntityAverage GlobalAverage KNN MatrixFactorization Random UserItemBaseline ItemAverage UserAverage ItemKNN UserKNN BiasedMatrixFactorization SVDPlusPlus ItemAttributeKNN ItemKNNCosine ItemKNNPearson UserAttributeKNN UserKNNCosine UserKNNPearson SigmoidItemAsymmetricFactorModel SocialMF SigmoidSVDPlusPlus

List of all members.

Public Member Functions

void AddRatings (IRatings ratings)
 Add new ratings and perform incremental training.
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.
void LoadModel (string filename)
 Get the model parameters from a file.
float Predict (int user_id, int item_id)
 Predict rating or score for a given user-item combination.
void RemoveItem (int item_id)
 Remove an item from the recommender model, and delete all ratings of this item.
void RemoveRatings (IDataSet ratings)
 Remove existing ratings and perform "incremental" training.
void RemoveUser (int user_id)
 Remove a user from the recommender model, and delete all their ratings.
void SaveModel (string filename)
 Save the model parameters to a file.
string ToString ()
 Return a string representation of the recommender.
void Train ()
 Learn the model parameters of the recommender from the training data.
void UpdateRatings (IRatings ratings)
 Update existing ratings and perform incremental training.

Properties

float MaxRating [get, set]
 Gets or sets the maximum rating.
float MinRating [get, set]
 Gets or sets the minimum rating.
bool UpdateItems [get, set]
 true if items shall be updated when doing incremental updates
bool UpdateUsers [get, set]
 true if users shall be updated when doing incremental updates

Detailed Description

Interface for rating predictors which support incremental training.

By incremental training we mean that after each update, the recommender does not perform a complete re-training using all data, but only a brief update procedure taking into account the update and only a subset of the existing training data.

This interface does not prevent you from doing a complete re-training when implementing a new class. This makes sense e.g. for simple average-based models.

This interface assumes that every user can rate every item only once.


Member Function Documentation

void AddRatings ( IRatings  ratings  ) 

Add new ratings and perform incremental training.

Parameters:
ratings the ratings

Implemented in GlobalAverage, IncrementalRatingPredictor, ItemAverage, ItemKNN, MatrixFactorization, UserAverage, UserItemBaseline, and UserKNN.

bool CanPredict ( int  user_id,
int  item_id 
) [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_id the user ID
item_id the item ID
Returns:
true if a useful prediction can be made, false otherwise

Implemented in Ensemble, ItemRecommender, BiPolarSlopeOne, Constant, GlobalAverage, ItemAverage, Random, RatingPredictor, SlopeOne, and UserAverage.

void LoadModel ( string  filename  )  [inherited]
float Predict ( int  user_id,
int  item_id 
) [inherited]
void RemoveItem ( int  item_id  ) 

Remove an item from the recommender model, and delete all ratings of this item.

It is up to the recommender implementor whether there should be model updates after this action, both options are valid.

Parameters:
item_id the ID of the user to be removed

Implemented in BiasedMatrixFactorization, IncrementalRatingPredictor, ItemAverage, and MatrixFactorization.

void RemoveRatings ( IDataSet  ratings  ) 

Remove existing ratings and perform "incremental" training.

Parameters:
ratings the user and item IDs of the ratings to be removed

Implemented in GlobalAverage, IncrementalRatingPredictor, ItemAverage, ItemKNN, MatrixFactorization, UserAverage, UserItemBaseline, and UserKNN.

void RemoveUser ( int  user_id  ) 

Remove a user from the recommender model, and delete all their ratings.

It is up to the recommender implementor whether there should be model updates after this action, both options are valid.

Parameters:
user_id the ID of the user to be removed

Implemented in BiasedMatrixFactorization, IncrementalRatingPredictor, MatrixFactorization, and UserAverage.

void SaveModel ( string  filename  )  [inherited]
string ToString (  )  [inherited]
void UpdateRatings ( IRatings  ratings  ) 

Update existing ratings and perform incremental training.

Parameters:
ratings the ratings

Implemented in GlobalAverage, IncrementalRatingPredictor, ItemAverage, ItemKNN, MatrixFactorization, UserAverage, UserItemBaseline, and UserKNN.


Property Documentation

float MaxRating [get, set, inherited]

Gets or sets the maximum rating.

The maximally possible rating

Implemented in RatingPredictor.

float MinRating [get, set, inherited]

Gets or sets the minimum rating.

The minimally possible rating

Implemented in RatingPredictor.

bool UpdateItems [get, set]

true if items shall be updated when doing incremental updates

Default should true. Set to false if you do not want any updates to the item model parameters when doing incremental updates.

Implemented in IncrementalRatingPredictor.

bool UpdateUsers [get, set]

true if users shall be updated when doing incremental updates

Default should be true. Set to false if you do not want any updates to the user model parameters when doing incremental updates.

Implemented in IncrementalRatingPredictor.


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