我正在尝试设计一个简单的神经网络,但我面临一些问题。当我使用 ReLU 时,我的输出不断收敛到 0.5,而当我使用 sigmoid 函数时,我的输出不断收敛到 0.7。请建议我:
还有其他初始化权重和偏差的方法吗?我正在随机初始化它。
我是否需要在每次前向传递后执行反向传播,或者我应该采用平均操作错误并在 epoch 结束时更新它?
我需要在输入层中使用偏差吗?
我是神经网络的新手。请帮忙。
我正在尝试设计一个简单的神经网络,但我面临一些问题。当我使用 ReLU 时,我的输出不断收敛到 0.5,而当我使用 sigmoid 函数时,我的输出不断收敛到 0.7。请建议我:
还有其他初始化权重和偏差的方法吗?我正在随机初始化它。
我是否需要在每次前向传递后执行反向传播,或者我应该采用平均操作错误并在 epoch 结束时更新它?
我需要在输入层中使用偏差吗?
我是神经网络的新手。请帮忙。
还有其他初始化权重和偏差的方法吗?我正在随机初始化它。
是的,随机初始化权重是很常见的。但是,选择方差有不同的技术,例如 Xavier 初始化、He 初始化等(参见此讨论)。
偏见有点不同。与权重不同,用零初始化它们是完全可以的。在基于 ReLu 的网络中,通常使用稍微正数来确保大多数激活是正数,至少在初始时是正数,并反向传播错误。但随机初始化通常也可以。
我是否需要在每次前向传递后执行反向传播,或者我应该采取平均操作错误并在 epoch 结束时更新它?
在经典算法中,是的。这个想法是迭代地评估和更新网络。但是您可以对小批量执行这两种操作,而不是单个实例,如果这就是您所描述的,并且它更有效地工作。但是在一次向后传球之前进行几次向前传球并不常见,它只会减慢训练速度。
我需要在输入层中使用偏差吗?
偏差与权重一起出现在线性层中。数据本身没有偏差地传递到第一层。