遗传算法与神经网络的结合

合集下载

基于遗传算法优化的SOFM神经网络生成测试数据集的方法

基于遗传算法优化的SOFM神经网络生成测试数据集的方法

基于遗传算法优化的SOFM神经网络生成测试数据集的方法在当今科技飞速发展的时代,数据已成为驱动创新的重要燃料。

然而,高质量的测试数据集往往难以获取,尤其是在机器学习和人工智能领域。

传统的数据集生成方法往往存在效率低下、质量参差不齐等问题。

因此,寻找一种高效且可靠的数据集生成方法显得尤为重要。

本文将探讨一种基于遗传算法优化的自组织特征映射(SOFM)神经网络生成测试数据集的新方法。

首先,让我们来理解一下SOFM神经网络。

SOFM神经网络是一种无监督学习的神经网络模型,它能够将高维数据映射到低维空间,同时保持数据的内在结构。

这种特性使得SOFM神经网络在数据可视化、聚类分析等领域有着广泛的应用。

然而,SOFM神经网络的训练过程往往需要大量的计算资源和时间,这在一定程度上限制了其在大规模数据集生成中的应用。

为了解决这一问题,我们可以引入遗传算法来优化SOFM神经网络的训练过程。

遗传算法是一种模拟自然选择和遗传机制的全局优化算法,它具有并行性、鲁棒性和自适应性等特点。

通过将遗传算法与SOFM神经网络相结合,我们可以在训练过程中自动调整网络参数,从而提高训练效率和数据质量。

具体来说,我们可以将SOFM神经网络的权重矩阵作为遗传算法的个体编码,通过交叉、变异等操作产生新的个体,并根据适应度函数评估个体的优劣。

适应度函数可以根据数据集的质量指标(如聚类精度、信息熵等)来设计。

通过多代进化,我们可以找到一组最优的网络参数,从而生成高质量的测试数据集。

这种基于遗传算法优化的SOFM神经网络生成测试数据集的方法具有以下优势:1.高效性:通过遗传算法自动调整网络参数,可以大大减少人工调参的时间和精力,提高训练效率。

2.可靠性:遗传算法具有较强的全局搜索能力,可以避免陷入局部最优解,从而提高数据集的质量。

3.可扩展性:该方法可以应用于各种规模的数据集生成任务,只需调整遗传算法的参数即可。

当然,这种方法也存在一定的局限性。

遗传算法与神经网络的结合方法与实例分析

遗传算法与神经网络的结合方法与实例分析

遗传算法与神经网络的结合方法与实例分析遗传算法和神经网络是两种不同的计算模型,它们在解决问题时具有各自的优势和局限性。

然而,通过将这两种方法结合起来,可以充分发挥它们的优点,提高问题解决的效率和准确性。

本文将探讨遗传算法与神经网络的结合方法,并通过实例分析展示其应用价值。

一、遗传算法和神经网络的简介1. 遗传算法遗传算法是一种模拟自然界进化过程的优化算法,通过模拟遗传、变异和选择等过程,逐步优化问题的解。

它适用于复杂的优化问题,具有全局搜索能力和并行处理能力。

2. 神经网络神经网络是一种模拟人脑神经系统的计算模型,通过神经元之间的连接和权重调整,实现对输入数据的模式识别和预测。

它适用于处理非线性问题,具有自适应性和学习能力。

二、遗传算法与神经网络的结合方法1. 遗传算法初始化神经网络权重在神经网络训练之前,通常需要对权重进行初始化。

传统的方法是随机初始化权重,但这种方法可能导致网络陷入局部最优解。

通过遗传算法初始化神经网络的权重,可以提高网络的初始状态,增加全局搜索的能力。

2. 遗传算法优化神经网络结构神经网络的结构包括神经元的数量、层数和连接方式等。

通过遗传算法的优化过程,可以调整神经网络的结构,使其更好地适应问题的特征。

例如,可以通过遗传算法选择合适的神经元数量和层数,以及确定神经元之间的连接方式,从而提高网络的性能。

