# FIR.DM model building

### Description

This is the internal function that implements the fuzzy inference rules by descent method (FIR.DM).
It is used to solve regression tasks. Users do not need to call it directly,
but just use `frbs.learn`

and `predict`

.

### Usage

1 2 | ```
FIR.DM(data.train, num.labels, max.iter, step.size, type.tnorm = "MIN",
type.snorm = "MAX", type.implication.func = "ZADEH")
``` |

### Arguments

`data.train` |
a matrix ( |

`num.labels` |
a matrix ( |

`max.iter` |
the maximal number of iterations. |

`step.size` |
the step size of the descent method, between 0 and 1. |

`type.tnorm` |
the type of t-norm. For more detail, please have a look at |

`type.snorm` |
the type of s-norm. For more detail, please have a look at |

`type.implication.func` |
a value representing type of implication function. For more detail, please have a look at |

### Details

This method was proposed by H. Nomura, I. Hayashi, and N. Wakami. FIR.DM uses simplified fuzzy reasoning where the consequent part is a real number (a particular case within the Takagi Sugeno Kang model), while the membership function on the antecedent part is expressed by an isosceles triangle. So, in the learning phase, FIR.DM updates three parameters which are center and width of the triangular and a real number on the consequent part using a descent method.

### References

H. Nomura, I. Hayashi and N. Wakami, "A learning method of fuzzy inference rules by descent method", IEEE International Conference on Fuzzy Systems, pp. 203 - 210 (1992).

### See Also

`DM.update`

, `frbs.learn`

, and `predict`

.