神经网络层设计

Posted

技术标签:

【中文标题】神经网络层设计【英文标题】:Neural Network layer design 【发布时间】:2012-09-22 11:56:01 【问题描述】:

我对神经网络有点陌生。这是我在 Matlab 中尝试过的一段代码

P= 0 + (rand(1) * 10);
T = (P-1)/(P+1);
net = newelm(P,T,5);
net = train(net,P,T);
Y = sim(net,P);

现在,当我在 matlab 的命令窗口中输入 net.B1 和 net.LW1 时,我得到了偏置权重和层权重,但我也发现这些权重值会根据输入值不断变化.

所以我可以为特定函数(以及任何输入值)设置一个不会改变的预定义权重值,这样我就可以使用这些权重值为特定函数设计一个神经网络。就像这里一样,我有 T,它通过一个特定的方程与 P 相关。

【问题讨论】:

【参考方案1】:

如果您的某个输入与输出变量具有已知关系,请将其从网络中取出,而不是创建复杂的解决方法,例如修复网络权重。 (由于网络内部的可变交互和非线性变换,它变得复杂。)

例如

Y = a*X1 + 3.6*X2  # relationship between Y and X2 is known

然后在这个关系上使用神经网络:

Y - 3.6*X2 = a*X1
^^^^^^^^^^   ^^^^
[target]     [input]

【讨论】:

感谢您的回复,但我怀疑您是否有我的问题。在我上面编写的代码中,对于 P 的特定值,我得到 T,它与上面给出的 P 有关系。现在,当我尝试读取权重时,不同的 P 不同,这是显而易见的。现在有没有机会我可以获得恒定的权重值,例如对于特定函数,即对于加法或减法函数,我可以在网络中拥有一组特定的权重,当我向该网络提供 2 个输入时,我如果是加法或减法函数,则获取这两个输入的和或差。

以上是关于神经网络层设计的主要内容,如果未能解决你的问题,请参考以下文章

BP神经网络设计

软考 系统架构设计师系统安全分析与设计③ 网络安全

iOS应用架构谈 网络层设计方案

无线传感器网络原理及方法 啥是分层设计,啥是跨层设计

如何设计深度卷积神经网络? [关闭]

三层网络结构(核心层 汇聚层 接入层)