| mulc_udir_ln {noisemodel} | R Documentation | 
Multiple-class unidirectional label noise
Description
Introduction of Multiple-class unidirectional label noise into a classification dataset.
Usage
## Default S3 method:
mulc_udir_ln(x, y, level, goal, order = levels(y), sortid = TRUE, ...)
## S3 method for class 'formula'
mulc_udir_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 in [0,1] with the noise level to be introduced. | 
| goal | an integer vector with the indices of noisy classes for each class. | 
| order | a character vector indicating the order of the classes (default:  | 
| 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
Multiple-class unidirectional label noise introduction model randomly selects (levelยท100)% of the samples
of each class c with goal[c] != NA. Then, the labels c of these samples are replaced by the class indicated in 
goal[c]. The order of indices in goal is determined by
order.
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
Q. Wang, B. Han, T. Liu, G. Niu, J. Yang, and C. Gong. Tackling instance-dependent label noise via a universal probabilistic model. In Proc. 35th AAAI Conference on Artificial Intelligence, pages 10183-10191, 2021. url:https://ojs.aaai.org/index.php/AAAI/article/view/17221.
See Also
minp_uni_ln, print.ndmodel, summary.ndmodel, plot.ndmodel
Examples
# load the dataset
data(iris2D)
# usage of the default method
set.seed(9)
outdef <- mulc_udir_ln(x = iris2D[,-ncol(iris2D)], y = iris2D[,ncol(iris2D)], level = 0.1, 
                        goal = c(NA, 1, 2), order = c("virginica", "setosa", "versicolor"))
# show results
summary(outdef, showid = TRUE)
plot(outdef)
# usage of the method for class formula
set.seed(9)
outfrm <- mulc_udir_ln(formula = Species ~ ., data = iris2D, level = 0.1, 
                        goal = c(NA, 1, 2), order = c("virginica", "setosa", "versicolor"))
# check the match of noisy indices
identical(outdef$idnoise, outfrm$idnoise)