声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 1169|回复: 5

[综合讨论] 如何对神经网络进行最优化处理??

[复制链接]
发表于 2006-10-2 12:15 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
各位大侠:
     如何对下面例子中得到的网络进行最优化处理,求得使t达到最小值的P值。
     急需指教!! 感谢非常!!
输入矢量为   
             p =[-1 -2 3  1
                 -1  1 5 -3]
            目标矢量为   t = [-1 -1 1 1]
            解:本例的 MATLAB 程序如下:

            close all
            clear
            echo on
            clc
            % NEWFF——生成一个新的前向神经网络
            % TRAIN——对 BP 神经网络进行训练
            % SIM——对 BP 神经网络进行仿真
            pause        
            %  敲任意键开始
            clc
            %  定义训练样本
            % P 为输入矢量
            P=[-1,  -2,    3,    1;       -1,    1,    5,  -3];
            % T 为目标矢量
            T=[-1, -1, 1, 1];
            pause;
            clc
            %  创建一个新的前向神经网络
            net=newff(minmax(P),[3,1],{'tansig','purelin'},'traingdm')
            %  当前输入层权值和阈值
            inputWeights=net.IW{1,1}
            inputbias=net.b{1}
            %  当前网络层权值和阈值
            layerWeights=net.LW{2,1}
            layerbias=net.b{2}
            pause
            clc
            %  设置训练参数
            net.trainParam.show = 50;
            net.trainParam.lr = 0.05;
            net.trainParam.mc = 0.9;
            net.trainParam.epochs = 1000;
            net.trainParam.goal = 1e-3;
            pause
            clc
            %  调用 TRAINGDM 算法训练 BP 网络
            [net,tr]=train(net,P,T);
            pause
            clc
            %  对 BP 网络进行仿真
            A = sim(net,P)
            %  计算仿真误差
            E = T - A
            MSE=mse(E)
            pause
            clc
            echo off
回复
分享到:

使用道具 举报

发表于 2006-10-4 21:48 | 显示全部楼层
最优化处理?
网络性能良好与否
要看网络相关的各个参数的设定
以及网络训练量的多少
还与其他因素有关

不知道是否有这样的理论专门来使网络最优化?

评分

1

查看全部评分

发表于 2006-10-4 22:04 | 显示全部楼层
求得使t达到最小值的P值
这个让我看的一头雾水
何为t的最小值,t不变的,
一般是由p(这个和训练的一般不同,去预测目标t)
先了解神经网络能做什么吧,不用以为神经网络是万能的,什么都能做
 楼主| 发表于 2006-10-5 22:03 | 显示全部楼层
各位仁兄!!
我可能开始没把问题说明白!!
我的意思是,如果用P,T样本对网络进行训练,训练后得到的网络应该是能反应P与T之间的函数关系,
即T=net(P),那么当输入参数P在一定的定义域里,T=net(P)应有个最小值,如何求这个最小值,同时
如何获得对应的P值,能不能给小弟一个实例!!
感谢非常!!
发表于 2006-10-5 23:35 | 显示全部楼层
先查阅相关文献吧,看有没有做过类似的,可行性如何?
如果查不到相关文献,说明这个没人做过,也就不存在实例一说
如果用P,T样本对网络进行训练,训练后得到的网络应该是能反应P与T之间的函数关系,
即T=net(P),那么当输入参数P在一定的定义域里,T=net(P)应有个最小值,如何求这个最小值,同时
如何获得对应的P值
这个是你和老师共同讨论的结果还是你个人的想法,我不清楚
总之不要想当然,觉得好象是这样,否则到时候你完成不了
如果是在学校,多和老师讨论讨论会对你更有帮助一些,毕竟你要做的不是三言两语能说清楚的

评分

1

查看全部评分

发表于 2006-10-9 21:05 | 显示全部楼层
网络确定以后即连接权确定,那么对于输入P来说输出T应该是一定的吧,没有最小值的吧!
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-9-25 05:23 , Processed in 0.051408 second(s), 19 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表