| qua_uni_ln {noisemodel} | R Documentation |
Quadrant-based uniform label noise
Description
Introduction of Quadrant-based uniform label noise into a classification dataset.
Usage
## Default S3 method:
qua_uni_ln(x, y, level, att1 = 1, att2 = 2, sortid = TRUE, ...)
## S3 method for class 'formula'
qua_uni_ln(formula, data, ...)
Arguments
x |
a data frame of input attributes. |
y |
a factor vector with the output class of each sample. |
level |
a double vector with the noise levels in [0,1] in each quadrant. |
att1 |
an integer with the index of the first attribute forming the quadrants (default: 1). |
att2 |
an integer with the index of the second attribute forming the quadrants (default: 2). |
sortid |
a logical indicating if the indices must be sorted at the output (default: |
... |
other options to pass to the function. |
formula |
a formula with the output class and, at least, one input attribute. |
data |
a data frame in which to interpret the variables in the formula. |
Details
For each sample, the probability of flipping its label is based on which quadrant
(with respect to the attributes att1 and att2) the sample falls in.
The probability of mislabeling for each quadrant is expressed with the argument level,
whose length is equal to 4.
Let m1 and m2 be the mean values of the domain of att1 and att2, respectively.
Each quadrant is defined as follows: values <= m1
and <= m2 (first quadrant); values <= m1 and > m2 (second quadrant);
values > m1 and <= m2 (third quadrant); and values > m1
and > m2 (fourth quadrant). Finally, the labels of these samples are randomly
replaced by other different ones within the set of class labels.
Value
An object of class ndmodel with elements:
xnoise |
a data frame with the noisy input attributes. |
ynoise |
a factor vector with the noisy output class. |
numnoise |
an integer vector with the amount of noisy samples per class. |
idnoise |
an integer vector list with the indices of noisy samples. |
numclean |
an integer vector with the amount of clean samples per class. |
idclean |
an integer vector list with the indices of clean samples. |
distr |
an integer vector with the samples per class in the original data. |
model |
the full name of the noise introduction model used. |
param |
a list of the argument values. |
call |
the function call. |
Note
Noise model adapted from the papers in References.
References
A. Ghosh, N. Manwani, and P. S. Sastry. Making risk minimization tolerant to label noise. Neurocomputing, 160:93-107, 2015. doi:10.1016/j.neucom.2014.09.081.
See Also
exps_cuni_ln, print.ndmodel, summary.ndmodel, plot.ndmodel
Examples
# load the dataset
data(iris2D)
# usage of the default method
set.seed(9)
outdef <- qua_uni_ln(x = iris2D[,-ncol(iris2D)], y = iris2D[,ncol(iris2D)],
level = c(0.05, 0.15, 0.20, 0.4))
# show results
summary(outdef, showid = TRUE)
plot(outdef)
# usage of the method for class formula
set.seed(9)
outfrm <- qua_uni_ln(formula = Species ~ ., data = iris2D,
level = c(0.05, 0.15, 0.20, 0.4))
# check the match of noisy indices
identical(outdef$idnoise, outfrm$idnoise)