R: The fuzzy rough prototype selection method

IS.FRPS.FRST {RoughSets} | R Documentation

## The fuzzy rough prototype selection method

### Description

This is a function for implementing instance selection using prototype selection method (FRPS) proposed by (Verbiest et al, 2013).

### Usage

    IS.FRPS.FRST(decision.table, type.alpha = "FRPS.1")

### Arguments

`decision.table` | a `"DecisionTable"` class representing the decision table. See `SF.asDecisionTable`.
`type.alpha` | type of FRPS expressing the equations of α. The default value is `"FRPS.1"`. See Section `Details`.

### Details

This algorithm uses prototype selection (PS) to improve the accuracy of the k-nearest neighbour (kNN) method. It selects a subset of instances S \subseteq X and then classifies a new instance t using the kNN rule acting over S instead of over X. Based on fuzzy rough set theory, S is built. Basically, two steps are performed in the algorithm. First, the instances are ordered according to a measure called α which is based on fuzzy rough set theory that evaluates the lack of predictive ability of the instances, and the instances for which the values exceeds a certain threshold are removed from training set. To determine this threshold, we consider several equations which are applied on all instances. These equations are constructed by considering fuzzy positive region membership degree on several implication and t-norm operators. The following is the equations of α:

- `"FRPS.1"`: max_{y \notin [x]_{d}} \frac{1}{max_{i=1}^{m} δ_{a_i}(x,y)}

- `"FRPS.2"`: OW A_w ≤ft(\frac{1}{OW A_w δ_{a_i}(x,y)}\right)

- `"FRPS.3"`: max_{y \notin [x]_{d}} \frac{1}{\displaystyle∑\limits_{i=1}^m {δ_{a_i}(x,y)}}

- `"FRPS.4"`: OW A_w ≤ft(\frac{1}{\displaystyle∑\limits_{i=1}^m {δ_{a_i}(x,y)}}\right)

where [x]_d and OW A_w are equivalence class on the decision attribute and ordered weighted average operator, respectively. And δ_{a_i}(x,y) is a distance measure of the attribute a_i between x and y. After that, `1knn` will be performed in order to select and get prototype S which produces the highest training accuracy.

It should be noted that this function does not give the new decision table directly. The other additional function called `SF.applyDecTable` is used to produce new decision table based on the output of this function.

### Value

A class `"InstanceSelection"` that contains the following components:

- `indx.objects`: it contains all indexes of objects that are selected.

- `type.method`: a string representing a type of method. In this case, it is `"IS.FRPS"`.

- `type.task`: a string showing the type of task which is `"instance selection"`.

- `type.model`: a string representing the type of model which is `"FRST"`. It means fuzzy rough set theory.

### Author(s)

Lala Septem Riza

### References

N. Verbiest, C. Cornelis, and F. Herrera, "A Fuzzy Rough Prototype Selection Method", Pattern Recognition, Vol. 46, no. 10, p. 2770 - 2782 (2013).

### See Also

`IS.FRIS.FRST`

### Examples

    #############################################
    ## Example: Evaluate instances/objects and
    ## generate new decision table
    #############################################
    dt.ex1 <- data.frame(c(0.5, 0.2, 0.3, 0.7, 0.2, 0.2), c(0.1, 0.4, 0.2, 0.8, 0.4, 0.4),
                          c(0, 0, 0, 1, 1, 1))
    colnames(dt.ex1) <- c("a1", "a2", "d")
    decision.table <- SF.asDecisionTable(dataset = dt.ex1, decision.attr = 3, indx.nominal = c(3))

    ## evaluate instances
    res.1 <- IS.FRPS.FRST(decision.table, type.alpha = "FRPS.3")

    ## generate new decision table
    new.decTable <- SF.applyDecTable(decision.table, res.1)

[Package RoughSets version 1.3-7 Index]