24小时热门版块排行榜    

查看: 2653  |  回复: 9

meatball1982

铜虫 (小有名气)

[求助] 使用神经网络进行预测 已有2人参与

mod : 2013年 12月 14日 星期六 10:19:23 CST

大家好,我有一个使用进行神经网络拟合的问题,具体如下

输入是的维数是253,
输出只有一维,输出的值在范围[-567.58 -567.53]的范围内,变化范围只有0.05。

训练的样本大约有4000个,
预测的样本大约有10000个。

数据的维数分别是
dat_in_tr =[4000*253]
dat_out_tr=[4000*1]

dat_in_pr =[10000*253]
dat_out_pr=[10000*1]

我是使用BP神经网络进行预测的。
一个隐层,隐层单元个数为69。

训练的效果还可以,预测的效果也算可以接受。但有一个问题一直解决不了。
就是在预测的时候,在大约10000个点中总是有30个左右的点误差比较大。因为大多数点的误差都在0.01的范围之内。有问题的点的误差的绝对值大于0.01(在图中红色标出。).
这是这些点,使得我的结果无法被使用。

我现在需要大家帮忙我作下面的一件事。需要满足
01.用神经网络(matlab的工具箱,matlab自己编写程序,C语言均可以)对10000预测样本进行预测。使得所有的点的误差都在0.01之内,误差的std大一点没关系,但不能出现误差大于0.01的情况。
02.预测集中的样本不能被加入到训练集中用于训练网络。
03.如果不用神经网络,也可以用支持向量机or主成分分析or 其它的方法,但要用matlab或c(我暂时只会这两种。)
04.程序要有注释,要有说明文档。
05.很可能在我看不懂注释和程序时,给于说明。
06.程序中需要设置的参数最好是自动找到的,如果不是,请最好给出设置的思路。使用神经网络进行预测
x_re_y_annpr.png
回复此楼

» 本帖附件资源列表

  • 欢迎监督和反馈:小木虫仅提供交流平台,不对该内容负责。
    本内容由用户自主发布,如果其内容涉及到知识产权问题,其责任在于用户本人,如对版权有异议,请联系邮箱:xiaomuchong@tal.com
  • 附件 1 : post_on_emuch.tar.gz
  • 2013-12-14 14:46:55, 11.76 M

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

唉。还是学吧。
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

fish.yfyh

铜虫 (小有名气)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★
感谢参与,应助指数 +1
meatball1982: 金币+10, 有帮助 2013-12-16 09:27:37
你这个很可能是overfitting了.
试试cross validation方法,以及Bayes regularization方法。
2楼2013-12-14 16:03:16
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

meatball1982

铜虫 (小有名气)

引用回帖:
2楼: Originally posted by fish.yfyh at 2013-12-14 16:03:16
你这个很可能是overfitting了.
试试cross validation方法,以及Bayes regularization方法。

谢谢fish.yfyh
01.请问,您提的两个方法中,测试的数据要被应用于训练过程中吗?
02.有没有关于这两种方法的资料,书or 论文or 课件都行,我学习一下。我在google上找了一下,比较笼统。
谢谢。
唉。还是学吧。
3楼2013-12-16 09:27:13
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

nono2009

超级版主 (文学泰斗)

No gains, no pains.

优秀区长优秀区长优秀区长优秀区长优秀版主

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ...
感谢参与,应助指数 +1
meatball1982: 金币+10, ★★★很有帮助 2013-12-16 12:40:05
meatball1982: 金币+80, ★★★很有帮助, 暂时还没解决,但有思路了。 2013-12-26 16:27:33
输入是的维数是253, 输出只有一维,隐层单元个数为69

意味着连接权系数(包括阈值)有(253+1)*69+(69+1)*1 = 17596 个,远远多于你的学习样本数。这合适吗?
4楼2013-12-16 10:17:07
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

meatball1982

铜虫 (小有名气)

引用回帖:
4楼: Originally posted by nono2009 at 2013-12-16 10:17:07
输入是的维数是253, 输出只有一维,隐层单元个数为69

