MyMediaLite  3.11
Public Member Functions | Public Attributes | Protected Attributes | Properties | List of all members
WeightedEnsemble Class Reference

Combining several predictors with a weighted ensemble More...

Inheritance diagram for WeightedEnsemble:
Ensemble IRecommender

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 More...
 
Object Clone ()
 create a shallow copy of the object More...
 
override void LoadModel (string file)
 Get the model parameters from a file More...
 
override float Predict (int user_id, int item_id)
 Predict rating or score for a given user-item combination More...
 
override IList< Tuple< int, float > > Recommend (int user_id, int n=20, ICollection< int > ignore_items=null, ICollection< int > candidate_items=null)
 Recommend items for a given user More...
 
override void SaveModel (string file)
 Save the model parameters to a file More...
 
string ToString ()
 Return a string representation of the recommender More...
 
override void Train ()
 Learn the model parameters of the recommender from the training data More...
 

Public Attributes

IList< IRecommenderrecommenders = new List<IRecommender>()
 list of recommenders More...
 
IList< float > weights = new List<float>()
 List of component weights More...
 

Protected Attributes

double weight_sum
 Sum of the component weights More...
 

Properties

float MaxRating [get, set]
 The max rating value More...
 
float MinRating [get, set]
 The min rating value More...
 

Detailed Description

Combining several predictors with a weighted ensemble

This recommender does NOT support incremental updates.

Member Function Documentation

virtual bool CanPredict ( int  user_id,
int  item_id 
)
inlinevirtualinherited

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.

Object Clone ( )
inlineinherited

create a shallow copy of the object

override void LoadModel ( string  filename)
inlinevirtual

Get the model parameters from a file

Parameters
filenamethe name of the file to read from

Implements Ensemble.

override float Predict ( int  user_id,
int  item_id 
)
inlinevirtual

Predict rating or score for a given user-item combination

Parameters
user_idthe user ID
item_idthe item ID
Returns
the predicted score/rating for the given user-item combination

Implements Ensemble.

override IList<Tuple<int, float> > Recommend ( int  user_id,
int  n = 20,
ICollection< int >  ignore_items = null,
ICollection< int >  candidate_items = null 
)
inlinevirtual

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

Implements Ensemble.

override void SaveModel ( string  filename)
inlinevirtual

Save the model parameters to a file

Parameters
filenamethe name of the file to write to

Implements Ensemble.

string ToString ( )
inherited
override void Train ( )
inlinevirtual

Learn the model parameters of the recommender from the training data

Reimplemented from Ensemble.

Member Data Documentation

IList<IRecommender> recommenders = new List<IRecommender>()
inherited

list of recommenders

double weight_sum
protected

Sum of the component weights

IList<float> weights = new List<float>()

List of component weights

Property Documentation

float MaxRating
getsetinherited

The max rating value

The max rating value

float MinRating
getsetinherited

The min rating value

The min rating value


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