最近看了一些模糊神经网络。
模糊系统的核心其实就是一个方程
IF antecedent, THEN consequent.
就是所谓的Rule-based System。最开始提出模糊系统是为了模拟人的reasoning过程,并且由于定义了Rule,就可以结合领域内的专家知识。antecedent可以有很多,consequent也可以有很多,都可以是模糊集合或者实数。
神经网络或者说机器学习算法,都是从数据中去归纳(Induction)数据中存在的pattern或者不同特征间的关系。但是,模型不会保证最后学出来的pattern或者特征关系具有真实的物理意义。
所以就有人提出从数据中学习模糊系统的Rule. 就出现了Neuro-Fuzzy System, 也就是把模糊系统Encode成神经网络,用优化算法去学习或者调节模糊系统中的权重、membership function等等。
一般都是先通过Fuzzy layer,把数据转化为模糊集合,输出基本都是是membership。之后是rule layer,为了做Fuzzy Reasoning(T norm)之类的,就是类似取最小值的操作。最后是Consequent layer,不过本质上就是类似加权平均,如何结合不同的Rule的输出结果。这就是大致结构,会有各种变化Recurrent之类的。这只是比较常见的一种,还有一些网络用模糊权重代替实数权重。优点就是,不再受限于专家主观设定的参数,因为这些参数可以从data中学到,并且保留Fuzzy Rule-based的可解释性。
但是,当rule特别多的时候,可解释性就是发论文的噱头罢了。