专家系统/模糊理论/神经网络/遗传算法相关基础知识

整理于大学时代的一篇笔记,对重新再研究AI及其关联的技术有一定概念参照意义。毕竟比较古老,可能仅在基础概念入门方面有一些提示。

常用缩写

缩写全称解释
AIArtificial Intelligence人工智能
ESExpert System专家系统
SCSoft Computing软计算
NNNeural Network神经网络
ANNArtificial Neural Network人工神经网络
BNNBiological Neural Network生物神经网络
FSFuzzy System模糊系统
FLFuzzy Logic模糊逻辑
GAGenetic Algorithm遗传算法

专家系统

什么是专家系统

专家系统是早期人工智能的活跃领域,在某一特定领域,建立以知识为基础,通过推理机制在特定领域对复杂问题进行求解的系统。一般主要来说专家系统基本上由知识库和推理机构成。如果再进行细化和扩展,可以涵括如下部分

项番详细
No.1交互界面
No.2知识库
No.3知识获取
No.4解释器
No.5推理机
No.6综合数据库

知识及其表示

相比其他,专家系统更加强调的是知识,ES也被称为基于知识的系统(Knowledge-Based Systems)。利用人类专家所掌握的知识对专家系统来说无比重要。人类专家的知识以易于处理的方式表示并不是一件容易的事情,常见的形式之一则是利用规则的形式来表示(比如IF…THEN…规则的形式).

专家系统的瓶颈

项目详细
知识难于获取基于知识的ES,所需要的专家知识不容易获得
知识难于抽出获得后的知识难以抽出,需要从人类思维方式的知识中去除形象思维只留逻辑思维这样适合数值计算和符号推理而进行精确求解的知识数据模型
知识难以表示利用规则等可以表示知识,但是不是很方便,效果也不是很理想
思维方式难以模拟人类在知识和经验的基础上学习,需要高度的推理/思索/判断等才能得出结论

模糊理论

发展背景

年份详细
1965美国加利福尼亚大学L.A.Zadeh在那篇著名论文Fuzzy Sets中首次提出了模糊的概念
1974英国工程师Madani把模糊理论首次应用于小型蒸汽机的自动控制领域,实现了自适应子学习功能
1980丹麦的L.P.Holmblad和Ostergard在水泥窑炉 采用模糊控制并取得了成功,这是第一个商业化的有实际意义的模糊控制器

模糊理论特点

模糊理论简言之就是这样一种方法,利用它可以较为自然地处理和人类思考类似的处理。用比较绕一点的方法可以将其特点总结如下:

项番详细方法
No.1模糊理论本身并不模糊
No.2模糊逻辑是用来对“模糊”进行处理以消除模糊的逻辑
No.3模糊逻辑是一种用精确的方法解决不精确或者不完全信息的方法,接近于人类的思考方式

使用范围

根据扎德教授的观点,模糊逻辑对于下列类似的系统进行建模和控制是较为自然的。

项番详细方法
No.1大的自然系统,比如天气/海洋等
No.2大的人造系统,比如经济/股票市场/国家选举等

综合各方观点,模糊逻辑最适用的为以下的几类系统

项番详细方法
No.1太过复杂,无法精确建模的系统
No.2明显非线性的复杂系统
No.3输入或者定义具有结构不确定的系统

系统建模

系统建模一般分为线性建模和非线性建模。传统方式下的很多系统采用线性建模的方法,即满足线性叠加,简单的说一般有如下两种原理。

项番原理
No.1f(x+y) = f(x) + f(y)
No.2f(ax) = af(x)

非线性系统一般并非所有部分均为非线性,此时线性部分依然可以使用线性方式处理,可采取分段线性的方法。但是对于不可线性分段的非线性处理,没有具体的处理方法,比如经济预测/人类行为/图象和声音的识别等等。

复杂非线性系统

复杂的非线性系统,因为目前对其的处理,只能给出解的存在证明二不能给出具体方法,所以使用普通方法难以处理。扎德在1973年就提出了不相容原理。

项目详细
不相容原理当系统的复杂度超过某一限度,对系统的举动进行正确且有意义的描述是不可能的