3. 遗传算法选择神经网络的最优解在神经网络训练过程中,通常需要选择一个最优解作为最终结果。

遗传算法可以通过选择适应度函数来评估神经网络的性能,并选择表现最好的网络作为最优解。

这种方法可以避免由于局部最优解而导致的问题性能下降。

三、遗传算法与神经网络的实例分析以手写数字识别为例,展示遗传算法与神经网络的结合应用。

手写数字识别是一个典型的模式识别问题,神经网络可以通过学习大量的手写数字样本,实现对新样本的准确识别。

但是,神经网络的训练过程需要大量的计算资源和时间,而且容易陷入局部最优解。

基于遗传算法的BP神经网络算法

基于遗传算法的BP神经网络算法

基于遗传算法的BP神经网络算法基于遗传算法的BP神经网络算法是一种将遗传算法与BP神经网络相结合的机器学习算法。

BP神经网络是一种具有自适应学习功能的人工神经网络,它通过反向传播算法来不断调整网络的权重和阈值,从而实现对样本数据的学习和预测。

遗传算法是一种模拟生物进化过程的优化算法,它通过选择、交叉和变异等操作来产生下一代的优秀个体,从而逐步寻找到最优解。

在基于遗传算法的BP神经网络算法中,遗传算法用于优化BP神经网络的初始权重和阈值,以提高网络的学习和泛化能力。

1.初始化个体群体:随机生成一组个体,每个个体代表BP神经网络的初始权重和阈值。

2.适应度评估:使用生成的个体来构建BP神经网络,并使用训练数据进行训练和验证,评估网络的适应度,即网络的性能指标。

3.选择操作:根据个体的适应度值确定选择概率,选择一些适应度较高的个体作为父代。

4.交叉操作:从父代中选择两个个体,通过交叉操作生成两个新的子代个体。

5.变异操作:对新生成的子代个体进行变异操作,引入一定的随机扰动,增加种群的多样性。

6.替换操作:根据一定的替换策略,用新生成的子代个体替代原来的父代个体。

7.终止条件判断:根据预先设定的终止条件(如达到最大迭代次数或达到一些适应度值阈值)判断是否终止算法。

8.返回结果:返回适应度最高的个体,即最优的BP神经网络参数。

然而,基于遗传算法的BP神经网络算法也存在一些缺点。

首先,算法的收敛速度较慢,需要较长的时间进行优化。

其次,算法需要设置一些参数,如种群大小、交叉概率和变异概率等,不同的参数组合可能对算法的性能产生较大影响,需要经过一定的试错过程。

综上所述,基于遗传算法的BP神经网络算法是一种结合了两种优化方法的机器学习算法,能够有效提高BP神经网络的学习和泛化能力。

同时,也需要在实际应用中根据具体情况选择合适的参数设置和终止条件,以获得更好的算法性能。

神经网络与遗传算法相结合的优化方法

神经网络与遗传算法相结合的优化方法

神经网络与遗传算法相结合的优化方法随着科技的不断发展,人工智能技术也越来越成熟,其中神经网络和遗传算法是两种比较常见的优化方法。

神经网络是一种基于人脑神经系统的计算模型,它可以通过输入和输出数据来学习并预测未知的数据。

而遗传算法则是一种基于生物进化的计算优化方法,通过模拟进化过程来寻找最优解。

在实际应用中,单独使用神经网络或遗传算法可能会存在一些问题。

例如,神经网络可能会受到噪声数据的影响,导致训练过程不够稳定;而遗传算法可能会受到局部最优解的限制,从而难以找到全局最优解。

因此,将神经网络和遗传算法相结合,可以弥补彼此的不足,提高优化效果。

神经网络和遗传算法相结合的优化方法大致可以分为两种:基于神经网络的遗传算法和基于遗传算法的神经网络优化。

基于神经网络的遗传算法是指将神经网络作为遗传算法中的染色体,通过遗传算法对神经网络的权重和偏置进行优化。

