正在加载图片...
.228 智能系统学报 第11卷 小,其次可以在均值平滑滤波和权值扰动之间达到 能力的影响。 一种平衡。因此,子批量学习既具有全批量学习通 3.1 Seeds数据集分类实验 过平均处理、滤波平稳的优势,又融合了单批量学习 Seeds数据集是由UCI提供的用于分类算法测 更新次数多、收敛快的特点,同时克服了全批量平均 试的实验数据集之一,该数据记录了3类种子的7 处理后网络收敛缓慢、内存需求高和单批量学习网 种特征数据,总计210个样本。实验从3个类别中 络波动的缺点。 分别随机抽取36个样本组成训练集,剩余样本组成 开始 测试集。网络隐层节点个数设置为10,选取批量s 网络权值初始化 为1、4、9、18、54、108,其中s=1为单批量学习,s= 108为全批量学习,中间为不同批量大小的子批量 预处理训练数据均值为0,方差为1 学习方法,在相同网络初始权值下取20次实验的平 训练样本进行随机排序 均结果作为讨论对象。 训练样本平均分成个批次,每个批次的批量为s 3.1.1不同批量收敛性研究 计算当前子批量的误差 为了探究批量对于网络收敛性的影响,实验在 当前子批量内进行权值更新 迭代5000次情况下,不同批量网络性如图2所示。 0.30年 全部子批量 N 0.25 计算完成 Y 效0.20 计算训练样本的均方误差 0.15 0.10 9 是否达到收敛 0.05 。 Y 结束 -gx10 0 1015202530 迭代次数 图1BP神经网络子批量学习方法流程图 Fig.I Flow chart of sub-batch learning method 图2 Seeds数据集不同批量下均值误差 2.2子批量学习参数配置研究 Fig.2 MSE of seeds under different batch size 由式(2)和式(5)可以看出,网络权值的更新量 由图2,在相同的学习率情况下,批量越小,均 由学习率和梯度共同决定,所以学习率对于网络的 值误差收敛越快,收敛所需要的迭代次数越小,但较 收敛速度有着关键性的影响,通过调整学习率可以 小的批量,导致网络波动较大,存在随机扰动,如图 调节网络权值的更新程度,在训练过程中,学习率过 2中下方s=18,s=4时的曲线,误差曲线波动收敛: 大会导致学习过程震荡,网络收敛困难,学习率过 随着批量增大,均值误差收敛曲线扰动逐渐减小,收 小,导致网络收敛缓慢,迭代时间长。因此经常调整 敛曲线逐渐平滑,这说明均值误差梯度起到了平滑 滤波的效果:但误差曲线缓慢收敛,收敛所需要的迭 学习率来加速网络训练。 子批量学习方法中,子批量学习使网络权值更 代次数较大,如图2中上方s=54,s=108时的曲线。 3.1.2 Seeds数据集迭代次数比较分析 新在均值平滑滤波和扰动之间达到一种平衡,不同 学习率是影响网络收敛性和训练时间的关键因 的批量在均值平滑滤波和扰动之间有所侧重,小批 素,在上述实验基础上,实验以E=0.005为收敛目标, 量更侧重于增大扰动影响,大批量更侧重于加强均 迭代5000次,分别在a=7、5、3、1、0.50.1、0.01总计 值平滑滤波效果,网络学习率会放大或缩小这种侧 7个不同的学习率下,测试不同学习率和批量对于网 重,所以批量和学习率的配置,对于网络的收敛性和 络迭代次数(图3)、训练时间(表1)和分类错误率 训练时间有着重要的影响。 (图4)的影响。(实验验证在E=0.01时存在欠拟合, 3数值实验 在E=0.001和E=0.0005时存在过拟合。) 1)依据图3,学习率相同时,网络首先在小批 本文以具有代表性的Seeds12】、Waveform13]和 量上达到收敛,之后逐渐在所有批量上都达到收敛, Music4]分类数据集为实验对象,通过实验,比较单 随着批量增加,在不引起较大波动的情况下,网络收 批量、全批量和子批量学习方法收敛速度,揭示子批 敛所需的迭代次数也逐渐增加,说明小批量对比大 量和学习率对网络收敛速度、训练时间和分类泛化 批量学习具有较快的收敛速度。小,其次可以在均值平滑滤波和权值扰动之间达到 一种平衡。 因此,子批量学习既具有全批量学习通 过平均处理、滤波平稳的优势,又融合了单批量学习 更新次数多、收敛快的特点,同时克服了全批量平均 处理后网络收敛缓慢、内存需求高和单批量学习网 络波动的缺点。 图 1 BP 神经网络子批量学习方法流程图 Fig.1 Flow chart of sub⁃batch learning method 2.2 子批量学习参数配置研究 由式(2)和式(5)可以看出,网络权值的更新量 由学习率和梯度共同决定,所以学习率对于网络的 收敛速度有着关键性的影响,通过调整学习率可以 调节网络权值的更新程度,在训练过程中,学习率过 大会导致学习过程震荡,网络收敛困难,学习率过 小,导致网络收敛缓慢,迭代时间长。 因此经常调整 学习率来加速网络训练。 子批量学习方法中,子批量学习使网络权值更 新在均值平滑滤波和扰动之间达到一种平衡,不同 的批量在均值平滑滤波和扰动之间有所侧重,小批 量更侧重于增大扰动影响,大批量更侧重于加强均 值平滑滤波效果,网络学习率会放大或缩小这种侧 重,所以批量和学习率的配置,对于网络的收敛性和 训练时间有着重要的影响。 3 数值实验 本文以具有代表性的 Seeds [1 2 ] 、Waveform [1 3 ]和 Music [14 ]分类数据集为实验对象,通过实验,比较单 批量、全批量和子批量学习方法收敛速度,揭示子批 量和学习率对网络收敛速度、训练时间和分类泛化 能力的影响。 3.1 Seeds 数据集分类实验 Seeds 数据集是由 UCI 提供的用于分类算法测 试的实验数据集之一,该数据记录了 3 类种子的 7 种特征数据,总计 210 个样本。 实验从 3 个类别中 分别随机抽取 36 个样本组成训练集,剩余样本组成 测试集。 网络隐层节点个数设置为 10,选取批量 s 为 1、4、9、18、54、108,其中 s = 1 为单批量学习,s = 108 为全批量学习,中间为不同批量大小的子批量 学习方法,在相同网络初始权值下取 20 次实验的平 均结果作为讨论对象。 3.1.1 不同批量收敛性研究 为了探究批量对于网络收敛性的影响,实验在 迭代 5 000 次情况下,不同批量网络性如图 2 所示。 图 2 Seeds 数据集不同批量下均值误差 Fig.2 MSE of seeds under different batch size 由图 2,在相同的学习率情况下,批量越小,均 值误差收敛越快,收敛所需要的迭代次数越小,但较 小的批量,导致网络波动较大,存在随机扰动,如图 2 中下方 s = 18,s = 4 时的曲线,误差曲线波动收敛; 随着批量增大,均值误差收敛曲线扰动逐渐减小,收 敛曲线逐渐平滑,这说明均值误差梯度起到了平滑 滤波的效果;但误差曲线缓慢收敛,收敛所需要的迭 代次数较大,如图 2 中上方 s = 54,s = 108 时的曲线。 3.1.2 Seeds 数据集迭代次数比较分析 学习率是影响网络收敛性和训练时间的关键因 素,在上述实验基础上,实验以 E= 0.005 为收敛目标, 迭代 5 000 次,分别在 α = 7、5、3、1、0.5、0.1、0.01 总计 7 个不同的学习率下,测试不同学习率和批量对于网 络迭代次数(图 3)、训练时间(表 1)和分类错误率 (图 4)的影响。 (实验验证在 E= 0.01 时存在欠拟合, 在 E= 0.001 和 E= 0.000 5 时存在过拟合。) 1) 依据图 3,学习率相同时,网络首先在小批 量上达到收敛,之后逐渐在所有批量上都达到收敛, 随着批量增加,在不引起较大波动的情况下,网络收 敛所需的迭代次数也逐渐增加,说明小批量对比大 批量学习具有较快的收敛速度。 ·228· 智 能 系 统 学 报 第 11 卷
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有