但是,即使这种情况下,也可以通过如下的方法对复杂的非线性系统进行了解

项番详细方法
No.1建立描述系统行为的规则
No.2将系统的一些有意义的状态表现成简单的内部符号,在这些状态在以后再次产生时能够被识别
No.3通过例子或者ANN等进行训练,使用大量的数据喂出聪明的系统

扎德的方法

项番详细方法
No.1不用数学方程,用语言为代表的模糊变量来记录和描述系统
No.2通过条件命题,记述模糊变量之间的关系。比如如果温度低就加强加温器的热度
No.3利用模糊推理算法记述系统

遗传算法

Why 遗传算法

如果说NN是模拟人脑以个体的生物为对象而衍生出的算法的话,GA就是模拟生物的进化过程而产生的算法。人类及其他生物本身就包含着尚未掌握的知识宝藏,GA以及各时代的多数生物为对象,在复杂的大规模系统的建模方面正在探索的一条新的途径。

算法机制

项目详细
对象以几个世代的复数个生物为对象
转换将问题的求解转化为将一群染色体置于问题的环境中
求解根据适者生存的原则,为适应环境进行复制/再生/交叉/变异
优势设计简单,对所求解的问题不需要知道更多信息,而这也是大规模复杂非线性系统的困境,其无法提供更加充足的信息。

算法原理

项目详细
基本原理自然淘汰原理:优胜劣汰
基本操作:淘汰对环境适应度低的进行淘汰,模拟自然劣汰原则
基本操作:增殖对环境适应度高的进行增殖,模拟自然优胜原则
基本操作:交叉模拟染色体的交叉,进行性质的混合
基本操作:变异强制性的稍有变换的个体生成
模拟将对象系统的各种参数的集合用一个染色体表示
计算对染色体按照基本原理和基本操作进行运算
串行求解普通方式是通过牛顿法/下降法等进行串行求解
并行求解GA通过多个体并行探索求解,通过个体间的选择/交叉等相互作用,提高探索效率

应用领域

一般应用于并不局限于如下领域

项番详细
No.1系统设计
No.2系统优化
No.3遗传程序设计
No.4人工生命
No.5……

神经网络

发展背景

年份详细
1943美国心理学家W.S.McCulloch和数学家 W.A.Pitis提出的最初的M-P神经元模型
1949加拿大心理学家Hebb提出了著名的Hebb学习规则,为神经网络的学习算法奠定了基础
1958Frank Rosenblatt在1957年就职于Cornell航空实验室时发明的一种人工神经网络Perceptron(感知器)
1969M.Minsky.Papert 指出Perceptron的局限性
1972芬兰学者Kohonen提出了一个与感知机等神经网络不同的自组织映射理论(SOM)
1972中野提出了联想记忆模型(Association)
1975福岛提出了一个自组织识别神经网络模型
1982生物物理学家J.Hopfield引入了能量函数提出了一种新的人工神经网络模型:Hopfield network
1983Boltzmann Machine引入模拟退火概念,更好地解决了组合优化
1986Rumelhart和McCelland为首的科学家小组提出一种按误差逆传播算法训练的多层前馈网络BP(Back Propagation)网络

分类

按照方式

项番详细
ANN人工神经网络
BNN生物神经网络

结合方式

项番详细
阶层型信息的流动为单向,输入数据向输出层传递
相互结合型所有的神经元间都结合,信息的流动是双向的。某一神经原若向另一神经元输出,同时也接受该神经元的输出

学习方式

项番详细
有教师学习(Supervised learning)输出和期待结果可进行调解
无教师学习(Unsupervised learning)只有输出无期待结果可进行比较

信号流向

项番详细
前馈型信号只向输出层方向传播
反馈型信号有向输入层返回

NN/FS/GA的相似点

项目特点
NN微观层次上模仿脑神经网络的功能
FS模拟人类的主观信息处理方式
GA模拟生物进化方式

三者的融合,取长补短,也能产生很多优秀的算法

    原文作者:遗传算法
    原文地址: https://blog.csdn.net/liumiaocn/article/details/54579845
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