首先,将神经网络的权重和偏置随机生成,并用其计算出目标函数值作为该染色体的适应度。

然后,使用遗传算法的选择、交叉和变异操作对染色体进行进化,直到满足终止条件为止。

最后,选择适应度最高的神经网络作为最优解。

基于遗传算法的神经网络优化是指使用遗传算法来优化神经网络的拓扑结构和参数。

首先,通过遗传算法生成多个随机的神经网络拓扑结构,并计算它们的目标函数值。

然后,使用遗传算法的选择、交叉和变异操作对拓扑结构进行进化,得到新的神经网络结构。

接着,针对每个神经网络进行参数优化,即对权重和偏置进行遗传算法优化。

最后,选择适应度最高的神经网络作为最优解。

这两种方法都是神经网络和遗传算法相结合的优化方法,但具体应用时需要根据实际情况进行选择。

例如,在数据量较小的情况下,基于神经网络的遗传算法可能更加有效,因为神经网络可以更好地拟合数据;而在数据量较大且结构复杂的情况下,基于遗传算法的神经网络优化可能更加适合,因为遗传算法可以更好地处理大规模的优化问题。

综上所述,神经网络和遗传算法相结合的优化方法具有优化效果好、稳定性高等优点,在实际应用中有着广泛的应用前景。

遗传算法与神经网络

遗传算法与神经网络
在遗传算法里,优化问题的解被称为个体,它表示为一个变量序列,叫做染色体或者基 因串。染色体一般被表达为简单的字符串或数字串,不过也有其他的依赖于特殊问题的表示 方法适用,这一过程称为编码。首先,算法随机生成一定数量的个体,有时候操作者也可以 对这个随机产生过程进行干预,以提高初始种群的质量。在每一代中,每一个个体都被评价, 并通过计算适应度函数得到一个适应度数值。种群中的个体被按照适应度排序,适应度高的 在前面。这里的“高”是相对于初始的种群的低适应度来说的。
2.1 神经网络简介
人工神经网络(artificial neural network,缩写 ANN),简称神经网络(neural network, 缩写 NN),是一种模仿生物神经网络的结构和功能的数学模型或计算模型。神经网络由大量 的人工神经元联结进行计算。大多数情况下人工神经网络能在外界信息的基础上改变内部结 构,是一种自适应系统。现代神经网络是一种非线性统计性数据建模工具,常用来对输入和 输出间复杂的关系进行建模,或用来探索数据的模式。
进化次数限制; (1)计算耗费的资源限制(例如计算时间、计算占用的内存等); (2)一个个体已经满足最优值的条件,即最优值已经找到; (3)适应度已经达到饱和,继续进化不会产生适应度更好的个体; (4)人为干预; (5)以及以上两种或更多种的组合。
3/9
遗传算法与神经网络
一个典型的遗传算法要求: 一个基因表示的求解域, 一个适应度函数来评价解决方案。
经过这一系列的过程(选择、交配和突变),产生的新一代个体不同于初始的一代,并 一代一代向增加整体适应度的方向发展,因为最好的个体总是更多的被选择去产生下一代, 而适应度低的个体逐渐被淘汰掉。这样的过程不断的重复:每个个体被评价,计算出适应度, 两个个体交配,然后突变,产生第三代。周而复始,直到终止条件满足为止。一般终止条件 有以下几种:

基于遗传算法的人工神经网络模型构建与优化研究

基于遗传算法的人工神经网络模型构建与优化研究

基于遗传算法的人工神经网络模型构建与优化研究人工神经网络(Artificial Neural Network,ANN)是一种模仿生物神经网络结构和功能的计算模型,通过模拟神经元之间的连接和信号传递,能够实现机器学习和模式识别任务。

而遗传算法(Genetic Algorithm,GA)是一种基于自然选择和遗传机制的优化算法,通过模拟生物进化过程来寻找最优解。

本文将探讨基于遗传算法的人工神经网络模型的构建与优化研究。

首先,构建人工神经网络模型是研究的首要任务。

