智能系统复习
参考
考试题目:https://download.csdn.net/download/weixin_44573410/14895327
https://blog.csdn.net/weixin_45013646/article/details/122371937
第一章:智能系统
1.什么是智能系统
2.智能系统与传统经典系统的区别
自身特点:
不足:
3.发展历程
4. 优化算法和梯度下降法的区别
(全局优化,模糊算法)
先进控制策略
自组织、自适应、不依赖于被控对象的数学模型。
1. 什么是智能系统
智能系统是一类具有自主感知、决策和学习能力的复杂系统。
- 它能够利用数据或环境信息,模仿人类智能来完成特定任务。
- 通过学习、推理、预测和控制的手段,动态适应外部环境的变化。
典型应用:
- 智能控制(如自动驾驶)
- 机器人系统
- 模式识别(如人脸识别)
- 自然语言处理(如对话系统)
2. 智能系统与传统经典系统的区别
方面 | 智能系统 | 传统经典系统 |
---|---|---|
数学模型依赖 | 不依赖严格的数学模型,通过学习和优化处理复杂问题 | 强烈依赖精确数学模型的设计 |
适应性 | 能够根据环境变化调整自身参数,具有自组织、自适应能力 | 固定控制策略,缺乏灵活性 |
学习能力 | 可以从历史数据或当前环境中学习 | 无学习能力,完全依赖预定义规则 |
复杂性处理 | 适用于非线性、高维复杂问题 | 多用于线性或低复杂度问题 |
智能系统自身特点
- 自组织能力:能够在无人工干预的情况下根据输入数据自动调整结构和参数。
- 自适应性:适应环境变化和复杂动态过程。
- 不依赖数学模型:适合处理未知或复杂数学关系的问题。
智能系统的不足
- 泛化能力不足:在训练数据之外的环境中表现可能较差。
- 高计算复杂度:需要较大的计算资源进行学习和推理。
- 可解释性较低:决策过程难以直观理解,尤其在深度学习系统中。
3. 发展历程
-
20世纪50-70年代:
- 人工智能萌芽阶段:以规则和逻辑推理为基础,如专家系统。
- 代表性工作:图灵测试,逻辑演绎推理。
-
20世纪80年代:
- 神经网络兴起:以生物神经系统为灵感,提出感知器模型、BP算法等。
- 应用:初步解决简单的非线性问题。
-
20世纪90年代:
- 进化计算和模糊逻辑引入:如遗传算法(GA)、粒子群优化(PSO)、模糊控制等。
- 应用领域:优化控制、模式识别。
-
21世纪至今:
- 深度学习与强化学习兴起:深度神经网络(DNN)、强化学习(RL)在多领域取得突破。
- 代表成果:AlphaGo,ChatGPT等。
4. 优化算法和梯度下降法的区别
梯度下降法
- 核心思想:沿目标函数的负梯度方向寻找极小值。
- 特点:
- 局部优化:可能陷入局部最优解,尤其在非凸问题中。
- 计算高效:适合连续、可微函数的优化。
- 依赖初始值:初始点的选择对最终结果影响显著。
优化算法(如遗传算法)
- 核心思想:基于启发式搜索和进化理论,通过模拟自然选择和进化过程优化问题。
- 特点:
- 全局优化能力:适用于非凸、复杂、高维问题。
- 不依赖梯度信息:可处理非连续、不可微函数。
- 计算成本高:需要大量计算资源来评估个体适应性。
联系与区别
方面 | 梯度下降法 | 优化算法(遗传算法、模糊算法等) |
---|---|---|
目标函数 | 要求连续且可微 | 不要求连续,可处理非线性和非凸问题 |
优化类型 | 局部优化 | 全局优化 |
适应性 | 对复杂问题效果较差 | 擅长解决复杂、高维、多目标优化问题 |
计算效率 | 快速,适合低维问题 | 慢,但适合复杂环境 |
5. 先进控制策略
-
自组织控制
- 系统根据外部环境自动调整内部参数和控制策略,无需人为干预。
- 典型例子:自组织神经网络、自组织映射(SOM)。
-
自适应控制
- 根据被控对象或环境的动态变化,实时调整控制器参数。
- 适用场景:被控对象模型随时间变化的系统。
-
无模型控制
- 控制策略不依赖于被控对象的精确数学模型,而是通过经验规则或数据驱动的方式实现控制。
- 优势:适合复杂或未知模型的问题,如模糊控制和强化学习。
这些策略共同推动了智能系统在复杂动态场景中的广泛应用。
第二章:神经网络
神经网络:前向、递归
分类:结构、算法、功能、适用范围(优缺点)
人工智能网络(ANN):由大量简单的处理单元组成的非线性、自适应、自组织系统
单个神经元是一个多输入/单输出的系统
1.什么是神经网路,由什么组成(神经元),如何组成
前向神经网络(单层神经网络)如何组成:多个神经元并联组成
多层网络如何组成:多个单层神经网络级联组成
决定网络的特性:激活函数
单层
多层,激活函数如何分配,分配不好出现什么问题,如何解决:
问题:网络训练达不到目标
激活(转移)函数
作用:
1.控制输入对输出的激活作用
2.对输入、输出进行函数转换
3.对可能无限域的输入变换为指定的有限范围的输出
一个神经网络是线性或非线性是由网络神经元中所具有的激活函数的线性或非线性来决定的
S型激活函数具有非线性放大增益
神经网络概述
神经网络(Neural Network,简称NN)是一种模拟生物神经网络(如大脑神经元连接方式)构建的数学模型。它由大量简单的处理单元(神经元)组成,通过多层神经元的连接,能够完成诸如模式识别、分类、回归等任务。
定义:
神经网络是一种非线性、自适应、自组织的系统,能够通过学习数据中的规律,从而做出预测和决策。
1. 神经网络是什么,由什么组成,如何组成
神经网络的基本单元:神经元
神经元是神经网络中的最小计算单元,通常具有如下结构:
- 输入:神经元接收来自其他神经元或外部数据的输入信号。
- 加权和:神经元对输入信号进行加权,并加上一个偏置项(bias)。
- 激活函数:加权和通过激活函数进行处理,输出结果作为该神经元的输出。
神经元的数学模型:
假设一个神经元接收多个输入信号 ( x_1, x_2, …, x_n ),其输出为 ( y ),则神经元的输出可以表示为:
[
y = f\left(\sum_{i=1}^{n} w_i x_i + b \right)
]
其中:
- ( w_i ) 是输入 ( x_i ) 的权重,决定了输入信号的相对重要性。
- ( b ) 是偏置项,用来调整输出。
- ( f(\cdot) ) 是激活函数。
前向神经网络(单层神经网络)如何组成
前向神经网络(Feedforward Neural Network,简称FNN)是神经网络中最基本的形式,由输入层、隐藏层和输出层组成。
- 输入层:接收外部输入数据。
- 隐藏层:一个或多个隐藏层对输入数据进行处理,计算隐藏特征。
- 输出层:根据隐藏层的计算结果,给出最终的输出。
单层神经网络组成:
单层神经网络即只有一个隐藏层的神经网络。此类网络由多个神经元并联组成,每个神经元接受输入数据并进行处理。
- 输入层:直接连接到输出层。
- 输出层:根据输入数据的加权和进行激活,输出结果。
示意图:
[
\text{输入层} \longrightarrow \text{隐藏层} \longrightarrow \text{输出层}
]
多层神经网络如何组成
多层神经网络(Multilayer Neural Network,简称MLP)是由多个单层神经网络级联而成的。其结构具有多个隐藏层,能更好地捕捉数据的复杂模式。
- 多层结构:多个隐藏层每层神经元通过加权和和激活函数处理输入信号,从而逐渐提取数据中的高级特征。
- 层次结构:输入层、多个隐藏层、输出层。
- 网络深度:通过增加隐藏层的数量,可以提高网络对复杂问题的处理能力。
示意图:
[
\text{输入层} \longrightarrow \text{隐藏层1} \longrightarrow \text{隐藏层2} \longrightarrow \text{输出层}
]
激活(转移)函数
作用:
- 控制输入对输出的激活作用:激活函数将神经元的输入信号映射到输出。它可以决定神经元是否被激活(即输出是否为正值)。
- 对输入、输出进行函数转换:激活函数对输入进行转换,从而使得网络的输出可以更好地适应训练数据。
- 将可能无限域的输入变换为指定的有限范围的输出:许多神经网络的输入和输出值是无界的,激活函数将其限制在一个合理的范围内。
常见的激活函数:
-
线性激活函数:输出为输入的线性函数。
( f(x) = x )
适用于一些简单的回归任务,但不足以处理复杂的非线性问题。 -
Sigmoid函数(S型激活函数):
f ( x ) = 1 1 + e − x f(x) = \frac{1}{1 + e^{-x}} f(x)=1+e−x1
输出范围是 ( (0, 1) ),适合于二分类任务,能够处理非线性问题。 -
Tanh函数(双曲正切函数):
f ( x ) = tanh ( x ) = e x − e − x e x + e − x f(x) = \tanh(x) = \frac{e^{x} - e^{-x}}{e^{x} + e^{-x}} f(x)=tanh(x)=ex+e−xex−e−x
输出范围是 ( (-1, 1) ),适合于很多应用,尤其是隐藏层中,解决了Sigmoid函数的梯度消失问题。 -
ReLU(Rectified Linear Unit)函数:
( f(x) = \max(0, x) )
输出范围是 ( [0, \infty) ),是当前最常用的激活函数之一,尤其在深度网络中,能够有效避免梯度消失问题。 -
Leaky ReLU:
( f(x) = \max(\alpha x, x) )
其中 ( \alpha ) 是一个很小的常数,通常用来解决ReLU中的“死神经元”问题。
激活函数的非线性特性:
神经网络的非线性能力主要来自于激活函数。没有非线性的激活函数,神经网络即使是多层结构,也相当于一个线性网络,无法表达复杂的函数关系。因此,S型激活函数(如Sigmoid)具有非线性放大增益,可以使得神经网络捕捉到输入数据中的复杂非线性模式。
问题:网络训练达不到目标的原因:
- 激活函数选择不当:如果选择了不适合的激活函数,网络可能无法有效训练或收敛。
- 例如,Sigmoid激活函数在较大或较小的输入值时,梯度会非常小,导致梯度消失问题。
- 网络结构不合适:层数过少,无法学习到复杂的特征;层数过多,则可能导致过拟合。
如何解决:
- 选择合适的激活函数:在深度网络中,使用ReLU等激活函数可以有效解决梯度消失问题。
- 调整网络结构:增加网络层数、使用批标准化(Batch Normalization)等技术,提高模型的表达能力。
- 使用适当的优化算法:如Adam、RMSprop等,它们能够较好地处理非凸优化问题,提高训练效率。
总结
神经网络的性能和复杂性通常由以下因素决定:
- 网络结构:单层或多层结构决定了神经网络的表达能力。
- 激活函数:激活函数的选择直接影响网络的非线性特性,影响模型的训练和收敛情况。
- 训练算法:优化算法(如梯度下降法)和合适的损失函数,确保网络能够在合适的时间内收敛并获得最优解。
神经网络是一个强大的工具,通过不同的结构和激活函数配置,能够处理各种类型的机器学习问题。
常用类型:
对应到torch中
sigmod (对数型) tanh(双曲正切) ReLu/Leaky ReLu (线性激活)
前面两者的输出不能取两端的值
盘点那些常用的激活函数
2.感知器网络
感知器:具有连续可调权值矢量的MP神经网络模型
学习规则是用来计算新的权值矩阵W及新的偏差B的算法
感知机的局限性:
- 由于感知器的激活函数采用的是阀值函数,输出矢量只能取0或1,所以只能用它来解决简单的分类问题;
- 感知器仅能够线性地将输入矢量进行分类;
- 感知器还有另外一个问题,当输入矢量中有一个数比其他数都大或小得很多时,可能导致较慢的收敛速度。
2.2自适应线性元件(Adline)
感知机和自适应线性元件的区别:
单层、激活函数不同:
感:阈值型(0.1),
Δ
\Delta
Δ 法 与误差、网络输入成正比
自:W-H算法,按数学上的二阶求导,与误差、网络输入成正比
功能:
感:分类(缺点:只能线性分类,优:对任意输入进行0,1线性分类)
自:输入到输出的线性映射,逼近。结构上线性,输出等于加权输入和对正负无穷输入转变为正负无穷输出。功能–》按函数使输入对输出线性逼近
感知机与自适应线性元件(Adaline)的区别
1. 网络结构与激活函数
-
感知机(Perceptron):
- 激活函数:感知机使用阈值型激活函数,即当输入加权和超过某一阈值时,输出为1,否则输出为0。
- 训练方法:通常使用感知机学习法,根据误差对权重进行调整,更新规则与输入和误差的关系成正比。即:
[
\Delta w = \eta \cdot (t - y) \cdot x
]
其中,( t ) 为目标输出,( y ) 为实际输出,( \eta ) 为学习率,( x ) 为输入向量。
-
自适应线性元件(Adaline):
- 激活函数:Adaline使用线性激活函数,即输出是加权输入的线性组合。对于任意输入,Adaline都可以进行线性映射。
- 训练方法:Adaline使用最小均方误差法(MSE)进行训练,通常采用梯度下降法来最小化误差,即通过最小化误差平方和来调整权重,训练过程中涉及到的是加权输入和误差的二阶求导。
更新规则为:
[
\Delta w = \eta \cdot (t - y) \cdot x
]
这里,( t ) 为目标输出,( y ) 为线性输出,( x ) 为输入向量,( \eta ) 为学习率。
2. 功能与应用
-
感知机:
- 功能:感知机的主要功能是分类,尤其是线性可分问题的分类。感知机能够对输入进行0和1的二分类输出,但仅限于线性分类。换句话说,感知机只能处理线性可分的任务,对于线性不可分的问题,感知机会出现误分类。
- 优点:对任意输入能够做出0、1的线性分类。
-
自适应线性元件(Adaline):
- 功能:Adaline的功能是逼近线性函数,即通过加权输入的线性组合逼近目标输出。它在数学上是通过最小化误差的平方和来学习输入和输出之间的关系。Adaline处理的是回归问题,可以进行线性映射。
- 优点:可以处理更广泛的线性逼近问题,适用于回归任务,能够根据数据进行优化。
- 缺点:虽然处理的是线性问题,但不像感知机那样仅仅局限于二分类,Adaline可以解决连续输出的回归问题。
3. 训练过程与算法差异
-
感知机的训练算法:
- 使用简单的阈值激活函数,采用逐步修正的Perceptron学习法,根据误差调整权重,使得网络输出更接近期望值。
- 权重更新规则简单,适合解决线性可分的分类问题。
-
Adaline的训练算法:
- 使用均方误差法(MSE)进行训练,采用梯度下降法来优化网络的权重,使得输出尽可能接近期望值。
- 权重更新涉及二阶求导,能够更精确地优化网络参数,适用于回归问题。
4. 总结对比:
特性 | 感知机(Perceptron) | 自适应线性元件(Adaline) |
---|---|---|
激活函数 | 阈值型(0或1) | 线性(连续输出) |
训练方法 | 感知机学习法(误差与输入成正比) | 最小均方误差法(误差平方和最小化,梯度下降) |
功能 | 二分类问题,适用于线性可分问题 | 线性回归问题,逼近目标输出 |
输出类型 | 0或1(线性分类) | 连续值(线性映射) |
训练目标 | 分类任务,解决线性可分问题 | 逼近函数,解决回归问题 |
优点 | 适用于线性分类问题,结构简单 | 适用于回归问题,优化过程平滑,收敛性更好 |
缺点 | 无法处理线性不可分问题 | 仅适用于线性问题,无法处理非线性关系 |
总结:
- 感知机适用于分类任务,尤其是线性可分的二分类问题,利用简单的阈值型激活函数和感知机学习法进行训练。
- **自适应线性元件(Adaline)**适用于回归问题,采用线性激活函数,并通过梯度下降法最小化均方误差,具有更好的收敛性能和逼近能力。
两者的主要区别在于激活函数的不同和训练算法的不同,感知机主要用于分类问题,而Adaline更适合解决回归问题。
2.2.2 W-H学习规则及其网络的训练
自组织竞争网络
(网络结构、算法、训练方式、过程、分类结果)
单层:等于误差
多层:误差x 该层激活函数一阶导数
2.3 反向传播网络 BP算法
BP网络功能:
1)函数逼近:用输入矢量和相应的输出矢量训练一个网络逼近一个函数;
2)模式识别:用一个特定的输出矢量将它与输入矢量联系起来;
3)分类:把输入矢量以所定义的合适方式进行分类;
4)数据压缩:减少输出矢量维数以便于传输或存储
BP网络的设计
- 网络的层数
- 隐含层的神经元数
- 初始权值的选取
- 学习速率
- 期望误差的选取
BP网络的限制与不足
1)需要较长的训练时间(需要小的学习速率)
2)
完全不能训练(激活函数一阶导数为0)
3)局部极小值(误差为多极值函数)
BP网络:非线性函数逼近
加一个隐含层意味着什么?(优缺点)
隐含层激活函数和神经元节点数需要设置:
输入层、输出层结点数由外部特性决定
隐含层结点数量取多少合适:
过多–》 过拟合
过少–》精度不够 (模糊神经网络(-1,0,1))
自组织竞争网络
网络结构
- 单层结构:
- 由输入层和竞争层组成,竞争层中的每个神经元相互竞争,最终仅有一个神经元被激活(“胜者为王”机制)。
- 输入层通过权值连接到竞争层。
- 特点:
- 不需要样本标签。
- 权值通过自组织竞争调整。
算法
- 竞争机制基于“欧氏距离最小”原则:
- 输入矢量与竞争层神经元的权值向量之间的欧氏距离越小,该神经元的响应越强。
- 选择响应最强的神经元作为“胜者”。
- 胜者神经元的权值调整公式:
w i ( t + 1 ) = w i ( t ) + η ⋅ ( x − w i ( t ) ) w_i(t+1) = w_i(t) + \eta \cdot (x - w_i(t)) wi(t+1)=wi(t)+η⋅(x−wi(t))
其中:- ( w_i ) 是竞争层神经元的权值;
- ( x ) 是输入;
- ( \eta ) 是学习率。
训练方式与过程
- 权值初始化:
- 通常随机初始化竞争层神经元的权值向量。
- 输入样本训练:
- 对每个输入样本计算其与竞争层神经元的欧氏距离,选择最近的神经元作为胜者。
- 权值更新:
- 调整胜者神经元的权值,朝输入矢量方向靠近,同时允许邻近神经元权值也受到一定调整(若使用邻域函数)。
- 迭代训练:
- 反复迭代直到权值收敛或达到设定的终止条件。
分类结果
- 训练完成后,竞争层神经元的权值分布于输入空间,代表数据的类别中心。
- 输入新样本时,通过计算与各神经元权值的距离,将其分类到最近的神经元类别。
反向传播(BP)网络
BP网络功能
- 函数逼近:
- 通过输入与输出数据对网络进行训练,使其能逼近输入与输出间的非线性关系。
- 模式识别:
- 将输入与对应的目标输出匹配,实现模式分类和识别。
- 分类:
- 按定义的输出方式对输入数据进行分类。
- 数据压缩:
- 通过减少输出的维度,实现信息的有效传递或存储。
BP网络的设计
- 网络层数:
- 通常为三层(输入层、隐含层、输出层)。
- 隐含层的增加可以提高模型的非线性表达能力,但也增加了复杂性。
- 隐含层神经元数:
- 需要平衡:神经元数过多容易过拟合,过少导致模型表达能力不足。
- 初始权值的选取:
- 应避免初始权值过大或过小,以减少训练时间并防止陷入局部极小值。
- 学习速率:
- 速率太大会导致不收敛,太小则训练时间过长。
- 期望误差:
- 设置合理的误差阈值,防止过度训练导致的过拟合。
BP网络的限制与不足
- 训练时间长:
- 小学习率常被用来提高训练稳定性,但这也延长了训练时间。
- 完全不能训练:
- 如果激活函数的一阶导数为0,权值无法更新。
- 局部极小值:
- BP网络误差函数为多极值函数,容易陷入局部极小值。
加一个隐含层的意义
- 优点:
- 增加了模型的非线性表达能力,使得网络可以逼近任意复杂的非线性函数。
- 适合处理更复杂的任务(如模式识别和分类)。
- 缺点:
- 增加了计算复杂性和训练难度。
- 对隐含层激活函数和节点数的选择敏感,不合理的设置可能导致过拟合或欠拟合。
隐含层设计
- 激活函数:
- 常用Sigmoid、ReLU等非线性激活函数。
- 应确保激活函数的非线性特性,同时避免饱和区域导致的梯度消失问题。
- 节点数的选择:
- 过多:网络复杂度高,可能导致过拟合。
- 过少:网络表达能力不足,精度下降。
- 合理的节点数可通过经验公式、交叉验证或网格搜索确定。
总结
自组织竞争网络:
- 主要用于无监督学习,自动对输入样本进行分类。
- 结构简单,依赖权值更新规则实现分类。
BP网络:
- 主要用于监督学习,可实现函数逼近、分类、模式识别等。
- 隐含层设计是关键,需平衡复杂性与表达能力。
隐含层的激活函数和节点数对BP网络的性能至关重要,合理设置可有效提高网络的泛化能力和训练效果。
径向基函数网络 RBF 网络
RBF神经网络即径向基函数网络(Radial Bisis Function Network),是一种使用径
向基函数作为激活函数的人工神经网络
(功能、结构、算法)
径向基函数网络 (RBF 神经网络)
功能:
RBF神经网络是一种基于径向基函数(Radial Basis Function, RBF)作为激活函数的前馈神经网络。它主要用于模式分类、函数逼近、数据拟合、回归分析等任务。RBF神经网络在多维空间中能够学习数据的局部特征,特别适合用于高维度的模式识别和逼近任务。
RBF网络的功能包括:
- 模式分类:根据输入的特征将数据分为不同的类别。
- 函数逼近:用于逼近输入输出之间的复杂非线性关系。
- 回归分析:预测连续的输出值。
- 特征映射:将输入空间映射到高维空间进行更有效的学习。
结构:
RBF神经网络的结构通常由三层组成:
-
输入层:直接传递输入信号到网络的下一层。每个输入神经元对应一个特征输入。
-
隐含层(RBF层):
- 该层包含若干个RBF神经元,每个神经元对应一个径向基函数。常见的径向基函数有高斯函数(Gaussian Function)、多项式函数等。
- 每个隐含层神经元的输出是输入与该神经元中心的距离的一个非线性函数,通常是:
ϕ ( x ) = exp ( − ∣ x − c ∣ 2 2 σ 2 ) \phi(x) = \exp\left(-\frac{|x - c|^2}{2\sigma^2}\right) ϕ(x)=exp(−2σ2∣x−c∣2)
其中,( x ) 是输入向量,( c ) 是隐含层神经元的中心,( \sigma ) 是高斯函数的宽度(也称为“宽度”或“方差”)。 - 隐含层的神经元通过基函数与输入特征之间的距离进行相似度度量,从而决定每个神经元的响应。
-
输出层:
- 该层通常是一个线性层,用来输出最终的预测结果。输出是隐含层神经元输出的加权和。
- 输出层的形式为:
[
y = \sum_{i=1}^n w_i \phi_i(x)
]
其中,( w_i ) 是输出层的权重,( \phi_i(x) ) 是隐含层神经元的输出。
算法:
RBF网络的训练过程包括以下几个步骤:
-
中心选择:
- K-means聚类:首先通过K-means聚类算法从输入数据中选取若干个数据点作为隐含层神经元的中心。选定的中心点用于定义每个隐含层神经元的RBF函数的中心。
- 随机选择:另一种常见的选择方式是从训练数据中随机选取若干个数据点作为中心。
-
宽度选择:
- 隐含层神经元的宽度 ( \sigma ) 通常是通过输入数据的分布来确定的。一种常见的方法是根据聚类结果计算每个簇的标准差,进而设置每个RBF神经元的宽度。
- 另一种方式是通过交叉验证来选择最佳的宽度。
-
训练输出层权重:
- 一旦隐含层的中心和宽度确定,RBF网络就变成了一个线性回归问题。输出层的权重可以通过线性回归来计算,常用的解决方法是最小二乘法。
- 通过最小二乘法求解:
W = ( Φ T Φ ) − 1 Φ T Y W = \left( \Phi^T \Phi \right)^{-1} \Phi^T Y W=(ΦTΦ)−1ΦTY
其中,( \Phi ) 是隐含层输出的矩阵,( Y ) 是目标输出,( W ) 是输出层的权重。
-
训练总结:
- 选择适当的中心:使用聚类或随机选择方法来决定隐含层的神经元中心。
- 计算宽度:根据数据分布计算每个神经元的宽度。
- 优化权重:使用线性回归或最小二乘法来训练输出层的权重。
优缺点:
优点:
- 快速训练:与传统的多层前馈神经网络相比,RBF网络的训练速度较快,尤其在隐含层神经元数量较少时。
- 高效的局部逼近能力:RBF网络能够有效地逼近输入空间中的局部区域,因此对于非线性、复杂的模式非常有效。
- 简单易懂:RBF网络的结构简单,容易理解和实现,尤其是在模式分类和函数逼近任务中。
缺点:
- 网络规模依赖于数据:RBF网络通常需要较多的隐含神经元来捕捉输入空间的复杂性,因此对于大规模数据集,网络规模可能较大,导致计算开销高。
- 过拟合问题:隐含层神经元的数量过多时,容易导致过拟合,尤其是在训练数据不足的情况下。
- 选择中心与宽度的难度:选择隐含层神经元的中心和宽度需要一定的技巧,如果选择不当,可能会影响网络的性能。
总结:
- RBF神经网络通过使用径向基函数作为激活函数,能有效地处理非线性问题,特别是在模式分类、函数逼近和回归任务中表现出色。
- 它的训练过程主要包括中心的选择、宽度的确定以及输出层权重的优化,训练速度较快且易于理解,但需要合理设置隐含层神经元的数量以及选择合适的中心和宽度来避免过拟合问题。
RBF网络的训练与设计分为两步:
第一步是采用非监督式的学习训练RBF层的权值
第二步是采用监督式学习训练线性输出层的权值,
网络设计仍需要用于训练的输入矢量矩阵P
以及目标矢量矩阵T,另外还需要给出RBF层的伸展常数。
训练的目的是为了求得两层网络的权值W1和W2及偏差b1和b2。
RBF网络不是BP网络,其原因是:
1)它不是采用BP算法来训练网络权值的;
2)其训练的算法不是梯度下降法;
3)其网络权值是通过非监督算法+监督算法获得的
构造一个隐含层含
有10个神经元,并采用对数S型激活函数,输出层采用线性
函数的前向网络,然后分别采用标准的误差反向传播法、改
进的带有附加动量法和自适应学习速率相结合的快速算法,
Levenberg-Marquardt算法。而RBF网络的训练采用的是自动
确定所需要的隐含层节点数的方法。
为什么广义的径向基网络是模糊神经网络:
规则、模糊推理、推理–》对应什么方面
-
模糊化与隐含层径向基函数的功能一致
模糊神经网络中的模糊隶属函数将输入映射到模糊集合的隶属度,反映输入的模糊程度。
在RBFN中,隐含层节点通过径向基函数(如高斯函数)将输入数据映射为一个特定范围内的值(通常为0到1),这些值可以解释为“隶属度”。
共同点: 两者都在输入空间上对不同的特征区域进行模糊划分。 -
规则的建立与输出层的线性加权
在模糊神经网络中,模糊规则(例如“如果…则…”)在推理过程中通过模糊逻辑的推理机制来组合。
RBFN的输出层采用线性权值将隐含层的响应加权求和,类似于模糊神经网络中模糊推理后通过加权平均或其他解模糊化方式生成清晰的输出。
解释: 隐含层通过径向基函数对应模糊规则的“前件”,输出层则对应“后件”的组合 -
结构上的对应关系
模糊神经网络通常由三个部分组成:
模糊化输入:对应RBFN的输入到隐含层。
规则推理:对应隐含层的径向基函数输出。
解模糊化:对应RBFN输出层的线性加权。
第三章: 网络训练优化算法
标准梯度下降、自适应学习速率
基于标准梯度下降的方法
标准梯度下降法权值和偏置值修正的迭代过程可以表示为:
附加动量法
自适应学习速率
弹性BP算法
基于数值优化方法的网络训练算法
拟牛顿法
BFGS拟牛顿法
正割拟牛顿法
共轭梯度法
Levenberg-Marquardt法
前向网络的数值性能对比
第四章 递归神经网络
Hopfield 网络 特点:
单层、递归、全反馈
递归网络和前向网络的区别:
动态;
静态:
平衡点多少个?如何利用平衡点进行分类
平衡点和收敛域之间的关系。
怎么画?轨迹是什么,什么时候出错?
Hopfield网络核心概念解析
1. Hopfield网络的特点
-
单层
Hopfield网络只有一个神经元层,所有神经元之间完全互联,但没有自反馈连接(即 ( w_{ii} = 0 ))。它的单层结构主要用于存储和回忆模式。 -
递归
Hopfield网络是递归神经网络的一种,允许神经元的输出反馈到输入,实现动态状态更新。其递归特性使网络具有演化能力,可以通过多次迭代找到稳定状态。 -
全反馈
Hopfield网络是一个全反馈网络,所有神经元之间相互连接,形成一个对称的权值矩阵 ( W )。这种全连接结构使网络能够以吸引子的形式记忆多个稳定状态。
2. 递归网络和前向网络的区别
特点 | 递归网络(Hopfield为代表) | 前向网络(如BP网络) |
---|---|---|
动态/静态 | 动态:具有时间维度,状态会随着时间演化。 | 静态:没有时间维度,单次计算完成映射。 |
结构 | 存在反馈连接,输出可以影响输入。 | 单向传播,无反馈循环。 |
收敛特性 | 收敛到某个稳定点或吸引子。 | 直接计算输出,理论上不涉及状态演化。 |
应用场景 | 联想记忆、优化问题。 | 分类、回归、函数拟合等。 |
3. 平衡点的数量与分类
-
平衡点数量
Hopfield网络的平衡点数量与网络的设计及权值矩阵有关:- 理论最大平衡点:可以是存储的模式个数 ( P )。
- 实际有效平衡点:受网络容量限制(约为 ( 0.15N ),其中 ( N ) 是神经元数目),多余的模式可能会失效。
-
如何利用平衡点分类
- 每个平衡点对应一个存储模式,平衡点是吸引子。
- 当给定输入样本时,网络状态会演化到离它最近的平衡点,通过此平衡点进行分类。
4. 平衡点和收敛域的关系
-
平衡点
每个平衡点是能量函数的一个局部最小值,网络状态最终会收敛到一个平衡点。 -
收敛域
每个平衡点对应一个吸引域(basin of attraction),网络的初始状态决定了它将收敛到哪个平衡点。- 初始状态落入某个吸引域,网络会演化到该平衡点。
- 收敛域的边界可以通过对能量函数的分析确定。
5. 图示分析与状态轨迹
-
状态轨迹
Hopfield网络的状态轨迹是在能量函数空间中的演化路径,能量函数始终单调下降。- 初始状态对应于能量函数上的某一点。
- 状态更新过程表现为能量函数值不断减小,直到到达局部最小值。
-
绘制状态演化图
- 以能量函数 ( E ) 为纵轴,网络状态为横轴,绘制能量函数的分布。
- 标出局部最小值对应的平衡点,并以箭头表示状态从初始点到平衡点的演化轨迹。
6. 网络什么时候出错
-
存储容量超限
当存储的模式数量 ( P > 0.15N ) 时,网络可能会出现伪稳定点或记忆错误。 -
噪声干扰或初始状态偏差过大
初始状态可能落入错误吸引域,导致收敛到错误的平衡点。 -
权值矩阵设计问题
如果权值矩阵计算不当,可能导致某些模式无法作为稳定点存储,或者形成错误的伪稳定点。
7. 总结与联系
Hopfield网络通过动态演化实现联想记忆,其平衡点决定了存储的模式,而收敛域影响了网络的回忆性能。与前向网络相比,它的动态特性和反馈连接使其适合解决联想记忆和优化问题,但同时也限制了其存储容量和应用范围。在设计与分析Hopfield网络时,需特别关注权值矩阵、能量函数和收敛特性。
各种递归神经网络
全局反馈递归神经网络
霍普菲尔德网络
状态轨迹为稳定点:
在一个反馈网络中,存在很多稳定点,根据不同情况,这些稳定点可以分为:
状态轨迹为极限环
离散型霍普菲尔德网络
4.2.4 离散型霍普菲尔德递归网络的稳定点与稳定域
4.3 连续型霍普菲尔德网络
优化计算过程+原理
能量函数是什么?
如何求电路
4.3 连续型霍普菲尔德网络 (Continuous Hopfield Network)
优化计算过程与原理:
连续型霍普菲尔德网络是霍普菲尔德网络的一种扩展,旨在处理连续值的模式,而不仅仅是二值模式。它通过使用连续的状态变量和适当的能量函数来求解最优化问题。
-
原理:
- 连续型霍普菲尔德网络将神经元的状态表示为连续值,而不是二进制的0或1。
- 每个神经元的状态通常用一个实数值表示,这些值在网络的动态更新过程中逐渐调整,直到网络的能量函数达到最小值,从而达到平衡状态。
- 网络通过自我调整来找到问题的最优解,系统的能量函数随着网络状态的变化而减少,最终趋向最小值。
-
优化计算过程:
-
输入和输出:每个神经元的输入是其他神经元的输出和权重的加权和。输出是通过一个激活函数生成的,通常是一个连续的函数(例如,Sigmoid或tanh)。
-
更新规则:神经元的状态在每次迭代中根据以下规则更新:
[
\frac{dV_i}{dt} = -\frac{\partial E}{\partial V_i}
]
其中,(V_i) 是神经元 (i) 的状态,(E) 是系统的能量函数。状态更新是根据网络的能量函数(目标函数)来逐步调整的,以便使系统的能量最小化。 -
能量函数:霍普菲尔德网络使用一个能量函数来衡量网络的状态和最优解之间的差距。通过调整神经元的状态,系统试图降低能量函数的值,最终达到最小值。
-
能量函数:
能量函数 (E) 是网络中所有神经元状态的加权和,它反映了网络的整体状态。对于连续型霍普菲尔德网络,能量函数的形式通常是:
$$
E = \sum_{i} \frac{1}{2} V_i^2 - \sum_{i,j} W_{ij} V_i V_j
其中:
- (V_i) 是神经元 (i) 的状态(一个连续变量)。
- (W_{ij}) 是神经元 (i) 和 (j) 之间的权重。
- 第一项表示每个神经元的自身能量,第二项表示神经元之间的耦合能量。
能量函数的设计确保了网络在稳定状态下达到最优解,网络状态的更新使得能量逐渐减小,直到达到局部最小值。
如何求电路:
-
构建电路模型:
- 在连续型霍普菲尔德网络中,每个神经元可以被视为一个带有连续状态的“电容器”,并且可以通过电路模型来模拟这些神经元的状态变化。
- 神经元之间的连接可以用电导或电阻来表示,连接的强度通过权重 (W_{ij}) 来调节。电路中每个神经元的电压变化对应于神经元状态的更新。
-
电路模拟:
- 模拟神经元的状态:每个神经元的状态 (V_i) 可通过一个电流源或电容器与其电压 (V_i) 相连,从而模拟神经元的动态变化。
- 模拟权重:连接神经元之间的电导或电阻 (W_{ij}) 可模拟神经元之间的耦合强度。通过调节电导值,可以改变神经元之间的交互强度,进而影响网络的能量函数和最终收敛状态。
- 更新过程:通过调整电流源或电容的电压值,模拟神经元的更新规则,使其能量逐渐降低,直到达到平衡状态。
-
电路实现:
- 为了实现电路上的连续型霍普菲尔德网络,可以使用模拟电路元件(如运算放大器、积分电容器等)来实现神经元的动态更新过程。
- 运算放大器可用于模拟神经元之间的加权输入(通过电阻调整电流大小),并将这些输入值加权求和。
- 集成电路可以用来模拟多个神经元之间的交互及能量最小化过程。
通过这种方式,网络中的神经元状态可以通过电路中的电压进行模拟,从而实现能量最小化的目标。
总结:
- 连续型霍普菲尔德网络通过模拟神经元的连续状态来进行最优化计算,能量函数作为系统的核心目标,指导神经元状态的更新。
- 能量函数的最小化过程实现了系统的优化和稳定,确保网络达到局部最优解。
- 电路模型可以通过模拟电压和电流来实现神经元状态的动态变化和网络能量的最小化过程。
4.4 自组织竞争神经网络
功能:
网络结构:前向+竞争层
来回调W值,达到平衡
B值
区别:
感知器需要样本;
自组织来回训练,自动分类
优缺点
缺点:对明显数据分类,对概率分布的不起作用,量大–》自组织映射
功能
自组织竞争神经网络(Self-Organizing Competitive Neural Network)通过竞争学习机制实现输入数据的聚类和分类。它能够根据输入数据的相似性自动将样本归类,而无需提供明确的目标输出(即无监督学习)。
具体功能包括:
- 自动分类:基于输入数据的特征,将相似的样本归入同一类别。
- 模式发现:从未标注数据中提取隐藏模式或特征。
- 数据聚类:将数据划分为多个簇。
网络结构
- 前向结构:从输入层到竞争层数据单向流动,无反馈连接。
- 竞争层:神经元之间相互竞争,只有“胜者”(响应最强的神经元)会被激活。
- 胜者神经元的权值向输入向量靠拢(通过权值更新)。
- 权值更新:通过多次迭代调整权值,达到输入数据的聚类目的。
训练机制
-
权值更新公式:
W j ( t + 1 ) = W j ( t ) + η ( t ) ⋅ ( x − W j ( t ) ) , 仅对胜者神经元更新权值 W_j(t+1) = W_j(t) + \eta(t) \cdot (x - W_j(t)), \quad \text{仅对胜者神经元更新权值} Wj(t+1)=Wj(t)+η(t)⋅(x−Wj(t)),仅对胜者神经元更新权值
其中:- ( W_j ) 是胜者神经元的权值向量;
- ( x ) 是输入向量;
- ( \eta(t) ) 是学习率,随时间衰减。
-
竞争机制:
每次输入一个样本,计算竞争层每个神经元的响应,响应最强的神经元被激活:
j ∗ = arg min j ∥ x − W j ∥ , j = 1 , 2 , … , N j^* = \arg \min_j \|x - W_j\|, \quad j = 1, 2, \dots, N j∗=argjmin∥x−Wj∥,j=1,2,…,N
自组织竞争网络与感知器的区别
特点 | 自组织竞争网络 | 感知器 |
---|---|---|
训练方式 | 无监督学习,无需提供样本类别标签 | 监督学习,需要样本标签 |
目标 | 自动聚类,将相似样本归为一类 | 分类,将输入映射到目标类别 |
权值更新 | 根据样本与神经元权值的距离更新,竞争机制 | 根据样本误差更新权值,梯度下降法 |
适用场景 | 无标签样本聚类、模式发现 | 有明确标签的分类任务 |
优点
- 无需标注数据:适用于无监督学习任务,节省人工标注成本。
- 自动分类:能够自动发现数据中的隐藏模式。
- 适应性强:能够调整权值以适应数据分布变化。
缺点
- 对数据分布的依赖:
- 对明显的特征或类别区分效果较好;
- 对概率分布重叠的数据表现较差。
- 对大规模数据的效率问题:
- 数据量大时,需要大量迭代,训练时间较长。
- 对输入样本质量敏感:
- 异常点或噪声数据可能影响权值更新。
改进方向
针对上述缺点,自组织映射(Self-Organizing Map, SOM)应运而生。SOM通过引入拓扑结构和邻域学习机制解决以下问题:
- 量大:通过拓扑映射,降低复杂度。
- 概率分布问题:增强对数据分布的刻画能力。
- 邻域更新:不仅更新胜者神经元,还更新其邻域范围内的神经元权值,提高分类效果。
4.5 科荷伦自组织映射网络
第五章 BP网络在智能系统中的建模与控制
建模
建模后的控制器设计
数字0-9,A-Z 按2禁止或nxn矩阵是不一样
画结构图,训练 (主要画外部,内部用话去说)
模糊网络结构设计(外部,内部结构)
逆模型
正向建模
(作业)
直接逆模型: 输出、输入 存在什么问题?如何解决?
间接逆模型:为什么能解决(设计的图和步骤5.4 5.7)
模糊神经:控制器设计
网络控制器设计
结构优化+遗传算法
1. 建模
BP网络是前馈型神经网络,通过反向传播算法训练其权值。
主要用于智能系统中的非线性建模和复杂系统的动态特性逼近。
建模过程:
- 确定输入和输出:选择影响系统行为的关键变量作为输入,目标结果为输出。
- 示例:对于手写数字识别,输入为像素矩阵,输出为数字分类结果。
- 设计网络结构:包括输入层、隐含层和输出层。隐含层的节点数通常根据经验调整。
- 训练模型:使用样本数据,通过梯度下降法更新权值,最小化误差。
数字识别建模示例:
- 输入:数字0-9通过 (n \times n) 矩阵或二进制编码输入。
- 输出:对应的数字类别(0-9)。
- 结构图:
- 外部结构:输入层接收像素值或编码,输出层为类别标签;
- 内部描述:隐含层通过非线性激活函数学习输入和输出之间的映射关系。
2. 建模后的控制器设计
BP网络的建模可以用于系统控制器的设计。
在控制系统中,BP网络负责逼近非线性函数,用于以下两种建模方式:
-
正向建模:
- 学习系统的动态特性,从输入(控制信号)到输出(系统响应)的关系。
- 优点:更直观,输出与实际系统一致。
- 用途:主要用于预测模型。
-
逆向建模:
- 学习从输出(期望结果)到输入(控制信号)的逆映射。
- 优点:可以直接作为控制器使用,避免复杂求解。
- 问题:当系统多值映射或非线性强时,可能无法准确反映。
3. 直接逆模型
直接逆模型设计:
将输出(期望值)作为BP网络的输入,训练得到对应的控制输入。
存在的问题:
- 系统可能具有多值映射,直接逆模型无法区分不同解。
- 对噪声和模型误差较为敏感,导致控制性能下降。
解决方法:
- 增加正向模型验证环节;
- 改用间接逆模型设计。
4. 间接逆模型
设计思路:
- 建立系统的正向模型(输入→输出);
- 在反向计算时,利用优化算法找到满足输出的最优输入。
间接逆模型的优点:
- 通过正向模型引导,可以处理多值映射问题;
- 减少直接训练的误差累积。
设计步骤(参考图 5.4 和 5.7):
- 正向建模:设计BP网络逼近系统的正向关系(输入→输出)。
- 逆向搜索:使用优化算法(如遗传算法或梯度下降)寻找对应输入。
结构图:
外部结构包含:
- 正向模型模块;
- 优化模块(用于逆向搜索)。
5. 模糊神经网络控制器设计
模糊神经网络融合了模糊逻辑和神经网络,能够结合模糊规则和神经网络的学习能力。
结构设计:
- 外部结构:
- 输入层:接收模糊输入变量;
- 输出层:输出控制结果。
- 内部结构:
- 模糊化模块:将输入变量模糊化为隶属度值;
- 模糊规则层:根据模糊规则进行推理;
- 去模糊模块:输出明确的控制信号。
6. 网络控制器设计
BP网络可以作为非线性系统的控制器。
设计网络控制器需考虑:
- 输入和输出变量的合理选择;
- 网络结构的复杂度优化;
- 学习算法的改进。
结构优化:
- 利用遗传算法对网络的隐含层节点数、权值初始化、连接权值等进行优化。
遗传算法的引入:
- 初始化种群(不同的网络参数设置);
- 评估适应度(根据控制性能评估);
- 选择、交叉和变异,生成新种群;
- 迭代优化直至达到性能目标。
遗传算法与BP结合能有效解决网络训练中的局部最优问题,提高控制精度。
总结
- 直接逆模型适合简单系统,但对多值映射无能为力。
- 间接逆模型通过正向模型结合优化算法解决多值问题。
- 模糊神经网络在不确定性较大的场景表现优秀。
- 利用遗传算法优化网络结构能提升控制器性能,避免陷入局部最优。
5.1 直接正向模型建立
5.2 逆模型建立
5.3 系统中的控制
第六章 模糊理论基础 (看一遍)
第七章 模糊控制器
模糊控制器:
7.2 几条
7.8 对精度,及好不好的控制器
输入变量越多越好,越复杂
2个输入,可以增加模糊标记数
模糊化:模糊标记数(越多,精度越高),隶属函数个数,形状,位置
论域不能太大:7.8
解模糊: 质心法
模糊神经网络:等距离,三角形(不一定是,意味着什么)
模糊规则:模糊神经网络训练出来
模糊推理:取小 — 取大
扎得法
1. 模糊控制器的核心概念
模糊控制器是一种基于模糊逻辑和语言规则的控制方法,通过将精确的输入变量模糊化,再通过模糊推理生成模糊的控制输出,最后通过解模糊生成实际控制信号。
2. 模糊控制器的设计
2.1 输入变量数量与复杂性
- 输入变量越多:理论上控制器能处理的复杂性越高,但也增加了计算成本和规则数目,容易导致规则的稀疏化,降低实际效果。
- 模糊标记数:模糊输入变量可以通过增加模糊标记数(如“高”“中”“低”等隶属度范围)来提高分辨能力,但标记数过多可能增加计算复杂性和模糊规则的数量。
2.2 模糊化阶段
- 模糊标记数:输入变量的模糊标记数越多,控制精度理论上越高;但过多会导致计算效率降低,规则冗余。
- 隶属函数:选择隶属函数的个数、形状和位置对控制器性能影响较大:
- 形状:常见形状有三角形、高斯形、梯形等;
- 位置:不同变量的隶属函数需要合理覆盖变量的取值范围;
- 等距离分布:若使用等距离三角隶属函数,表示变量的分割是线性均匀的,有利于简化推理规则,但不一定适合所有问题。
2.3 论域的设定
- 模糊变量的论域不宜过大,否则会导致模糊控制器的分辨率下降,同时模糊规则难以覆盖所有输入情况。
2.4 解模糊方法
- 质心法:质心法是最常用的解模糊方法,通过计算模糊输出的隶属函数中心位置,生成精确的控制信号。
3. 模糊神经网络
模糊神经网络结合了模糊逻辑和神经网络的优点:
- 模糊神经网络利用神经网络训练来优化模糊规则;
- 隶属函数的形状(如三角形、梯形、高斯等)不一定固定为等距离的三角形:
- 固定三角形:隐含变量划分均匀,推理规则简单;
- 不等距离分布:能适应非线性特性,但需要更多规则和更复杂的训练。
4. 模糊推理
模糊推理规则:
模糊推理通过输入的隶属度映射到输出的隶属度。
基本原理:
- 规则激活:通过输入变量的模糊隶属度,激活相关模糊规则;
- 推理取值:
- 取小(AND):当规则中使用“且”连接条件时,输出隶属度为所有条件中最小值;
- 取大(OR):当规则中使用“或”连接条件时,输出隶属度为所有条件中最大值。
推理结果的合成:
- 根据所有激活规则的输出,合成模糊集合。
5. 模糊控制器的优缺点
优点:
- 适合处理不确定性和模糊性强的控制任务;
- 基于语言规则设计,容易理解和修改;
- 对系统模型依赖较低,适合非线性系统。
缺点:
- 随输入变量和模糊标记数增加,规则数目呈指数增长,难以维护;
- 控制精度依赖于隶属函数设计和规则的质量;
- 对概率分布和动态变化较弱,需结合其他算法如遗传算法或神经网络优化。
6. 扎得法(Zadeh Method)
扎得法是模糊推理的基本方法之一,主要特点是基于模糊集合的逻辑运算:
- 将输入变量模糊化;
- 根据模糊规则,通过逻辑操作推理输出隶属度;
- 合成所有规则的推理结果,形成模糊输出集合;
- 最后通过解模糊生成控制信号。
总结
模糊控制器通过模糊化、推理和解模糊实现复杂系统的控制。
模糊神经网络能有效结合模糊规则和学习能力,适合更复杂的问题。
隶属函数设计(如三角形分布)、模糊规则数量和推理方法(取小、取大)是设计的关键。
第八章 模糊控制系统的应用
讲变参数双模糊控制器时讲过
3,4种提高精度的方法
+
第九章 模糊神经网络
什么是模糊神经网络
推导模糊控制器,输入输出关系式
设计:
结构设计:训练(结构怎么画)、训练过程、训练了什么
权值训练:间接法、怎么训练
径向基:隐含层、节点数(权值) 物理意义
模糊神经网络训练 隶属函数
精度:模糊标记数,不等距,形状,结构
模糊逻辑控制的优点:设计上的逻辑推理性和概念的透明性,每一步操作具有明确的物理意义;
缺点:规则极大的依赖于人的经验,参数的选择上需要人为确定。
人工神经网络的优点:网络参数设计上的自适应性;具有自动学习的能力。
缺点:网络的参数没有明确的物理意义。通过神经网络实现的模糊逻辑系统结构具有模糊逻辑推理功能,同时网络的权值也具有明确的模糊逻辑意义,从而达到以神经网络及模糊逻辑各自的优点弥补对方不足的目的。
模糊系统的关系式
模糊系统的输入/输出的求解关系式是相当
复杂和费时的
直接用神经网络实现模糊系统
1. 什么是模糊神经网络
模糊神经网络(Fuzzy Neural Network, FNN)是模糊逻辑和人工神经网络的结合体,旨在将模糊推理的透明性和神经网络的自适应学习能力结合。
它通过将模糊逻辑规则嵌入神经网络的权值和结构中,使网络具有模糊逻辑的推理能力,同时保留了神经网络的自适应学习特性。
2. 模糊控制器输入输出关系式的推导
模糊控制器的输入输出关系式基于以下过程:
-
模糊化:
输入变量 ( x_1, x_2, …, x_n ) 转换为模糊隶属度:
[
\mu_A(x_i) = f(x_i), \quad i = 1, 2, …, n
] -
规则激活:
使用模糊规则库进行推理:
[
R_k: \text{IF } x_1 \text{ is } A_{1k} \text{ AND } x_2 \text{ is } A_{2k}, \dots, \text{ THEN } y \text{ is } B_k
] -
推理:
对每条规则 ( R_k ),计算激活强度:
[
w_k = \prod_{i=1}^n \mu_{A_{ik}}(x_i)
] -
模糊输出合成:
y = ∑ k w k ⋅ y k ∑ k w k y = \frac{\sum_{k} w_k \cdot y_k}{\sum_{k} w_k} y=∑kwk∑kwk⋅yk
其中,( y_k ) 是规则 ( R_k ) 的输出值。
3. 模糊神经网络设计
3.1 结构设计
-
基本结构:
- 输入层:接收输入变量;
- 隐含层:实现模糊化、规则推理和模糊合成;
- 输出层:实现解模糊,输出精确值。
-
结构图:
- 输入变量通过模糊化隶属函数进行特征提取;
- 隐含层使用模糊规则库进行激活;
- 权值表示规则的权重,训练过程中通过调整权值优化规则强度。
3.2 训练过程
-
训练内容:
- 调整隶属函数的参数(形状、位置、宽度);
- 优化模糊规则的权值。
-
训练方法:
- 采用神经网络的误差反向传播算法(BP算法);
- 输入训练数据,计算输出误差,逐层更新权值和隶属函数参数。
4. 权值训练方法
4.1 间接法
-
原理:
通过优化输入输出误差,间接调整模糊规则的隶属函数和权值。 -
步骤:
- 输入训练数据;
- 计算网络输出,反向传播误差;
- 更新隶属函数参数和权值。
4.2 训练目标
-
优化隶属函数:
调整隶属函数的形状、中心位置和宽度,使其更符合数据分布。 -
优化模糊规则权值:
强化对主要规则的激活,抑制次要规则。
5. 径向基网络中的模糊含义
-
隐含层的节点:
隐含层节点表示不同的模糊规则,每个节点的激活函数对应一个模糊隶属度函数。 -
节点数的物理意义:
节点数目决定模糊规则的数量,过少会导致规则不足,过多可能导致过拟合。
6. 模糊神经网络训练中的隶属函数
-
隶属函数设计:
- 模糊标记数:越多分辨率越高,但规则复杂度增加;
- 形状:常见的有三角形、高斯形、梯形;
- 不等距:可以更好地适应非均匀数据分布。
-
训练目标:
- 自动调整隶属函数参数,使其更贴合实际数据分布;
- 同时优化规则权重,保证规则推理的准确性。
7. 模糊逻辑控制和神经网络的优缺点
模糊逻辑控制的优缺点:
- 优点:
- 设计上直观清晰,规则有明确的物理意义;
- 逻辑推理清晰,每一步都有明确解释。
- 缺点:
- 规则和参数依赖于专家经验;
- 需要人为设定隶属函数形状和参数。
神经网络的优缺点:
- 优点:
- 参数自适应调整,能自动学习;
- 能适应复杂的非线性关系。
- 缺点:
- 权值没有明确的物理意义;
- 网络训练可能陷入局部最优。
总结
模糊神经网络结合了模糊逻辑和神经网络的优点:
- 利用模糊规则进行逻辑推理,保持物理意义和可解释性;
- 通过神经网络的学习能力优化隶属函数和规则权值,增强适应性和精度。
其核心优势是通过自适应学习实现高效、精准的控制,同时保持透明性和逻辑性,弥补了单一模糊逻辑或神经网络的缺陷。
9.4 Sugeno模糊推理法
9.5 B样条模糊神经网络
9.6 径向基函数神经网络
在监督式训练中,径向基网络的径向基层神经元的个数为多少?作为模糊神经网络控制器时,径向基层神经元的个数有什么含义?若输入为2,RBF层神经元个数为12,标记数各是多少?
在监督式训练中,径向基函数网络(RBF网络)的径向基层神经元的个数通常由以下几个因素决定:
- 输入数据的特征空间维度:RBF网络的输入维度通常决定了输入空间的大小,进而影响所需的神经元数量。
- 训练数据的复杂度和分布:如果输入空间较复杂,或者训练数据分布较为分散,则可能需要更多的神经元来拟合这些数据。
- 控制精度要求:为了保证网络输出足够精确,可能需要更多的神经元来捕捉数据中的细节。
径向基网络的径向基层神经元的个数
在RBF网络中,径向基层神经元的个数通常与训练数据的复杂度和输入特征的分布有关,但没有硬性规定。一般来说,RBF层神经元个数会根据以下方式来确定:
- 经验法则:常见的经验法则是,RBF层神经元的个数为输入特征的数量的若干倍,或者与训练样本的数量相关。
- 通过聚类或k均值算法确定:RBF神经元的个数可以通过使用k-means等聚类算法对输入数据进行聚类来决定,每个聚类中心可以作为一个RBF神经元的中心。
在实际应用中,选择的RBF神经元个数和网络性能相关,更多的神经元可以增加模型的拟合能力,但也容易导致过拟合。
作为模糊神经网络控制器时,RBF层神经元的个数含义
当RBF网络作为模糊神经网络控制器时,径向基层神经元的个数直接影响到模糊规则的数量以及模糊集的表示方式。在模糊控制系统中,通常将每个神经元视为一个模糊规则的代表,而每个RBF神经元的输出对应于某个模糊集的隶属度。
- 神经元个数:表示了模糊控制器的规则数量。每个神经元可以对应一个模糊规则,从而实现对输入变量的模糊推理。
- 隶属函数:RBF神经元的中心位置和宽度(如高斯函数的方差)通常与模糊集的定义相关,用于确定输入值属于某个模糊集的程度。
因此,RBF层神经元个数的选择会影响到模糊规则的精细度和控制器的性能。
若输入为2,RBF层神经元个数为12,标记数各是多少?
在该问题中,输入为2,即输入空间是2维的,RBF层神经元的个数为12。
-
输入空间的维度为2:这意味着每个训练样本是一个二维的向量(例如,((x_1, x_2))),即每个神经元的输入是二维的。
-
RBF层神经元个数为12:意味着网络在RBF层有12个神经元。
-
标记数:标记数(类别数)通常与RBF网络的输出层有关,而不是直接与RBF层神经元的数量相关。标记数是指分类任务中可能的类别数量或回归任务中的输出维度。
- 如果是分类问题,则标记数通常等于类别数。例如,如果是二分类问题,标记数就是2;如果是多分类问题,标记数就是类别数。
- 如果是回归问题,标记数即为回归输出的维度,通常是1(如果是单维回归任务)。
总结:
- 径向基层神经元的个数通常依据输入数据的复杂度、样本分布等来确定,并且对于模糊神经网络控制器,神经元的个数决定了模糊规则的数量。
- 对于一个2维输入的RBF网络,RBF层神经元个数为12,标记数则由任务的性质(分类或回归)决定。对于分类任务,标记数等于类别数;对于回归任务,标记数等于输出维度。
第11章 遗传算法
标准遗传算法
遗传算法(Genetic Algorithm,简称GA)是建立在自然选择和自然遗传学机理基础上的迭代自适应概率性搜索算法。
遗传算法具有不需要求梯度、能得到全局最优解、算法简单、可并行处理等优点
特点
1)遗传算法通过编码将优化问题的自然参数编码成有限长度数字串位,故遗传算法基本上不受函数约束条件(如连续、可导、单调等)特性的限制,能在极其广泛的问题求解过程中发挥作用。
2)传统搜索法基本上是点到点的搜索方法,遗传算法是全局优化方法
3)遗传算法在选择过程中,依据一定概率随机地选择个体是为了摹仿自然界进化过程中的“适者生存”、“优胜劣汰”的竞争规则。
操作
设计步骤
实质
从模式的角度看,遗传算法的搜索过程其本质是对隐含在可行解编码串内的“模式”的抽样过程。
关于遗传算法的收敛性,标准遗传算法在变异概率为0时,必然收敛于一个吸收状态,但不能确保收敛于全局最优解;
标准遗传算法在变异概率不为零时,是不收敛的。
12.1遗传算法提高神经网络模型辨识的精度
1)编码
采用直观的实数编码,以每一权重值的每一自然数字作为基因,所有权重值的顺序排列组成一个染色体。
2)遗传操作
遗传操作主要包括复制、交换、和突变,其目的是将当代群体变为下一代群体。在遗传操作过程中,适应值一直起着衡量操作结果优劣的评判标准。
为了保持解的多样性,并防止早熟现象,在辨识过程中,对遗传操作进行了如下改进:
在复制过程中,在N个个体中将小于平均适应度的个体,复制下来,淘汰高于平均适应度的劣值个体n个,被淘汰的n个体的空缺,采用随机取数方式进行增补,当n小于(1/4)N时,随机增补的个体数取为(1/4)N。
为了确保搜索的全局最优,将本代中的最优解直接进化到下一代中。由于搜索空间的性质和随机值的优劣,在进化过程中,仅靠交换往往会现早期陷入局部解而中止进化。配合有效的变异操作可防止其出现。
12.2 模糊神经网络和遗传算法相结合的控制策略
首先,采用人工神经网络实现模糊逻辑控制的全过程,从而使神经网络的结构具有模糊逻辑控制的功能,同时每一个参数均具有明确的模糊逻辑意义;其次,利用人工神经网络对信息处理具有自学习和自适应的特性对其参数和结构同时进行优化处理,而达到在最简结构下获得最优控制效果的目的。
通过以上处理,控制系统的参数优化过程可
以归纳如下:
(1)训练得到被控对象的网络模型NNP;
(2)根据模糊逻辑控制的最少模糊子集及控制规则构造 神经网络控制器GNFC;
(3)将NNP与GNFC联成闭环回路,并采用改进的遗传算法进行参数优化。