自适应模糊神经网络ANFIS

最早关于自适应模糊神经网络推理系统( Adaptive Neuro Fuzzy Inference System,ANFIS)的文章应该是Jyh-Shing Roger Jang 于1993年发表的《ANFIS : Adaptive-Network-Based Fuzzy Inference System》这篇文章。当时对于处理模糊不确定系统,使用传统数学工具的系统建模并不能得到令人满意的效果。考虑采用模糊if-then规则的模糊推理系统不需要精确的定量分析就可以对人的知识和推理过程进行定性建模,作者提出了一种基于自适应网络的模糊推理系统。

ANFIS将模糊控制的模糊化、模糊推理和反模糊化3个基本过程全部用神经网络来实现,利用神经网络的学习机制自动地从输入输出样本数据中抽取规则,构成自适应神经模糊控制器。它的模型结构由自适应网络和模糊推理系统合并而成,在功能上继承了模糊推理系统的可解释性的特点以及自适应网络的学习能力,能够根据先验知识改变系统参数,使系统的输出更贴近真实的输出。

该系统运用神经网络的信息储存与自学习能力对多类自变量数据进行机器学习,并对模糊信息完成模糊推理功能,能够自动产生并更正输入与输出变量的隶属度函数,产生最优的模糊规则。ANFIS克服了单纯神经网络的黑匣子特性与模糊推理过程中推理规则的不全面性、粗糙性,比一般 BP 神经网络训练更快速,同时还具有模糊系统简洁、快速的特点。

介绍自适应模糊推理系统(ANFIS)模型前,先简单说一下模糊推理系统(FIS)以及自适应网络。

模糊推理系统(FIS)

FIS由五个功能模块组成:
1)包含若干模糊if-then规则的规则库;
2)定义关于使用模糊if-then规则的模糊集的隶属函数的数据库;
3)在规则上的执行推理操作的决策单元;
4)将明确输入转化为与语言价值匹配的程度的模糊界面;
5)将推理得到的模糊结果转化为明确输出的去模糊界面。
通常,1、2被联合称为知识库。FIS结构图如下:

自适应模糊神经网络ANFIS

自适应网络

自适应网络是一个由节点和连接节点的定向链路组成的多层前馈网络,其中每个节点对传入的信号以及与此节点相关的一组参数执行一个特定的功能(节点函数)。自适应网络的结构中包含有参数的方形节点和无参数的圆形节点,自适应网络的参数集是每个自适应节点的参数集的结合。他们的输出依赖于这些节点相关的参数,学习规则指定如何更改这些参数。
一种自适应网络结构如下图所示:

自适应模糊神经网络ANFIS

ANFIS模型结构

ANFIS的模型结构由自适应网络和模糊推理系统合并而成,在功能上继承了模糊推理系统的可解释性的特点以及自适应网络的学习能力,能够根据先验知识改变系统参数,使系统的输出更贴近真实的输出。一种ANFIS结构图如下:

自适应模糊神经网络ANFIS
ANFIS 模型计算主要采用 Takagi-Sugeno 模糊模型,假设该模型拥有 x,y 两个输入量与 z 一个输出量,形成 2 个 if-then 语言规则,公式为:

规则1:(\text { if } x=A_{1} \quad y=B_{1} \text {, then } f_{1}=p_{1} x+q_{1} y+r_{1})

规则2:(\text { if } x=A_{2} \quad y=B_{2} \text {, then } f_{2}=p_{2} x+q_{2} y+r_{2})

式中: (f_i) 为规则 i 所对应的输出结果; (A_1),(B_1)为规则 i 对应的非线性参数; (p_1),(q_1),(r_1) 为规则 1 的结论参数, (p_2),(q_2),(r_2) 为规则 2 的结论参数。 x,y 两个输入量形成的 ANFIS 模型计算结构如下图所示,共包含 5 层结构,前3层为规则前件,后2层为规则后件。每层结构功能及计算公式为:

第一层( 输入层) ,将输入变量模糊化,转换为不同模糊集的隶属度。公式为:

(Q_{i}^{1}=\mu A_{i}(x) \quad i=1,2)

(Q_{i}^{1}=\mu B_{i-2}(x) \quad i=3,4)

式中: i为节点; x,y 分别表示节点 i的输入变量; $\mu A_{i}(x) $ ,$\mu B_{i}(y) $为 x,y 输入变量的隶属函数; (Q_{i}^{1})为第一层 i节点对应的隶属度值。

第二层: 计算各模糊规则的触发强度,由不同模糊集的隶属度相乘所得。公式为:

(Q_{i}^{2}=w_{i}=\mu A_{i}(x) \times \mu B_{j}(y))

第三层: 将第二层所得的触发强度归一化,为 第 i 个规则在所有规则库中的触发比值,即在整个推理过程中使用到第 i 个规则的程度。计算公式为:

(Q_{i}^{3}=\bar{w}{i}=\frac{w{i}}{\left(w_{1}+w_{2}\right)})

第四层: 计算规则输出。公式为:

(Q_{i}^{4}=\bar{w}{i} f{i}=\bar{w}{i} (p{i} x+q_{i} y+r_{i}))

第五层: 去模糊化,得到确切的输出。计算公式为每条规则的结果加权平均(权重为规则的归一化触发程度,理解为计算期望),即:

(Q_{i}^{5}=\sum_{i} \bar{w}{i} f{i}=\frac{\sum_{i} w_{i} f_{i}}{\sum_{i} w_{i}})