人工神经网络由多个神经元和这些神经元之间的连接组成。

每个神经元接收来自其他神经元的输入,并通过激活函数对输入信号进行加权计算,最终输出结果。

遗传算法可以应用于优化神经元的连接权重和调整激活函数的参数,以获得更好的网络性能。

在构建人工神经网络模型时,首先需要确定网络的拓扑结构,包括输入层、隐藏层和输出层的神经元数量,以及它们之间的连接方式。

遗传算法可以通过进化过程搜索最佳的拓扑结构,以提高神经网络的性能。

遗传算法通过定义适应度函数来衡量每个个体的适应度,适应度高的个体将更有可能被选中下一代进化。

通过遗传算法的迭代过程,我们可以找到最佳的拓扑结构。

其次,优化神经元的连接权重是构建人工神经网络模型的关键一步。

连接权重决定了不同神经元之间的信号传递强度。

遗传算法可以通过进化过程调整连接权重,以找到最佳的权重组合。

在遗传算法的优化过程中,通过交叉和变异等操作,通过上一代个体中的优秀基因来生成新的个体,逐步优化连接权重,使神经网络的性能得到提高。

此外,还可以使用遗传算法来优化激活函数的参数。

激活函数决定了神经元输出的非线性特性,常用的激活函数包括Sigmoid、ReLU、Tanh等。

通过调整激活函数的参数,我们可以改变神经元的响应特性,从而使网络更好地拟合训练数据。

遗传算法可以在多个激活函数和参数组合中搜索最佳的选择,以提高神经网络的性能。

此外,在进行人工神经网络的训练和优化时,还可以使用遗传算法来选择最优的训练样本和参数初始化方法。

遗传算法与神经网络相结合的热带气旋强度预报方法试验

遗传算法与神经网络相结合的热带气旋强度预报方法试验
对 比分 析 , 验 预 报 结 果 表 明 , 传 一 经 网 络 方 法 具 有 更 好 的 预 报 能 力 . 试 遗 神 关 键 词 :遗 传 算 法 ; 经 网 络 ; 带 气 旋 ; 度 预 报 神 热 强
中 图 分 类 号 :P 3 . 723 文 献 标 识 码 :A 文 章 编 号 :0 5 — 1 3 2 0 ) 4 0 1 - 9 2 34 9 ( 0 7 0 —0 10
1上 海 台风 研 究 所 . 0 4年 热 带 气 旋定 位 和 预报 精度 评 定 . 五 届 全 国 台风 及 海 洋 气 象 专 家 工 作 组 第 三 次 会 议 文 件 汇 编 ) 20 第
维普资讯
第 2 9卷
第 4期 Biblioteka 海 洋 学

Vo . 9。No 4 I2 .
20 0 7年 7月
ACTA 0CEAN0LoGI CA NI SI CA
J l 0 7 uy 2 0
遗 传 算 法 与 神 经 网 络 相 结 合 的 热 带 气 旋 强 度 预 报 方 法 试 验
摘 要 :以 1 6  ̄2 0 9 0 0 1年 共 4 1 a的 7月和 8月西行 进入 南海海域 的热 带气旋 样本 为 基础 , 采用 遗传 算法 与神经 网络 相结合 的方 法, 进行 了热带 气旋 强度预 报模 型 的预 报建模 研 究. 并根 据相 同的热 带 气旋个 例 , 将这 种遗传一 神经 网络 热 带气旋 强度 预报 模 型与 气候持 续 法热 带 气旋 强度 预 报 方法 进行
流 以及不 同尺 度运 动 相 互作 用 相联 系 , 具有 复 杂 而
显著 的非 线性 变化 特 征 , 直 是 热 带 气 旋研 究 和 业 一 务预 报 的重点 和难 点问题 . 年来 , 近 随着 数值 天气 预 报模 式 的发展 和卫 星 资 料 的应 用 , 带 气 旋 强度 和 热

人工神经网络与遗传算法结合的研究

人工神经网络与遗传算法结合的研究

