如何为逻辑或训练神经网络?

How to train a neural network for the logical OR?

所以我了解了网络的架构。它将是两个输入神经元,x1 和 bias。假设我们给偏差赋予 10 的权重,给 x1 赋予 -20 的权重。如果 x1 为 0,则 sigmoid(10) = 1。如果 x1 为 1,则 sigmoid(-10) = 0.

我试图在 Matlab/Octave 中实现它,但我不知道如何实现。

首先请记住,您需要 2 个输入和偏差,因此您可以拥有所有可能的选项 (0,0)、(0,1)、(1,0) 和 (1,1) ).只有一个输入神经元和偏差,您无法创建所有可能的输入。

然后您随机设置权重并开始训练,方法是转发输入并使用反向传播算法修正权重。要开始使用,我建议您遵循本教程 http://iamtrask.github.io/2015/07/12/basic-python-network/,您将学习如何训练简单的神经网络及其工作原理。

教程在python中,但是它真的很简单,很有用。