我正在制造一种具有神经元和“突触”的神经网络。它类似于turings类型b网,连接可以去任何地方。它始于随机生成的网络,在神经元之间有随机连接。电化学和化学变体都对神经元有不同的影响。要点:
网络基本上是一系列与其他神经元连接的神经元。我无法弄清楚如何根据表现最好的父母来做“交叉”以形成新一代的网。更具体地说,如果我基于单个连接组合它们,我将打破任何可能由某组神经元和连接形成的潜在“结构”或功能。
我考虑拆分网络地图,比如从一个父节点取一半,从另一个父节点取一半,但这可能仍会破坏可能已创建的任何潜在函数。
我很可能错过了一些东西,我正在学习这一点。
有没有办法做到这一点?
答案 0 :(得分:1)
如果您正在改进网络结构和权重,那么有一种称为NEAT的优秀算法。
如果您只是在改进权重,那么您有几种可能性,但最基本的是使用网络图的权重矩阵作为基因型。然后,可以使用任何连续的GA交叉方法完成交叉,如SBX或BLX-alpha。
破坏功能(最常见的是通过突变)的问题是常见的,并且可以通过例如解决方案来解决。健身共享(NEAT使用它)或其他一些保护被修改个体一定时间的机制。