Original: https://www.cnblogs.com/wkfvawl/p/16529220.html
Author: 王陸
Title: 自适应模糊神经网络ANFIS

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/553962/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • electron-vue 打包 Windows/Mac 上可以安装的软件以及修改软件名称软件版本号等

    2、模块问题可能会遇到的错误 解决方法: 1、删掉 node_modules 然后重新用 npm install 安装依赖 2、如果上面方法还是解决不了。可以通过安装 yarn 用…

    技术杂谈 2023年5月31日
    090
  • 势函数法

    https://www.cnblogs.com/huadongw/p/4106290.html 势函数主要用于确定分类面,其思想来源于物理。 1 势函数法基本思想 假设要划分属于两…

    技术杂谈 2023年5月31日
    0132
  • 高性能RPC框架gRPC竟恐怖如斯~

    大家好,我是不才陈某~ RPC、gRPC、Thrift、HTTP,大家知道它们之间的联系和区别么?这些都是面试常考的问题,今天带大家先搞懂 RPC 和 gRPC。 在讲述 gRPC…

    技术杂谈 2023年7月23日
    088
  • Ubuntu上Git的简单配置及使用(使用的代码托管平台为gitee码云)

    1、关于gitee 2、Ubuntu下Git的下载及配置 3、使用Git连接到远程的Gitee仓库 4、常用命令 1、关于gitee Gitee(码云) 是 OSCHINA.NET…

    技术杂谈 2023年7月24日
    099
  • 改Bug的经验

    如果修复某个Bug花了很长时间,这时候就要问问自己为什么,怎么做才吸取经验教训,在类似的问题上不再出问题,以及采用的方法,使用的工具是否还有改进的地方;当所有问题都解决之后,一定要…

    技术杂谈 2023年7月25日
    092
  • 企业架构如何实施的简介(TOGAF深度好文)

    本文来自企业架构学院: BangEA:如何实施企业架构? IT不仅是开展业务的手段,而且正在迅速演变为业务,IT绩效会直接影响企业的盈利能力,但很多企业并没有适时或充分的让IT组织…

    技术杂谈 2023年5月31日
    099
  • C#使用Google实现在线翻译

    本文部分参考了GitHub中wadereye的代码,在源代码基础上修改了部分针对tkk的筛选及使用逻辑。 由于谷歌的tkk值规则一直在变,且api的url也不是固定的,所以做了配置…

    技术杂谈 2023年5月30日
    0123
  • 袭击Mercurial SCM(HG)

    这个叫水银的源代码管理工具尽管默默无闻,但还是得到了非常多团队的使用。 为了迎合某些团队的须要,我们也要用它来管理我们的代码。 今天的任务是先袭击学习。磨刀不误砍柴工。 对工具的掌…

    技术杂谈 2023年5月31日
    0106
  • Teams 开发平台月报(2021-03)

    摘要 这个月的Teams 开发平台月报如期而至,这个月报会在每月中旬左右根据官方文档整理发布,并适当加上一些我的观察和见解,给大中华地区的合作伙伴或开发者朋友们参考。 本月到目前未…

    技术杂谈 2023年5月31日
    0123
  • MCU软件最佳实践——使用printf打印数据

    在mcu上开发应用时,使用串口打印调试信息是最常用的调试手段之一。printf是c标准库提供的函数,可以方便输出格式化的信息。但针对不同的mcu芯片,printf函数要能正常工作,…

    技术杂谈 2023年7月11日
    097
  • 机器学习(6)K近邻算法

    k-近邻,通过离你最近的来判断你的类别 例子: 定义:如果一个样本在特征空间中的k个最相似(即特征空间中最邻近的样本中大多数属于某一类别),则该样本属于这个类别 K近邻需要做标准化…

    技术杂谈 2023年7月23日
    071
  • Pthread并发编程(一)——深入剖析线程基本元素和状态

    Pthread 并发编程(一)——深入剖析线程基本元素和状态 前言 在本篇文章当中讲主要给大家介绍 pthread 并发编程当中关于线程的基础概念,并且深入剖析进程的相关属性和设置…

    技术杂谈 2023年7月24日
    082
  • 红黑树原理、查找效率、插入及变化规则分析

    引言 和2-3-4树的关系 红黑树 定义 红黑树的查找效率 红黑树的插入及变化规则 插入及变化规则 例子1 例子2 例子3 红黑树的插入及变化规则,对应在2-3-4树中是什么操作?…

    技术杂谈 2023年7月25日
    0109
  • JSON数据传输大法第一式——用OADate处理日期格式

    JSON作为一种轻量级的数据交换格式,通常采用完全独立于编程语言的文本格式来存储和表示数据。它的层次结构简洁清晰,易于人们的阅读和编写,此外机器编写和生成也会变得容易,可以有效地提…

    技术杂谈 2023年5月30日
    0132
  • 力扣刷题之路-数组的旋转、遍历

    参考刷题顺序:力扣刷题顺序 涉及题目 189 轮转数组 396 旋转函数 54. 螺旋矩阵 59. 螺旋矩阵 II 498. 对角线遍历 189 轮转数组 自己的想法: 类似于题目…

    技术杂谈 2023年7月11日
    0114
  • html提交表单到Servlet

    源码地址 https://github.com/YouXianMing/Java-Web-Study/tree/master/Servlet-Form 演示效果(注意post与ge…

    技术杂谈 2023年6月1日
    098
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球