Backprop和前向传递神经网络

时间:2018-05-15 05:04:52

标签: machine-learning neural-network backpropagation gradient-descent bias-neuron

我正在尝试设计一个简单的神经网络,但我遇到了一些问题。 当我使用ReLU时,我的输出保持收敛到0.5,当我使用sigmoid函数时,我的输出保持收敛到0.7。 请建议我:

  1. 还有其他方法可以初始化权重和偏差吗?我正在随机初始化它。

  2. 我是否需要在每次正向传递后执行反向传递,或者我应该采取平均操作错误并在纪元结束时更新它?

  3. 我是否需要在输入图层中使用偏见?

  4. 我是神经网络的新手。请帮忙。

1 个答案:

答案 0 :(得分:3)

  

有没有其他方法来初始化权重和偏差?我正在随机初始化它。

是的,通常随机初始化权重。然而,存在用于选择方差的不同技术,例如, Xavier初始化,He初始化等(参见this discussion)。

偏见有点不同。与权重不同,用零来初始化它们是完全可以的。在基于ReLu的网络中,使用略微正数来确保大多数激活是积极的,至少在初始时并且反向传播错误是常见的。但随机init通常也能正常工作。

  

我是否需要在每次前进后执行backprop,或者我应该采取平均操作错误并在纪元结束时更新它?

在经典算法中,是的。我们的想法是迭代地评估和更新网络。但是,您可以为小批量而不是单个实例执行这两种操作,如果这是您所描述的内容,则它可以更有效地工作。但是在一次向后传球之前做几次前锋传球并不常见,只会减慢训练速度。

  

我是否需要在输入图层中使用偏差?

偏差与重量一起出现在线性层中。数据本身无偏见地传递到第一层。