dbr {utiml}R Documentation

Dependent Binary Relevance (DBR) for multi-label Classification

Description

Create a DBR classifier to predict multi-label data. This is a simple approach that enables the binary classifiers to discover existing label dependency by themselves. The idea of DBR is exactly the same used in BR+ (the training method is the same, excepted by the argument estimate.models that indicate if the estimated models must be created).

Usage

dbr(
  mdata,
  base.algorithm = getOption("utiml.base.algorithm", "SVM"),
  estimate.models = TRUE,
  ...,
  cores = getOption("utiml.cores", 1),
  seed = getOption("utiml.seed", NA)
)

Arguments

mdata

A mldr dataset used to train the binary models.

base.algorithm

A string with the name of the base algorithm. (Default: options("utiml.base.algorithm", "SVM"))

estimate.models

Logical value indicating whether is necessary build Binary Relevance classifier for estimate process. The default implementation use BR as estimators, however when other classifier is desirable then use the value FALSE to skip this process. (Default: TRUE).

...

Others arguments passed to the base algorithm for all subproblems.

cores

The number of cores to parallelize the training. Values higher than 1 require the parallel package. (Default: options("utiml.cores", 1))

seed

An optional integer used to set the seed. This is useful when the method is run in parallel. (Default: options("utiml.seed", NA))

Value

An object of class DBRmodel containing the set of fitted models, including:

labels

A vector with the label names.

estimation

The BR model to estimate the values for the labels. Only when the estimate.models = TRUE.

models

A list of final models named by the label names.

References

Montanes, E., Senge, R., Barranquero, J., Ramon Quevedo, J., Jose Del Coz, J., & Hullermeier, E. (2014). Dependent binary relevance models for multi-label classification. Pattern Recognition, 47(3), 1494-1508.

See Also

Recursive Dependent Binary Relevance

Other Transformation methods: brplus(), br(), cc(), clr(), ebr(), ecc(), eps(), esl(), homer(), lift(), lp(), mbr(), ns(), ppt(), prudent(), ps(), rakel(), rdbr(), rpc()

Examples

model <- dbr(toyml, "RANDOM")
pred <- predict(model, toyml)


# Use Random Forest as base algorithm and 2 cores
model <- dbr(toyml, 'RF', cores = 2)


[Package utiml version 0.1.7 Index]