参 考 文 献
[ ] 3
An es d r Ohls s on. ha Ne W tS w i Dephi . n l 7 Bora d Sofwa e Co po a i ln t r r r ton,USA ,20 2 0
[ 1]
D lh 7 tdo ep i S i u Hep B r n S f r l. ol d ot e a wa
维普资讯 http://wΒιβλιοθήκη
《 现代 电子 技 术 》 0 2年 第1 期 总第 1 3期 20 2 4
收 稿 日期 :2 0 — 9— 2 0 2 0 1
人工 神经网络 与遗传算 法结合的研 究
St d n Co b n n r i i i lN e r lN e w o ks a e tc Al o ih s u y o m i i g A tfc a u a t r nd G ne i g r t m
合 的可能性 。以网络为例 ,结合 自适应遗传算法 F GA]构造 了基 于遗 传算法的 B A P网络 用于解决 T P问题 ,并取得 了 S
很 好的效果 。
关 键 词 :人 工神 经 网络 ;遗 传 算 法 ( A) 自适 应 遗 传 算 法 ( A) G ; AG
人 工 神经 网络 的兴起 源 自于人 类 对 自身 的模 仿 。1 4 9 3年 首先 提 出神 经元 的数 学模 型 ,随 后提 出学 习算 法 兴
杨 朋林
( 四川 大 学 成都


YANG e g i HE Xi P nl n, n
60 6) 1 0 4
( i u n Un v r i Sc a ie st h y・ Ch n d . 6 0 6 . C ia egu 10 4 hn )
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

系统工程理论与实践Systems Engineering——Theory & Practice1999年 第2期 第19卷 vol.19 No.2 1999遗传算法与神经网络的结合李敏强 徐博艺 寇纪淞摘要 阐明了遗传算法和神经网络结合的必要性和可行性,提出用多层前馈神经网络作为遗传搜索的问题表示方式的思想。

用遗传算法和神经网络结合的方法求解了短期地震预报问题,设计了用遗传算法训练神经网络权重的新方法,实验结果显示了遗传算法快速学习网络权重的能力,并且能够摆脱局部极点的困扰。

关键词 遗传算法 进化计算 神经网络On the Combination of Genetic Algorithms and Neural NetworksLi Minqiang Xu Boyi Kou Jisong(Institute of Systems Engineering, Tianjin University, Tianjin 300072) Abstract In this paper, we demonstrate the necessity and possibility of combining neural network (NN) with GAs. The notion of using multilayered feed forward NN as the representation method of genetic and the searching technique is introduced. We combine GA and NN for solving short term earthquake forecasting problem, design a novel method of using GAs to train connection weights of NN.The empirical test indicates the capability of the new method in fast learning of NN and escaping local optima. Keywords genetic algorithms; evolutionary computation; neural networks1 引言 智能可以分为三个层次:高层次的是生物智能(BI),其次是人工智能(AI), 处于低层次的是计算智能(CI)。

计算智能是国际上新近提出的学科概念,在计算智能中,计算的概念是传统计算概念的拓展,计算对象不仅局限于数和字符,运算符号也不再局限于加减乘除等运算,在这个范畴内的加减乘除也需赋于新的含义。

但一般来说,AI 偏重于逻辑推理,而CI则偏重于数值计算。

目前,计算智能正处于迅猛发展的阶段,其主要技术包括模糊技术、神经网络、进化计算等[5]。

这几项技术各自均有了数十年的历史,但当时这些方法并未受到足够的重视,一是当时这些方法还不很成熟,二是受当时计算机软硬件的限制,而这些方法一般需要较大的计算量,难以取得实际应用。

随着计算机技术的发展和普及,它们在最近十年得到了突飞猛进的发展,引起了诸多领域专家学者的关注,成为一个跨学科的研究热点。

近年来,这些方法呈互相融合的趋势[3],它们之间的相互补充可增强彼此的能力,从而获得更有力的表示和解决实际问题的能力。

