遗传算法怎么调用神经网络训练好的模型
1个回答
展开全部
遗传算法优化的BP神经网络建模借鉴别人的程序做出的仿真,最近才有时间整理。
目标:
对y=x1^2+x2^2非线性系统进行建模,用1500组数据对网络进行构建网络,500组数据测试网络。由于BP神经网络初始神经元之间的权值和阈值一般随机选择,因此容易陷入局部最小值。本方法使用遗传算法优化初始神经元之间的权值和阈值,并对比使用遗传算法前后的效果。
步骤:
未经遗传算法优化的BP神经网络建模
1、 随机生成2000组两维随机数(x1,x2),并计算对应的输出y=x1^2+x2^2,前1500组数据作为训练数据input_train,后500组数据作为测试数据input_test。并将数据存储在data中待遗传算法中使用相同的数据。
2、 数据预处理:归一化处理。
3、 构建BP神经网络的隐层数,次数,步长,目标。
4、 使用训练数据input_train训练BP神经网络net。
5、 用测试数据input_test测试神经网络,并将预测的数据反归一化处理。
6、 分析预测数据与期望数据之间的误差。
遗传算法优化的BP神经网络建模
1、 读取前面步骤中保存的数据data;
2、 对数据进行归一化处理;
3、 设置隐层数目;
4、 初始化进化次数,种群规模,交叉概率,变异概率
5、 对种群进行实数编码,并将预测数据与期望数据之间的误差作为适应度函数;
6、 循环进行选择、交叉、变异、计算适应度操作,直到达到进化次数,得到最优的初始权值和阈值;
7、 将得到最佳初始权值和阈值来构建BP神经网络;
8、 使用训练数据input_train训练BP神经网络net;
9、 用测试数据input_test测试神经网络,并将预测的数据反归一化处理;
10、 分析预测数据与期望数据之间的误差。
目标:
对y=x1^2+x2^2非线性系统进行建模,用1500组数据对网络进行构建网络,500组数据测试网络。由于BP神经网络初始神经元之间的权值和阈值一般随机选择,因此容易陷入局部最小值。本方法使用遗传算法优化初始神经元之间的权值和阈值,并对比使用遗传算法前后的效果。
步骤:
未经遗传算法优化的BP神经网络建模
1、 随机生成2000组两维随机数(x1,x2),并计算对应的输出y=x1^2+x2^2,前1500组数据作为训练数据input_train,后500组数据作为测试数据input_test。并将数据存储在data中待遗传算法中使用相同的数据。
2、 数据预处理:归一化处理。
3、 构建BP神经网络的隐层数,次数,步长,目标。
4、 使用训练数据input_train训练BP神经网络net。
5、 用测试数据input_test测试神经网络,并将预测的数据反归一化处理。
6、 分析预测数据与期望数据之间的误差。
遗传算法优化的BP神经网络建模
1、 读取前面步骤中保存的数据data;
2、 对数据进行归一化处理;
3、 设置隐层数目;
4、 初始化进化次数,种群规模,交叉概率,变异概率
5、 对种群进行实数编码,并将预测数据与期望数据之间的误差作为适应度函数;
6、 循环进行选择、交叉、变异、计算适应度操作,直到达到进化次数,得到最优的初始权值和阈值;
7、 将得到最佳初始权值和阈值来构建BP神经网络;
8、 使用训练数据input_train训练BP神经网络net;
9、 用测试数据input_test测试神经网络,并将预测的数据反归一化处理;
10、 分析预测数据与期望数据之间的误差。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询