正在加载图片...
·328· 智能系统学报 第8卷 界输出信息处理结果.当实际输出与期望输出不符 习后的值,还有2个关键的参数:教学因子T℉,= 时,进入误差的反向传播阶段误差通过输出层,按 round[1+rand(0,1)]和学习步长r:=rand(0,1)用 误差梯度下降的方式修正各层权值,向隐层、输入层 于调整学习速率 逐层反传但是,梯度下降优化法存在不稳定和不可 1.2学员之间相互“学”阶段 预知的问题,并且对初始值非常敏感,对于多峰值优 在学员相互“学”阶段,每个学员X(i=1,2,…, 化问题,很容易陷入局部搜索而失去全局最优解.为 NP)在班级中随机选取一个学习对象X(j=1,2, 此,近年来,很多启发式智能全局优化算法被用于神 …,NP,j≠),X,通过分析自己和学员X的差异进 经网络的优化设计,例如,遗传算法(genetic algo- 行学习调整,学习改进的方法类似于差分算法中的 rithm,GA)[)、粒子群优化算法(particle swarm opti-- 差分变异算子,不同在于,TLB0算法中的学习步长 mization,PSO)[)、模拟退火算法(simulated annea- r对每个学员采用不同的学习因子.采用式(3)实现 ling,SA)等.本文提出一种改进的教与学优化算法 “学”的过程 teaching-learning-based optimization,TLBO)[561 (X+·(X:-X),X优于X: 行BP神经网络的优化设计. (3) X+r·(X-X),X优于X 1教与学优化算法 式中:=U(0,1)表示第i个学员的学习因子(学习 教与学优化算法由印度学者R.V.Rao和V.D. 步长) Kalyankar于2010年提出,TLBO算法通过模拟人类 1.3学员更新 在学习过程中的老师“教”和学生相互“学”2个阶 学员经过“教”阶段和“学”阶段都要分别进行 段的学习方法,促进每个学员的学习水平, 更新操作更新方法如下: 基本的TLBO算法是模拟以“班级”为单位的学 If X is better than Xod, 习方式,班级中学员水平的提高需要教师的“教”来 X=X", 引导,同时,学员之间需要相互“学习”交流来促进 End If. 知识的进步其中,教师和学员相当于进化算法中的 2 改进的教与学优化算法 个体,而教师是适应值最好的个体之一.每个学员所 学的某一科目相当于一个决策变量 对低维单模优化问题,基本的TLB0算法的收 下面是几个基本定义: 敛速度很快,求解精度很高,运行代价较小,算法的 1)学习知识范围(对应于搜索区域).学员所学 时间复杂度为O(NP×T),(NP是学员数量,T是最 知识范围定义为X=(x,x2,…,x4)∈[L,U],L= 大允许迭代次数).TLBO算法的缺点是,对于高维 (L,2,…,L)是空间下届,U=(U,U2,…,)是 “多模态”的复杂优化问题,全局探索能力较差,很 空间上届,d是学员所学科目数(对应于优化问题的 容易陷入局部搜索而丢失全局最优解.主要原因是 维数) TLB0算法在“教”阶段对所有学员采用相同的差异 2)班级:所有学员的集合称为班级(种群) 值Difference进行调整,使得算法的搜索策略比较单 3)教师:班级中水平最高的个体称为教师,记 一,学员很容易快速向“老师”聚集,导致学员知识 为icacher或Xen 多样性的快速丢失,从而陷入局部搜索.这样,对于 4)学员(个体):班级中第i个学员定义为X= 高维“多模态”问题,TLB0算法往往会丢失全局最 (x,x,…,x),其中,(=1,2,…,d)表示学员X 优解而获得局部最优解8】」 所学的第j门课程, 在TLB0算法中,学员的学习过程完全依赖老师 1.1教师的“教”阶段 的“教”和学员之间的交流“学习”,造成学员在学习 在TLBO算法的“教”阶段,班级中每个学员X 过程中对他人的过度依赖,但却丧失了学习过程中自 (i=l,2,…,NP)根据Xaa和班级中学员平均水平 我学习和自我创新能力的挖掘.因此,为了发挥群体 中每个学员的智慧和才能,本文针对TLB0算法的缺 值Mean=(∑X,)/NP之间的差异性进行学习.采 陷,提出一种改进的教与学优化算法(modified teach- 用式(1)~(2)实现“教”的过程. ing-learning-based optimization,MTLBO),算法借鉴和 X.=Xal Difference, (1) 声搜索算法思想进行个体的自我学习和自我探索创 Difference=r:·(Ktacher-TF:·Mean).(2) 新能力挖掘,用于加强每个个体的自我局部搜索能 式中:xX“和X"分别表示第i个学员学习前和学 力,从而增加种群的全局探索能力.界输出信息处理结果.当实际输出与期望输出不符 时,进入误差的反向传播阶段.误差通过输出层,按 误差梯度下降的方式修正各层权值,向隐层、输入层 逐层反传.但是,梯度下降优化法存在不稳定和不可 预知的问题,并且对初始值非常敏感,对于多峰值优 化问题,很容易陷入局部搜索而失去全局最优解.为 此,近年来,很多启发式智能全局优化算法被用于神 经网络的优化设计,例如,遗传算法( genetic algo⁃ rithm, GA) [3] 、粒子群优化算法(particle swarm opti⁃ mization, PSO) [4] 、模拟退火算法( simulated annea⁃ ling, SA)等.本文提出一种改进的教与学优化算法 ( teaching⁃learning⁃based optimization, TLBO) [5⁃6] 进 行 BP 神经网络的优化设计. 1 教与学优化算法 教与学优化算法由印度学者 R.V.Rao 和 V.D. Kalyankar 于 2010 年提出,TLBO 算法通过模拟人类 在学习过程中的老师“教”和学生相互“学” 2 个阶 段的学习方法,促进每个学员的学习水平. 基本的 TLBO 算法是模拟以“班级”为单位的学 习方式,班级中学员水平的提高需要教师的“教”来 引导,同时,学员之间需要相互“学习” 交流来促进 知识的进步.其中,教师和学员相当于进化算法中的 个体,而教师是适应值最好的个体之一.每个学员所 学的某一科目相当于一个决策变量. 下面是几个基本定义: 1) 学习知识范围(对应于搜索区域).学员所学 知识范围定义为 X = (x 1 ,x 2 ,…,x d )∈ [ L,U] ,L = (L 1 ,L 2 ,…,L d )是空间下届,U= (U 1 ,U 2 ,…,U d ) 是 空间上届,d 是学员所学科目数(对应于优化问题的 维数). 2) 班级:所有学员的集合称为班级(种群). 3) 教师:班级中水平最高的个体称为教师,记 为 Xteacher或 Xbest . 4) 学员(个体): 班级中第 i 个学员定义为Xi = (x 1 i ,x 2 i ,…,x d i ),其中,x j i(j = 1,2,…,d)表示学员 Xi 所学的第 j 门课程. 1.1 教师的“教”阶段 在 TLBO 算法的“教”阶段,班级中每个学员 Xi (i = 1,2,…,NP)根据 Xteacher和班级中学员平均水平 值 Mean = (∑ NP i = 1 Xi) / NP 之间的差异性进行学习.采 用式(1) ~ (2)实现“教”的过程. X new i = X old i + Difference, (1) Difference = ri·(Xteacher - TFi·Mean). (2) 式中:X old i 和 X new i 分别表示第 i 个学员学习前和学 习后的值,还有 2 个关键的参数:教学因子 TFi = round [1+rand(0,1) ] 和学习步长 ri = rand(0,1) 用 于调整学习速率. 1.2 学员之间相互“学”阶段 在学员相互“学”阶段,每个学员 Xi(i = 1,2,…, NP)在班级中随机选取一个学习对象 Xj( j = 1,2, …,NP,j≠i),Xi 通过分析自己和学员 Xj 的差异进 行学习调整,学习改进的方法类似于差分算法中的 差分变异算子,不同在于,TLBO 算法中的学习步长 r 对每个学员采用不同的学习因子.采用式(3)实现 “学”的过程. X new i = X old i + ri·(Xi - Xj), Xi 优于 Xj; X old i + ri·(Xj - Xi), Xj 优于 Xi { . (3) 式中:ri =U(0,1)表示第 i 个学员的学习因子(学习 步长). 1.3 学员更新 学员经过“教”阶段和“学”阶段都要分别进行 更新操作.更新方法如下: If X new i is better than X old i , X old i = X new i , End If. 2 改进的教与学优化算法 对低维单模优化问题,基本的 TLBO 算法的收 敛速度很快,求解精度很高,运行代价较小,算法的 时间复杂度为 O(NP ×T),(NP 是学员数量,T 是最 大允许迭代次数). TLBO 算法的缺点是,对于高维 “多模态”的复杂优化问题,全局探索能力较差,很 容易陷入局部搜索而丢失全局最优解.主要原因是 TLBO 算法在“教”阶段对所有学员采用相同的差异 值 Difference 进行调整,使得算法的搜索策略比较单 一,学员很容易快速向“老师”聚集,导致学员知识 多样性的快速丢失,从而陷入局部搜索.这样,对于 高维“多模态”问题,TLBO 算法往往会丢失全局最 优解而获得局部最优解[7⁃8] . 在 TLBO 算法中,学员的学习过程完全依赖老师 的“教”和学员之间的交流“学习”,造成学员在学习 过程中对他人的过度依赖,但却丧失了学习过程中自 我学习和自我创新能力的挖掘.因此,为了发挥群体 中每个学员的智慧和才能,本文针对 TLBO 算法的缺 陷,提出一种改进的教与学优化算法(modified teach⁃ ing⁃learning⁃based optimization, MTLBO),算法借鉴和 声搜索算法思想进行个体的自我学习和自我探索创 新能力挖掘,用于加强每个个体的自我局部搜索能 力,从而增加种群的全局探索能力. ·328· 智 能 系 统 学 报 第 8 卷
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有