evaluate

0th

Percentile

Evaluate a Recommender Models

Evaluates a single or a list of recommender model given an evaluation scheme.

Usage
evaluate(x, method, ...)
"evaluate"(x, method, type="topNList", n=1:10, parameter=NULL, progress = TRUE, keepModel=FALSE) "evaluate"(x, method, type="topNList", n=1:10, parameter=NULL, progress = TRUE, keepModel=FALSE)
Arguments
x
an evaluation scheme (class "evaluationScheme").
method
a character string or a list. If a single character string is given it defines the recommender method used for evaluation. If several recommender methods need to be compared, method contains a nested list. Each element describes a recommender method and consists of a list with two elements: a character string named "method" containing the method and a list names "parameters" containing the parameters used for this recommender method. See Recommender for available methods.
type
evaluate "topNList" or "ratings"?
n
N (number of recommendations) of the top-N lists generated (only if type="topNList").
parameter
a list with parameters for the recommender algorithm (only used when method is a single method).
progress
logical; report progress?
keepModel
logical; store used recommender models?
...
further arguments.
Value

Returns an object of class "evaluationResults" or if method is a list an object of class "evaluationResultList".

See Also

evaluationScheme, evaluationResults. evaluationResultList.

Aliases
  • evaluate
  • evaluate,evaluationScheme,character-method
  • evaluate,evaluationScheme,list-method
Examples
### evaluate top-N list recommendations on a 0-1 data set
## Note: we sample only 100 users to make the example run faster
data("MSWeb")
MSWeb10 <- sample(MSWeb[rowCounts(MSWeb) >10,], 100)

## create an evaluation scheme (10-fold cross validation, given-3 scheme)
es <- evaluationScheme(MSWeb10, method="cross-validation",
        k=10, given=3)

## run evaluation
ev <- evaluate(es, "POPULAR", n=c(1,3,5,10))
ev

## look at the results (by the length of the topNList)
avg(ev)
plot(ev, annotate = TRUE)

## evaluate several algorithms with a list
algorithms <- list(
		RANDOM = list(name = "RANDOM", param = NULL),
		POPULAR = list(name = "POPULAR", param = NULL)
		)

evlist <- evaluate(es, algorithms, n=c(1,3,5,10))
plot(evlist, legend="topright")

## select the first results
evlist[[1]]

### Evaluate using a data set with real-valued ratings
## Note: we sample only 100 users to make the example run faster
data("Jester5k")
es <- evaluationScheme(Jester5k[1:100], method="cross-validation",
  k=10, given=10, goodRating=5)
## Note: goodRating is used to determine positive ratings

## predict top-N recommendation lists
## (results in TPR/FPR and precision/recall)
ev <- evaluate(es, "RANDOM", type="topNList", n=10)
avg(ev)

## predict missing ratings
## (results in RMSE, MSE and MAE)
ev <- evaluate(es, "RANDOM", type="ratings")
avg(ev)
Documentation reproduced from package recommenderlab, version 0.2-1, License: GPL-2

Community examples

Looks like there are no examples yet.