求助啊,人工神经网络 数据降维

ucbest 2010-01-19 05:28:35
问题是这样的 ,,我现在搞的是 点焊的质量控制
现在我有 一个 焊点(只有一个焊点) 所对应的 三个参数 的数据 分别是
电流 ,压力 ,位移 每一个 参数 都有 272 个数据 如:
I (1,2,3…………272)
F (1,2,3…………272)
S (1,2,3…………272)
现在 我想用这三个参数的所有数据(这里只有一个焊点,当然还要作更多组数据) 作为 BP 网络的输入量 ,以焊点的 强度 作为输出量 来 训练网络 。我学神经网络不是很久,,我记得只能是一个列或者行向量 对应一个或者几个输出量,没有一外矩阵 对应一个输出量的吧,但是如果 我把 这三个参数 弄成一个列或行向量,那这个向量 就有816个元素,所以 想到了 降维,,于是 我就 把这些数据 三个一组 (如第一行就是: 1 1 1 2 2 2 3 3 3 4 4 4 ),组成了 一个 68*12 的 矩阵,然后用方差贡献率的方法 进行降维 ,就成了一个列向量,但是我总觉得不好,因为也可以是 34*24 的矩阵,等 ,所以这 没有 什么根据 ,为什么要组成这样的矩阵 ,,
所以 请 有 经验的 高手 们 帮帮忙了,,这种问题是怎么 解决的,,
先谢 过了,,,

...全文
522 22 打赏 收藏 转发到动态 举报
写回复
用AI写文章
22 条回复
切换为时间正序
请发表友善的回复…
发表回复
canoe982 2010-02-25
  • 打赏
  • 举报
回复
电流,位移,压力或其变化与焊核的强度之间是否存在定量或定性的关系描述呢?
winematrix 2010-02-25
  • 打赏
  • 举报
回复
在网上用feature selection/reduction 去找,应该有很多新方法. Matlab toolbox 也有现成的算法。
liuhaifeng1976 2010-02-17
  • 打赏
  • 举报
回复
你用过 matlab软件么
Z_123XS 2010-02-07
  • 打赏
  • 举报
回复
好像可以用VC来开发,我在网上见过有源码的啊
maguangzhi 2010-02-01
  • 打赏
  • 举报
回复
应该用协方差矩阵来
LeonTown 2010-01-26
  • 打赏
  • 举报
回复
还有就是,整个焊接过程的持续时间是多久,
如果时间是定值,或许可以考虑将这段时间离散化来建模。。。
LeonTown 2010-01-26
  • 打赏
  • 举报
回复
可能还需要先搞清楚,这三个输入量的相互间的变化关系,
是这三个量在一段时间内分别独立的变化,
还是会有相互的影响。
我在地球 2010-01-23
  • 打赏
  • 举报
回复
好好学习,天天向上
hityct1 2010-01-23
  • 打赏
  • 举报
回复
具体问题具体分析,在采用其他方法降维的情况下,如果一段时间内,所有数据的电流 ,压力 ,位移三个都变化不大的话(那他就对结果影响不大),可以在这段时间少采样几个数据,以达到降维的目的。
gnefuil 2010-01-21
  • 打赏
  • 举报
回复
我大概明白一点了,也就是说,272个抽样信息都是在描述一个输出,这3个变量在这段时间内的波动决定了最后的输出是什么,对不对?
这样的话,如果弄个大向量的话,BP神经网络就肯定不适用了。可以考虑用SVM进行预测,因为它和维数无关。
ucbest 2010-01-21
  • 打赏
  • 举报
回复
呵呵 我说了这么多也没有说 明白 ,我的意思 就是如 10楼 所 说: 这3个变量在这段时间内的波动决定了最后的输出 。呵呵。。我只想知道一个正确的能解决 这种 问题的方向,就可以了,也就是 一个 正确的思路,,剩下的 事 就好 搞了,。我开始是这样弄的:
我把 每一时刻所采集的数据 作为一组,即 每一组就有 3个数据 ,,当然 一共就有 272 组 ,然后组成一个矩阵,,这个矩阵 每一行 放 4组 。所以每一行就有 12个 数据 ,所以 一共就有 68行(一共有816个数据):比如
1 1 1 2 2 2 3 3 3 4 4 4
5 5 5 6 6 6 7 7 7 8 8 8
,…… …… …… ……
…… …… …… ……
就组成了 一个 68*12 的矩阵,
然后 就用 基于方差贡献率的方法进行降维,就得到了 一个 含有68个元素的 列向量,,呵呵,,我就把这 含有68个元素的列向量 作为 网络的输入 ,进行训练 。但是 在我开题 的时候 有的老师 就问我 你 把816个 数据 就 用 68个数据 代替了,这68个数据是什么(我也不知道是什么,呵呵)?? 为什么要组成68*12 的矩阵 ,不组成34*24 的矩阵(这样可能就得到了34个数据了)??,当时我也蒙了 ,为什么啊,我也不知道,,呵呵,,,,不过 这样 进行训练 后,仿真的结果, 好像,也可以接受,,,望 高手 指点一下 用其它 的渠道 解决,,,,
fire_woods 2010-01-21
  • 打赏
  • 举报
回复
樣本足夠多的話,PCA降維吧.
瓶盒 2010-01-21
  • 打赏
  • 举报
