MyMediaLite  3.01
Public Member Functions | Properties
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 SigmoidCombinedAsymmetricFactorModel SigmoidItemAsymmetricFactorModel SigmoidUserAsymmetricFactorModel 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.
IRatings Ratings [get, set]
 the ratings to learn from
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:
ratingsthe ratings

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

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

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

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_idthe ID of the user to be removed

Implemented in BiasedMatrixFactorization, MatrixFactorization, IncrementalRatingPredictor, and ItemAverage.

void RemoveRatings ( IDataSet  ratings)

Remove existing ratings and perform "incremental" training.

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

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

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_idthe ID of the user to be removed

Implemented in BiasedMatrixFactorization, MatrixFactorization, IncrementalRatingPredictor, and UserAverage.

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

Update existing ratings and perform incremental training.

Parameters:
ratingsthe ratings

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


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.

IRatings Ratings [get, set, inherited]

the ratings to learn from

Implemented in KNN, FactorWiseMatrixFactorization, RatingPredictor, TimeAwareRatingPredictor, ItemKNN, and UserKNN.

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: