org.mymedialite.util
Class Recommender

java.lang.Object
  extended by org.mymedialite.util.Recommender

public class Recommender
extends java.lang.Object

Helper class with utility methods for handling recommenders. Contains methods for creating and configuring recommender objects, as well as listing recommender classes.


Nested Class Summary
static class Recommender.DefaultErrorHandler
           
static interface Recommender.ErrorHandler
           
 
Method Summary
static
<T> T
configure(T recommender, java.util.HashMap<java.lang.String,java.lang.String> parameters, Recommender.ErrorHandler errorHandler)
          Configure a recommender.
static
<T> T
configure(T recommender, java.lang.String parameters)
          Configure a recommender.
static
<T> T
configure(T recommender, java.lang.String parameters, Recommender.ErrorHandler errorHandler)
          Configure a recommender.
static ItemRecommender createItemRecommender(java.lang.String typename)
          Create an item recommender from the type name.
static RatingPredictor createRatingPredictor(java.lang.String typename)
          Create a rating predictor from the type name.
static java.lang.String needs(IRecommender recommender)
          Describes the kind of data needed by this recommender.
static void setProperty(IRecommender recommender, java.lang.String key, java.lang.String val)
          Sets a property of a MyMediaLite recommender.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

configure

public static <T> T configure(T recommender,
                              java.lang.String parameters,
                              Recommender.ErrorHandler errorHandler)
                   throws java.lang.IllegalAccessException
Configure a recommender.

Parameters:
recommender - the recommender to configure
parameters - a string containing the parameters as key-value pairs
errorHandler - interface for error reporting
Returns:
the configured recommender
Throws:
java.lang.IllegalAccessException

configure

public static <T> T configure(T recommender,
                              java.lang.String parameters)
                   throws java.lang.IllegalAccessException
Configure a recommender.

Parameters:
recommender - the recommender to configure
parameters - a string containing the parameters as key-value pairs
Throws:
java.lang.IllegalAccessException

configure

public static <T> T configure(T recommender,
                              java.util.HashMap<java.lang.String,java.lang.String> parameters,
                              Recommender.ErrorHandler errorHandler)
                   throws java.lang.IllegalAccessException
Configure a recommender.

Parameters:
recommender - the recommender to configure
parameters - a dictionary containing the parameters as key-value pairs
errorHandler - interface for error reporting
Returns:
the configured recommender
Throws:
java.lang.IllegalAccessException

setProperty

public static void setProperty(IRecommender recommender,
                               java.lang.String key,
                               java.lang.String val)
                        throws java.lang.IllegalAccessException
Sets a property of a MyMediaLite recommender.

Parameters:
recommender - An
key - the name of the property (case insensitive)
val - the string representation of the value
Throws:
java.lang.IllegalAccessException

createRatingPredictor

public static RatingPredictor createRatingPredictor(java.lang.String typename)
Create a rating predictor from the type name.

Parameters:
typename - a string containing the type name
Returns:
an item recommender object of type typename if the recommender type is found, null otherwise

createItemRecommender

public static ItemRecommender createItemRecommender(java.lang.String typename)
Create an item recommender from the type name.

Parameters:
typename - a string containing the type name
Returns:
an item recommender object of type typename if the recommender type is found, null otherwise

needs

public static java.lang.String needs(IRecommender recommender)
Describes the kind of data needed by this recommender.

Parameters:
recommender - a recommender
Returns:
a string containing the additional datafiles needed for training this recommender