首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用nnet()权重进行外部预测

使用nnet()权重进行外部预测
EN

Stack Overflow用户
提问于 2019-07-11 13:01:59
回答 1查看 77关注 0票数 0

请原谅在这个问题上没有可重复的代码!

我已经用NIR光谱上的(nnet)包创建了一个神经网络模型。我们的最终目标是在不保存模型的情况下将此模型实现到我们的仪器上,而是使用权重并在设备上重新创建逻辑;因为此设备不支持Python、R等软件。

神经网络结构是103-5-1,即103个输入,5个隐藏神经元和单个线性输出。

提取权重后,每个神经元有103个输入系数(103 * 5),每个神经元有5个偏差,神经元有5个系数,输出有一个偏差。

我一直在尝试用下面的逻辑在excel中复制我在R中执行的预测:

(i)将输入(N)乘以系数(N),对每个神经元求和并加偏置。

(ii)将神经元系数乘以(i)。

(iii)对所有神经元求和(ii)并添加输出偏差。

我没有成功,我尝试了其他方法,这些方法可能也是不正确的,但同样不成功,例如在(i)处对每个输入变量添加偏差,并将(ii)中的系数视为偏差。我分别尝试了这两种方法,然后将它们组合在一起。

隐藏层的函数应该是线性的,因为nnet()文档将公式列出为~ x1 + x2 + ...我保留了公式的默认设置。如上所述,我使用的是线性输出。此外,对于任何输入或神经元,都没有跳过逻辑。

我是不是错误地解释了nnet()模型中的权重?

b->h(n) =偏置到隐藏层n

i(n)->h(n) =向隐藏层n输入n个系数

b->o =输出偏置

h(n)->o =隐藏层n系数输出

任何帮助都将不胜感激!

谢谢,

编辑:我现在也尝试跳过nodes <=0,但仍然没有成功。

EN

回答 1

Stack Overflow用户

发布于 2019-07-12 09:40:39

我已经解决了我的问题,我忘记了在每个神经元上执行sigmoid函数。

干杯,

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56981908

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档