An adaptive neuro-fuzzy inference system or adaptive network-based fuzzy inference system (ANFIS) is a kind of artificial neural network that is based on Takagi–Sugeno fuzzy inference system. The technique was developed in the early 1990s.[1][2] Since it integrates both neural networks and fuzzy logic principles, it has potential to capture the benefits of both in a single framework.
It is possible to identify two parts in the network structure, namely premise and consequence parts. In more details, the architecture is composed by five layers.
The first layer takes the input values and determines the membership functions belonging to them. It is commonly called fuzzification layer. The membership degrees of each function are computed by using the premise parameter set, namely {a,b,c}.
The second layer is responsible of generating the firing strengths for the rules. Due to its task, the second layer is denoted as "rule layer".
The role of the third layer is to normalize the computed firing strengths, by dividing each value for the total firing strength.
The fourth layer takes as input the normalized values and the consequence parameter set {p,q,r}.
The values returned by this layer are the defuzzificated ones and those values are passed to the last layer to return the final output.[8]
Fuzzification layer
The first layer of an ANFIS network describes the difference to a vanilla neural network. Neural networks in general are operating with a data pre-processing step, in which the features are converted into normalized values between 0 and 1. An ANFIS neural network doesn't need a sigmoid function, but it's doing the preprocessing step by converting numeric values into fuzzy values.[9]
Here is an example: Suppose, the network gets as input the distance between two points in the 2d space. The distance is measured in pixels and it can have values from 0 up to 500 pixels. Converting the numerical values into fuzzy numbers is done with the membership function which consists of semantic descriptions like near, middle and far.[10] Each possible linguistic value is given by an individual neuron. The neuron “near” fires with a value from 0 until 1, if the distance is located within the category "near". While the neuron “middle” fires, if the distance in that category. The input value “distance in pixels” is split into three different neurons for near, middle and far.
^Jang, J.-S.R. (1993). "ANFIS: adaptive-network-based fuzzy inference system". IEEE Transactions on Systems, Man, and Cybernetics. 23 (3): 665–685. doi:10.1109/21.256541. S2CID14345934.
^Abraham, A. (2005), "Adaptation of Fuzzy Inference System Using Neural Learning", in Nedjah, Nadia; de Macedo Mourelle, Luiza (eds.), Fuzzy Systems Engineering: Theory and Practice, Studies in Fuzziness and Soft Computing, vol. 181, Germany: Springer Verlag, pp. 53–83, CiteSeerX10.1.1.161.6135, doi:10.1007/11339366_3, ISBN978-3-540-25322-8
^Kamal, Mohasinina Binte; Mendis, Gihan J.; Wei, Jin (2018). "Intelligent Soft Computing-Based Security Control for Energy Management Architecture of Hybrid Emergency Power System for More-Electric Aircrafts [sic]". IEEE Journal of Selected Topics in Signal Processing. 12 (4): 806. Bibcode:2018ISTSP..12..806K. doi:10.1109/JSTSP.2018.2848624. S2CID51908378.
^Karaboga, Dervis; Kaya, Ebubekir (2018). "Adaptive network based fuzzy inference system (ANFIS) training approaches: a comprehensive survey". Artificial Intelligence Review. 52 (4): 2263–2293. doi:10.1007/s10462-017-9610-2. ISSN0269-2821. S2CID40548050.
^J.-S.R. Jang (1992). "Self-learning fuzzy controllers based on temporal backpropagation". IEEE Transactions on Neural Networks. 3 (5). Institute of Electrical and Electronics Engineers (IEEE): 714–723. doi:10.1109/72.159060. PMID18276470.