我正在尝试编写自己的 NEAT 实现,但我被困在计算网络输出的网络评估函数上。
你可能知道,NEAT 包含一组神经网络,通过添加新节点和新连接,拓扑结构不断演变。但是随着之前未连接的节点之间增加了新的连接,我看到一个我去评估的时候会出现问题,我用一个例子来解释一下:
INPUTS = 2 yellow nodes
HIDDEN = 3 blue nodes
OUTPUT = 1 red node
在图像中添加了一个连接 node3 到 node5 的新连接,如果我还没有计算 node3 的输出,我该如何计算 node5 的输出,这取决于 node5 的输出?
(不考虑激活函数)
node5 output = (1 * 0.5) + (1 * 0.2) + (node3 output * 0.8)
node3 output = ((node5 output * 0.7) * 0.4)