首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >神经网络开发

神经网络开发
EN

Stack Overflow用户
提问于 2016-11-24 08:14:43
回答 3查看 91关注 0票数 0

我试着写一个神经网络类,但我不完全理解它的某些方面。我有两个关于折叠设计的问题。

  1. 我做得对吗?偏置神经元需要连接到所有神经元(输入层除外)还是仅连接隐藏层中的神经元?
  2. 我的第二个问题是关于产值的计算。我用下面的方程来计算神经元的输出值。 HiddenLayerFirstNeuron.Value = (input1.Value *权重)+ (input2.Value *权重)+ (Bias.Value *权重) 在这个方程之后,我计算激活,结果发送输出。输出神经元也是如此。

我不知道我在做什么,我想解决问题。

EN

回答 3

Stack Overflow用户

发布于 2016-11-24 09:43:51

请看:西亚诺的http://deeplearning.net/tutorial/contents.html。这解释了所有你需要知道的多层感知器使用theano (符号数学库)。

票数 0
EN

Stack Overflow用户

发布于 2016-11-24 10:25:45

  1. 偏置通常连接到所有隐藏和输出单元。
  2. 是的,你计算激活函数的输入,就像权值之和*上一层神经元输出的总和。

(祝发展顺利;)

票数 0
EN

Stack Overflow用户

发布于 2016-11-25 00:03:10

  1. 每个隐藏层和输出层应该有一个单独的偏置神经元。将层看作一个应用于一阶多项式的函数,例如f(m*x+b)=y,其中y是您的输出,f(x)是您的激活函数。如果你看一下线性项,你就会认识到b。这代表了偏差,它的行为与神经网络相似,就像这种简化一样:它使超平面在空间上上下移动。请记住,每层都有一个偏差,它连接到该层f((wi*xi+b)+...+(wn*xn+b))的所有神经元,初始值为1。当谈到梯度下降时,你必须像训练正常体重一样训练这个神经元。
  2. 在我看来,您也应该将激活函数应用于输出层。这通常是用多层感知器完成的。但这实际上取决于你想要什么。例如,如果您使用逻辑函数作为激活函数,并且希望在间隔(0,1)中得到一个输出,那么您也必须将激活函数应用于输出。因为一个基本的线性组合,就像在你的例子中一样,理论上可以超越前面提到的Intervall的边界。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40781066

复制
相关文章

相似问题

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