如对模糊神经网络、模糊遗传算法、模糊分类器系统、用遗传算法优化模糊系统的隶属度函数及神经网络的进化设计方法等的研究都体现了这种融合的优点[1,2]。

2 遗传算法与神经网络的融合2.1 神经网络为什么需要遗传算法 对于一个实际问题建立神经网络通常包括下面四个阶段:首先研究者根据自己的理论、经验和研究兴趣选择一个问题域,如模式识别、神经控制、经济预测等。

第二,根据学习任务设计网络结构,包括处理单元个数、各层的组织结构及处理单元之间的联结。

第三,根据已知的网络结构和学习任务用梯度下降学习算法,如BP算法来训练联结权值。

最后,研究者以测量到的目标性能,如解决特殊问题的能力、学习速度和泛化能力对训练过的网络进行评价。

这个过程可以不断重复以获得期望的结果。

描述一个ANN模型结构的主要参数有:网络层数、每层单元数、单元间的互连方式等。

设计ANN的结构,实际上就是根据某个性能评价准则确定适合于解决某个问题或某类问题的参数的组合。

当待解决的问题比较复杂时,用人工的方法设计ANN是比较困难的。

即使小的网络的行为也难以理解,大规模、多层、非线性网络更是十分神秘,几乎没有什么严格的设计规则。

Kosmogorov定理说明在有合理的结构和恰当的权值的条件下,三层前馈网络可以逼近任意的连续函数,但定理中没给出如何确定该合理结构的方法,研究者只能凭以前的设计经验或遵循这样一句话“问题越困难,你就需要越多的隐单元”来设计ANN的结构。

而标准工程设计方法对于神经网络的设计也是无能为力,网络处理单元间的复杂的分布交互作用使模块化设计中的分解处理技术变得不可行,也没有直接的分析设计技术来处理这种复杂性,更困难的是,即使发现了一种足以完成某一特定任务的网络,又怎能确定我们没有丢失一个性能更好的网络呢? 到目前为止,人们花费了大量的时间和精力来解决这一难题,而神经网络的应用也正向大规模、复杂的形式发展,人工设计网络的方法应该抛弃,ANN需要高效的自动的设计方法,GAs则为其提供了一条很好的途径。

遗传算法用于ANN的另一个方面是用遗传算法学习神经网络的权重,也就是用遗传算法来取代一些传统的学习算法。

评价一个学习算法的标准是:简单性、可塑性和有效性。

一般的,简单的算法并不有效,可塑的算法又不简单,而有效的算法则要求算法的专一性、完美性,从而又与算法的可塑性、简单性相冲突。

目前广泛研究的前馈网络中采用的是Rumelhart等人推广的误差反向传播(BP)算法,BP算法具有简单和可塑的优点,但是BP算法是基于梯度的方法,这种方法的收敛速度慢,且常受局部极小点的困扰,采用GAs则可摆脱这种困境。

当然,使用GAs可以把神经网络的结构优化和权值学习合并起来一起求解,但这对计算机的处理能力要求很高。

2.2 遗传搜索技术为什么需要神经网络 现在我们所面对的系统越来越复杂,所处理的系统问题也是越来越复杂,用传统GAs中的串表示方式来表达复杂系统的规律性是很困难的。

遗传规划中采用了树型结构的表示方式,可以方便地表示问题中的层次性,但对于系统中的反馈信息,这种表示方式也是无能为力的。

对许多领域来说,网络或图为复杂问题提供了一种更自然、直观、有效的表示方式。

从广义上讲,系统都是以网络的形式存在的,但在很多问题的描述和建模过程中,往往采用某种解析方法,运筹学中的网络分析仅仅应用于一类明显具有网络形式的工程类问题求解,而将网络作为系统的一般描述方法,并建立相应的模型和求解策略,则是人们正在努力研究的课题[4]。

诚然,寻找一种通用的系统的网络表示形式是不明智的,借助目前研究比较成熟的多层前馈神经网络作为遗传搜索的问题表示方法是可行的。

