ANFIS optimiser

Share:

Description

To optimise the performance of a given ANFIS model by learning the parameters in L1 and L4.

Usage

1
2
3
anfis.optimise(anfis, data.trn, data.chk = NULL, epoch.total = 100,
  stepsize = 0.1, rate.inc = 1.1, rate.dec = 0.9, method = c("gradient",
  "lse"), err.log = F, online = 0, lambda = 1, opt.by = "err.opt")

Arguments

anfis

The given ANFIS model

data.trn

The input and output data pairs as training data

data.chk

The input and output data pairs as checking (validation) data

epoch.total

The total training epochs.

stepsize

The initial stepsize

rate.inc

increasing rate of the stepsize

rate.dec

decrasing rate of the stepsize

method

The learning algorithms for Layer 1 and Layer 4 respectively. default method=c("gradient", "lse")

err.log

T or F, the flag indicate whether to save the error log.

online

0 – batch; 1 – online; 2 – semi-online

lambda

The forgetting rate for the LSE algorithm

opt.by

To optimise the ANFIS model by: err.opt – optimisation error; err.trn – training error; err.chk – checking (validation) error.

Value

The optimised ANFIS model.

Author(s)

Chao Chen

References

An extended ANFIS architecture and its learning properties for type-1 and interval type-2 models http://eprints.nottingham.ac.uk/33465/

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
fis <- anfis.tipper()
anfis <- anfis.builder(fis)
data.num <- 5
input.num <- length(fis$input)
input.stack <- matrix(rnorm(data.num*input.num), ncol=input.num)
y <- matrix(rnorm(data.num))
data.trn <- cbind(input.stack, y)
anfis.eval(anfis, input.stack)
anfis.final <- anfis.optimise(anfis, data.trn, epoch.total=500,
                                 stepsize=0.01, rate.inc=1.1, rate.dec=0.9)

Want to suggest features or report bugs for rdrr.io? Use the GitHub issue tracker.