回复
mark
可以考虑降低图片分辨率的方式来减少输入,这样图的大至走向是不变的,相当于把几个采样点合并为一个点。
不过感觉神经网络处理连续的输入效果不大理想,只适于处理0、1类的输入。
ucbest 2010-01-20
  • 打赏
  • 举报
回复
【上一贴 错字太多,,呵呵,,】
首先谢谢各位。其实这是我论文的一部分,但是我的导师对这方面不懂,所以只有自己,查资料,感觉很是无助,但是没想到 在这里会有这么多的热心人帮忙,,首先说一下 我自己的想法,,
下面就是三曲线图。这个图是在一个焊核形成的过程中,所采集的数据绘制而成,它反应了在这个焊核形成过程中,电流,位移,压力的波动情况,但是 我们看到这样的曲线,还是不知道这个焊核 的质量(这里以强度到判断)到底怎么样,所以我就想建立一个网络,把这三个参数的实时数据作为输入量,以焊核的强度作为输出量,进行训练。训练完好以后,今后,只要一个焊点 焊完 再导入这三个参数的实时数据,就能得出这个焊点的强度。但是这和一般的BP 网络不同,因为它的输入量虽然只有三个参数,但是它不是,如一个焊点,电流50,压力30,位移20 ,强度就是200,然后多焊几个焊点拿去训练就完事了。这里是当电流,位移,压力,满足如图这样的走向,才能得出一个焊核的强度。而且这三者之间也是有一定的关系的。它其中的每一个参数都是随时间要变的,即本身就是一个二维的变量。

恭听各位意见,小弟不胜感激,今后如有,下载如,维普,万方,知网,上的资料,只要告诉小弟 名称,非常乐意效劳。
我学神经网络也没有学多久,可能有理解错误的地方,老师不懂,周围同学就更别说了,,望各位指点迷津………………
ucbest 2010-01-20
  • 打赏
  • 举报
回复
首先谢谢各位。其实这是我论文的一部分,但是我的导师对这方面不懂,所以只有自己,查资料,感觉很是无助,但是没想到 在这里会有这么多的热心人帮忙,,这先说一下 我自己的想法,,
下面就是三曲线图。这个图是在一个焊核形成的过程中,所采集的数据绘制而成,它反应了在这个焊核形成过程中,电流,位移,压力的波动情况,但是 我们看到这样的曲线,还是一知道这个焊核 的质量(这里以强度到判断)到底怎么样,所以我就想建立一个网络,把这三个参数的实时数据作为输入量,以焊核的强度作为输出量,进行训练。训练完好后,今后,只要一个焊点一焊完导入这三个参数的实时数据,就能得出这个焊点的强度。但是这和一般的BP 网络不同,因为它的输入量虽然只有三个参数,但是它不是,如一个焊点,电流50,压力30,位移20 ,强度就是200。然后多焊几个焊点拿去训练就完事了。这里是当电流,位移,压力,满足如图这样的走向,才能得出一个焊核的强度。而且这三者之间也是有一定的关系的。所以它的其中的一个参数是随时间要变的,即本生就是一个二维的变量。

恭听各位意见,小弟不胜感激,今后如有,下载如,维普,万方,知网,上的资料,只要告诉小弟 名称,非常乐意效劳。
因为 ,我学神经网络也没有学多久,可能有理解错误的地方,老师不懂,周围同学就更别说了,,



gnefuil 2010-01-20
  • 打赏
  • 举报
回复
你的数据的维数只有3,一共272个抽样数据。
对于简单的BP网络来说,输入层的神经元个数为3,中间层的个数可以自己指定。
不太了解你的输出是什么。如果预测或者拟合一个变量的话,输出层有一个神经元。
然后用这些抽样数据进行训练
LeonTown 2010-01-20
  • 打赏
  • 举报
回复
是不是理解错了。。。

感觉你的系统一次实际上就是3个参数,
只不过进行了272次,或10次取样,形成了272组,或10组样本而已。。。
ucbest 2010-01-20
  • 打赏
  • 举报
回复
呵呵 很是感谢 各位,,我也觉得 这 不是很好懂,,是这样的 虽然只有三个参数 但是每一参数 就有 272个数据 ,,所以 一共就有 816 个数据
(1,2,3,…………,272 ,1,2,3,…………,272 ,1,2,3,…………,272)
这是272个电流数据 这是272个压力数据 这是272个位移数据
所以一共就有 816 个数据
主要是 数据太多了,,想通过 数据降维的方法 去除一些数据,这和信号 降噪又不一样 因为这些数据已
经处理过了,这里就是要反应出 数据的波动性。

这三个参数的数据 是在一个焊核 形成的 时间内 所采集的 数据,比如一个焊核形成时间是10秒,在第1秒时同时采集三个参数的数据,在第2秒时又采集一次 ………………同理在第10时又采集一次。所以最后就形成了
1,2,3,…………101,2,3,……………101,2,3,…………10
这是10个电流数据 这是10个压力数据 这是10个位移数据


hityct1 2010-01-20
  • 打赏
  • 举报
回复
没看懂。
电流 ,压力 ,位移,总共才3维啊?
最好给几个例子,输入及输出。
  • 打赏
  • 举报
回复
我觉得不能这样降维,但是也不知道该怎么做,忘了哎
加载更多回复(2)

33,010

社区成员

发帖
与我相关
我的任务
社区描述
数据结构与算法相关内容讨论专区
社区管理员
  • 数据结构与算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