意味着连接权系数(包括阈值)有(253+1)*69+(69+1)*1 = 17596 个,远远多于你的学习样本数。这合适吗?

谢谢nono2009的问题。
其实,我是尝试过隐层单元数为23的。效果还不如现在。
如果我的样本足够有代表性,没必要训练样本那么多吗。我觉得。而且样本数太大,训练网络也很是个问题。
唉。还是学吧。
5楼2013-12-16 12:39:55
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

fish.yfyh

铜虫 (小有名气)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ...
meatball1982: 金币+10, ★★★很有帮助 2013-12-16 14:03:23
meatball1982: 金币+80, ★★★很有帮助, 暂时还没解决,但有思路了。 2013-12-26 16:27:50
引用回帖:
3楼: Originally posted by meatball1982 at 2013-12-16 09:27:13
谢谢fish.yfyh
01.请问,您提的两个方法中,测试的数据要被应用于训练过程中吗?
02.有没有关于这两种方法的资料,书or 论文or 课件都行,我学习一下。我在google上找了一下,比较笼统。
谢谢。...

问题1:测试数据可以不用于训练,因为既训练又测试,那样没什么意义。
问题2: 关于cross validation(交叉验证)有很多很多资料,比如:http://en.wikipedia.org/wiki/Cross-validation_%28statistics%29,很多机器学习方面的书籍也都有。至于Bayes regularization,这个方法提及不是很多,但是在机器学习领域,regularization是经常用到的。
6楼2013-12-16 12:45:58
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

nono2009

超级版主 (文学泰斗)

No gains, no pains.

优秀区长优秀区长优秀区长优秀区长优秀版主

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★
meatball1982: 金币+10, ★★★很有帮助 2013-12-16 14:04:16
引用回帖:
5楼: Originally posted by meatball1982 at 2013-12-16 12:39:55
谢谢nono2009的问题。
其实,我是尝试过隐层单元数为23的。效果还不如现在。
如果我的样本足够有代表性,没必要训练样本那么多吗。我觉得。而且样本数太大,训练网络也很是个问题。...

神经网络本质也是一种数据回归模型。我们举个简单的例子

y=ax^2+bx+c,
有三个系数要回归,如果只给你1~2组数据,你觉得能回归好吗?

考虑到样本本身有误差,为了防止过拟合(或过学习),一般要求神经网络的训练样本数是连接权系数(包括阈值)的2~3倍。你用了太多的连接权系数(包括阈值),即使效果不错,风险仍然很高。
7楼2013-12-16 12:47:26
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

meatball1982

铜虫 (小有名气)

引用回帖:
6楼: Originally posted by fish.yfyh at 2013-12-16 12:45:58
问题1:测试数据可以不用于训练,因为既训练又测试,那样没什么意义。
问题2: 关于cross validation(交叉验证)有很多很多资料,比如:http://en.wikipedia.org/wiki/Cross-validation_%28statistics%29,很多机 ...

谢谢fish.yfyh.我先学习一下。
唉。还是学吧。
8楼2013-12-16 14:03:51
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

meatball1982

铜虫 (小有名气)

引用回帖:
7楼: Originally posted by nono2009 at 2013-12-16 12:47:26
神经网络本质也是一种数据回归模型。我们举个简单的例子

y=ax^2+bx+c,
有三个系数要回归,如果只给你1~2组数据,你觉得能回归好吗?

考虑到样本本身有误差,为了防止过拟合(或过学习),一般要求神经网络 ...

谢谢nono2009,
您说的很容易理解,我基本明白了。
我会按照你的意见进一步尝试。
唉。还是学吧。
9楼2013-12-16 14:05:09
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

D调沉迷学术

新虫 (初入文坛)

主成分分析单独应用也可以预测吗?不是用来降维筛选自变量的吗

发自小木虫Android客户端
10楼2017-08-28 00:48:21
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 meatball1982 的主题更新
信息提示
请填处理意见