图1表示了遗传算法与神经网络的结合。

图1 遗传算法与神经网络的结合3 遗传算法在神经网络学习中的应用3.1 神经网络学习的复杂性 这里所指的神经网络的学习包括拓扑结构的学习和权值的学习两个方面。

ANN的学习是按照某种组合性能指标,在可能的网络空间上,搜索具有最优性能的网络形式。

评价函数的选择一般应考虑以下几个方面的因素:网络的收敛性、泛化能力以及网络的稳定性等。

ANN的性能曲面一般是很复杂的,可能的处理单元数目及连接是无界的,因而曲面无限大,处理单元数目离散取值,导致网络的性能是非连续的,故性能曲面是不可微的。

枚举搜索方法会遇到网络空间的组合爆炸问题,随机搜索方法在长的搜索过程中也不比枚举搜索方法好,难于发现有用的网络形式。

而基于梯度的搜索方法需要很好定义的可微曲面,难以解决具有局部极小点的复杂的欺骗性的问题。

对于神经网络来说,GAs所处理的每个个体是单独一个网络,所涉及的参数即网络结点之间的连接权值均为实数,而标准遗传算法所处理的参数是采用二进制编码的整数。

虽然可以采用二进制编码再转化为实数,但这样引入了量化误差,使参数变化为步进,如目标函数值在最优点附近变化较快的情况下,则可能错过最优点。

因此,网络的权值应采用实数表示。

然而,神经网络的结构参数一般是整数型的,也就是说,ANN的参数有连续型的,也有离散型的,ANN的学习问题是一非线性混合优化问题,从这一点讲,用一般的优化方法也是不行的,GAs可以方便地表示逻辑值和实数值,且GAs并未规定一定要用数来表示,GAs也可以应用于不好量化的对象,这使GAs 在ANN的学习及人工智能的其他领域得到了广泛的应用。

3.2 面向神经网络权值学习的遗传算法 1) 编码方式:神经网络的权值学习是一个复杂的连续参数优化问题,如果采用二进制编码,会造成编码串过长,且需要再解码为实数,使权值变化为步进,影响网络学习精度。

这里我们采用了实数编码,如图2所示,神经网络的各个权值按一定的顺序级联为一个长串,串上的每一个位置对应着网络的一个权值。

编码为:(0.4,-0.3,2.1,1.3,0.9,-0.6,4.5,-0.1,0.7)图2 神经网络权值学习问题的编码方式 2) 评价函数f:将染色体上表示的各权值分配到给定的网络结构中,网络以训练集样本为输入输出,运行后返回误差平方和的倒数作为染色体的评价函数,如式1所示。

(1) 3) 初始化过程:初始染色体集中,网络的各权值是以概率分布e-|γ|来随机确定的,这点有别于BP算法。

在BP算法中,初始权值一般取-1.0~1.0之间均匀分布的随机数。

遗传算法的这种随机分布的取法是通过以往的大量实验得出的,可以发现,当网络收敛后,权值的绝对值一般都较小,但也有一些权值是较大的。

采用以上初始化方法的原因是使遗传算法能够搜索所有可行解的范围。

4) 遗传算子:对于不同的应用问题,遗传算子的形式多种多样,这里采用了权值交叉和权值变异算子,如图3所示。

图3 交叉和变异算子的运算 权值交叉算子:对于子代染色体中的每个权值输入位置,交叉算子从两个亲代染色体中随机选取若干个交叉位置,并将这一代染色体在交叉位置进行交叉运算,这样子代染色体便含有两个亲代的遗传基因。

权值变异算子:对于子代染色体中的每个权值输入位置,变异算子以概率P m在初始概率分布中随机选择一个值,然后与该输入位置上的权值相加。

5) 选择方式:这里不采用比例选择方式,而使用亲代度量S决定群体中每个个体被选中的概率,群体中的个体以式2所示的概率成为亲代染色体。

(2)其中P1, P2, P3,…分别表示评价函数最优、次优、第三…的个体的概率。

相关文档
最新文档