Machine learning 神经网络评价与拓扑

Machine learning 神经网络评价与拓扑,machine-learning,neural-network,topology,Machine Learning,Neural Network,Topology,我的目标是用神经网络解决异或问题。我读过无数关于多层神经网络背后的理论、证明和数学的文章。这个理论是有道理的(数学…不是很多),但我有几个关于神经网络的评估和拓扑结构的简单问题 我觉得我很接近解决这个问题,但我开始质疑我的拓扑和评估技术。撇开反向传播的复杂性不谈,我只想知道我的评估方法是否正确。考虑到这一点,以下是我的问题: 假设我们有多个输入,每个输入是否都有自己的节点?我们是否将两个值都输入到一个节点中?我们输入此信息的顺序是否重要 在评估图形输出时,每个节点是否在获得值后立即触发?或者我们

我的目标是用神经网络解决异或问题。我读过无数关于多层神经网络背后的理论、证明和数学的文章。这个理论是有道理的(数学…不是很多),但我有几个关于神经网络的评估和拓扑结构的简单问题

我觉得我很接近解决这个问题,但我开始质疑我的拓扑和评估技术。撇开反向传播的复杂性不谈,我只想知道我的评估方法是否正确。考虑到这一点,以下是我的问题:

  • 假设我们有多个输入,每个输入是否都有自己的节点?我们是否将两个值都输入到一个节点中?我们输入此信息的顺序是否重要

  • 在评估图形输出时,每个节点是否在获得值后立即触发?或者我们从上面的层中收集所有的值,然后在消耗完所有的输入后触发

  • 评估的顺序重要吗?例如,如果层“b”中的给定节点已准备好启动,但同一层中的其他节点仍在等待输入,那么就绪节点是否仍应启动?还是应该在触发之前加载层中的所有节点

  • 是否应将每一层连接到下一层中的所有节点

  • 我附上了一张照片,这有助于解释我的一些问题

    谢谢你抽出时间

    1)是的,每个输入都有自己的节点,并且该节点始终是该输入类型的节点。顺序不重要——你只需要保持一致。毕竟,一个未经训练的神经网络可以学习将任何一组线性可分离的输入映射到输出,因此不可能有一个顺序,你需要把节点按顺序排列,这样它才能工作

    2和3)在激发下一层中的任何节点之前,需要收集单个层中的所有值。如果您使用的是除逐步激活函数以外的任何激活函数,这一点很重要,因为输入的总和将影响向前传播的值。因此,在传播任何内容之前,您需要知道该总和是多少


    4) 哪些节点要连接到哪些其他节点取决于您。由于您的网络不会过大,XOR是一个相当简单的问题,因此将一层中的所有节点连接到下一层中的所有节点(即完全连接的神经网络)可能是最简单的方法。在其他问题中,可能有一些特殊情况下,最好不要使用这种拓扑结构,但没有一种简单的方法来解决它(大多数人要么使用试错法,要么使用遗传算法,就像在NEAT中一样),您无需为此问题担心。

    感谢您的快速响应和良好信息!虽然问题很简单,但你会惊讶于这种类型的东西有多少没有真正定义清楚:)我很感谢你的回答。通过使用整洁的方式,通过变异引入的新(隐藏)节点没有被划分为级别。结果是隐藏节点的连接方式可能存在循环/循环/重复。在评估过程中如何处理这个问题?有趣的是:这是唯一一个演示如何将神经网络进化为异或门的演示