weightmatrix {wconf} | R Documentation |
Weight matrix
Description
This function compiles a weight matrix according to one of several weighting schemas and allows users to visualize the impact of the weight matrix on each element of the confusion matrix.
Usage
weightmatrix(n, weight.type = "arithmetic", weight.penalty = FALSE,
standard.deviation = 2,
geometric.multiplier = 2,
interval.high = 1, interval.low = -1,
sin.high = 1.5 * pi, sin.low = 0.5 * pi,
tanh.decay = 3,
custom.weights = NA,
plot.weights = FALSE)
Arguments
n |
the number of classes contained in the confusion matrix. |
weight.type |
the weighting schema to be used. Can be one of: "arithmetic" - a decreasing arithmetic progression weighting scheme, "geometric" - a decreasing geometric progression weighting scheme, "normal" - weights drawn from the right tail of a normal distribution, "interval" - weights contained on a user-defined interval, "sin" - a weighing scheme based on a sine function, "tanh" - a weighing scheme based on a hyperbolic tangent function, "custom" - custom weight vector defined by the user. |
weight.penalty |
determines whether the weights associated with non-diagonal elements generated by the "normal", "arithmetic" and "geometric" weight types are positive or negative values. By default, the value is set to FALSE, which means that generated weights will be positive values. |
standard.deviation |
standard deviation of the normal distribution, if the normal distribution weighting schema is used. |
geometric.multiplier |
the multiplier used to construct the geometric progression series, if the geometric progression weighting scheme is used. |
interval.high |
the upper bound of the weight interval, if the interval weighting scheme is used. |
interval.low |
the lower bound of the weight interval, if the interval weighting scheme is used. |
sin.high |
the upper segment of the sine function to be used in the weighting scheme. |
sin.low |
the lower segment of the sine function to be used in the weighting scheme. |
tanh.decay |
the decay factor of the hyperbolic tangent weighing function. Higher values increase the rate of decay and place less weight on observations farther away from the correctly predicted category. |
custom.weights |
the vector of custom weights to be applied, is the custom weighting scheme was selected. The vector should be equal to "n", but can be larger, with excess values being ignored. |
plot.weights |
optional setting to enable plotting of weight vector, corresponding to the first column of the weight matrix |
Details
The number of categories "n" should be greater or equal to 2.
Value
an nxn matrix, containing the weights to be multiplied with the confusion matrix.
Author(s)
Alexandru Monahov, <https://www.alexandrumonahov.eu.org/>
See Also
[wconfusionmatrix()]
Examples
weightmatrix(n=4, weight.type="arithmetic", plot.weights = TRUE)
weightmatrix(n=4, weight.type="normal", standard.deviation = 1,
plot.weights = TRUE)
weightmatrix(n=4, weight.type="interval", interval.high = 1,
interval.low = -0.5, plot.weights = TRUE)
weightmatrix(n=4, weight.type="geometric", geometric.multiplier = 0.6)
weightmatrix(n=10, weight.type="sin", sin.low = 0, sin.high = pi,
plot.weights = TRUE)
weightmatrix(n=10, weight.type="tanh", tanh.decay = 5, plot.weights = TRUE)
weightmatrix(n=4, weight.type="custom", custom.weights = c(1,0.2,0.1,0),
plot.weights = TRUE)