基因组中的连接基因是否曾经被删除或只是被禁用?

人工智能 神经网络 深度学习 遗传算法 整洁的 神经进化
2021-11-02 07:13:07

添加新节点时,先前的连接将被禁用且不会被删除。

在此处输入图像描述

有没有去掉连接基因的情况?例如,在上图中,创新编号为 2 的连接基因不存在。这可能是因为其他一些基因组将该创新编号用于该基因组中不存在的不同连接。但是是否存在必须去除连接基因的情况?

2个回答

原始论文从来没有比禁用链接更进一步,但我在 github 上看到了确实有可能删除链接的实现。

python-neat就是这样一个例子。

当然,如果在您的实施中有意义,您可以删除这些基因。我可以看到您可能想要这样做的一些原因:

  • 您的基因组非常大,因此对禁用的基因进行一些修剪可能会加快算法速度
  • 你不想在未来重新启用基因(也许你有一个特殊的突变机制,可能会添加连接而不是基因,或者只是当它被禁用时它保持这样)

根据经验,如果算法可以处理大基因组,保持连接通常是一件好事。毕竟,您将来可能会重新启用它们(这些连接比创建新的随机连接更安全,因为后者可能会产生不需要的循环,因此您必须检查这一点)并且密集的 ANN 比稀疏的更好修剪过多可能对您不利。