Base class for item recommenders that support incremental updates. More...
Public Member Functions | |
virtual void | AddFeedback (int user_id, int item_id) |
Add a positive feedback event. | |
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 double | Predict (int user_id, int item_id) |
Predict rating or score for a given user-item combination. | |
virtual void | RemoveFeedback (int user_id, int item_id) |
Remove all feedback events by the given user-item combination. | |
virtual void | RemoveItem (int item_id) |
Remove all feedback by one item. | |
virtual void | RemoveUser (int user_id) |
Remove all feedback by one user. | |
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. | |
Protected Member Functions | |
virtual void | AddItem (int item_id) |
virtual void | AddUser (int user_id) |
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. |
Base class for item recommenders that support incremental updates.
virtual void AddFeedback | ( | int | user_id, | |
int | item_id | |||
) | [inline, virtual] |
Add a positive feedback event.
user_id | the user ID | |
item_id | the item ID |
Implements IIncrementalItemRecommender.
Reimplemented in BPRMF, and MostPopular.
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.
user_id | the user ID | |
item_id | the item ID |
Implements IRecommender.
Object Clone | ( | ) | [inline, inherited] |
create a shallow copy of the object
abstract void LoadModel | ( | string | filename | ) | [pure virtual, inherited] |
Get the model parameters from a file.
filename | the name of the file to read from |
Implements IRecommender.
Implemented in BPR_Linear, BPRMF, KNN, MF, MostPopular, Random, and Zero.
abstract double Predict | ( | int | user_id, | |
int | item_id | |||
) | [pure virtual, inherited] |
Predict rating or score for a given user-item combination.
user_id | the user ID | |
item_id | the item ID |
Implements IRecommender.
Implemented in BPR_Linear, BPRMF, ItemKNN, MF, MostPopular, Random, UserKNN, WeightedItemKNN, WeightedUserKNN, and Zero.
virtual void RemoveFeedback | ( | int | user_id, | |
int | item_id | |||
) | [inline, virtual] |
Remove all feedback events by the given user-item combination.
user_id | the user ID | |
item_id | the item ID |
Implements IIncrementalItemRecommender.
Reimplemented in BPRMF, and MostPopular.
virtual void RemoveItem | ( | int | item_id | ) | [inline, virtual] |
Remove all feedback by one item.
item_id | the item ID |
Implements IIncrementalItemRecommender.
Reimplemented in BPRMF, and MostPopular.
virtual void RemoveUser | ( | int | user_id | ) | [inline, virtual] |
Remove all feedback by one user.
user_id | the user ID |
Implements IIncrementalItemRecommender.
Reimplemented in BPRMF, and MostPopular.
abstract void SaveModel | ( | string | filename | ) | [pure virtual, inherited] |
Save the model parameters to a file.
filename | the name of the file to write to |
Implements IRecommender.
Implemented in BPR_Linear, BPRMF, KNN, MF, MostPopular, Random, and Zero.
override string ToString | ( | ) | [inline, inherited] |
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 BPR_Linear, BPRMF, ItemAttributeKNN, ItemKNN, UserAttributeKNN, UserKNN, WeightedItemKNN, WeightedUserKNN, and WRMF.
virtual IPosOnlyFeedback Feedback [get, set, inherited] |
the feedback data to be used for training
int MaxItemID [get, set, inherited] |
Maximum item ID.
int MaxUserID [get, set, inherited] |
Maximum user ID.