- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我一直在阅读《增强拓扑的神经元进化》,有一件小事一直困扰着我。在阅读 Kenneth Stanley 的 NEAT 论文时,我发现了这个数字:
第一次突变时,创新数字从 1,2,3,4,5,6 变为 1,2,3,4,5,6,7。
在第二个中,它从 1,2,3,4,5,6 变为 1,2,3,4,5,6,8,9。
我的问题是为什么它跳过数字 7 并直接上升到 8?我没有找到任何与删除创新编号相关的内容。
第二个数字也是如此,亲本 1 是如何丢失 6,7 的,而亲本 2 中的第 8 个基因去了哪里?
最佳答案
创新编号(我将简称为 IN)是一种特定结构的标签。因此,从 1 号神经元到 2 号神经元的连接将有一个 IN,例如1 并且具有该连接的所有网络都会将此连接标记为 IN 1。当创建新连接时(通过添加连接突变或添加节点突变),首先检查在“数据库”中是否存在这样的连接IN。如果已经存在这样的连接,则使用其 IN。如果不是,则增加 IN 计数器,新连接获取此新 IN 并存储在数据库中。
在上半部分的第一张图中,从神经元 3 到神经元 5 添加了一个新连接。如果这是整个群体中出现的第一个这样的连接,则增加 IN 计数器并使用这个新的 IN那个连接。如果它已经在其他地方发生过,您可以使用它的 IN 而不是创建一个新的。可能是这两种情况,我们不知道其他人是什么样子。恰好连接 3->5 有 IN 7。
现在,在第一张图的底部,您在神经元 3 和 4 之间添加了一个神经元 6,这意味着您添加了连接 3->6 和 6->4。同样,您首先询问“数据库中是否有连接 3->6 的 IN?”如果是,则使用该 IN,如果不是,则增加计数器。其他连接也是如此。在该图中,您可以想象所有这些新连接都是新连接,因此在上部,IN 计数器为 6,对于尚未遇到的新连接,您增加了 IN 计数器并将 7 分配给该连接。然后发生了底部部分,有两个全新的连接,因此您将 IN 计数器增加到 8 和 9。在底部部分,没有连接 3->5 有 IN 7,所以这就是 IN 7 不存在的原因那里。
关于第二张图,它只是一个示例,用于展示当存在不相交的 IN 时交叉是如何工作的。 parent 就是这样,只是为了举例而已。然而,他们本来可以很容易地达到这种状态。想象一下,在进化的某个早期时间点,父代 1 只有 IN 1 到 5,而 5 是迄今为止最新的 IN。然后,在群体的其他地方,在神经元 5 和 4 之间添加了一个新神经元(6 号),即创建了新连接 5->6 和 6->4。由于还没有遇到这样的连接,IN 计数器增加到 6 和 7。然后,在此之后,通过添加新连接 1->8 来改变父 1。由于这也是新的,因此分配了新的 IN 8。
关于machine-learning - 神经进化 : NEAT algorithm innovation numbers,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41985169/
我正致力于从头开始实现 NEAT,并且偶然发现了一个我找不到具体答案的问题。在所有其他网络都被指定之后,NEAT 算法如何响应其中只有一个成员的物种? 我已经想到了几个可能的答案,如果有任何额外的见解
似乎我的程序正在尝试学习直到某个点,然后它就感到满意并且根本停止改进和改变。通过我的测试,它通常最多达到 -5 的值,然后无论我让它运行多久,它都会保持在那里。结果集也不会改变。 只是为了跟踪它,我做
我通读了 NEAT paper我现在了解算法了。 但是有一件事我还不清楚。突变何时发生以及如何发生?是加节点还是加连接变异怎么选择呢?此外,如何选择网络中发生突变的位置(在哪些连接之间)? 最佳答案
我正在尝试实现简单的 NEAT。我从各种来源了解到有 4 种类型的“节点”:输入神经元、隐藏神经元、输出神经元和所谓的偏置神经元。我看不到哪个过程可能会产生偏差神经元,这在 this paper 中有
我正在阅读 Stanley 的论文,但我无法弄清楚 NEAT 中的 Disjoint 和 Excess 基因到底是什么。我知道它们似乎以某种特定方式与以下事实相关:它们都包含与 parent 双方无关
在 Java 版本的 Encog 中,如何保存 NEAT 网络及其训练?我希望能够关闭我的软件并在下次运行它时从中断处恢复训练。 我有一个 NEATPopplation、CalculateScore
我正在从以下论文中了解 NEAT:http://nn.cs.utexas.edu/downloads/papers/stanley.ec02.pdf 我无法理解调整后的适应度如何惩罚大型物种并防止它们
我一直在阅读 NEAT(增强拓扑的神经进化)的工作原理,并且已经了解了它的主要想法,但一直困扰我的一件事是如何将不同的网络划分为物种。我已经完成了该算法,但它对我来说没有多大意义,而且我读的论文也没有
据我所知,NEAT(NeuroEvolution of Augmenting Topologies)是一种利用进化概念来训练神经网络的算法。另一方面,强化学习是机器学习的一种,其概念是“奖励”更成功的
我第一次使用 bourbon neat,它的表现并不完全符合我的预期 - 这可能意味着我设置错误。 我正在开发移动设备优先,所以我希望我的布局在我的桌面断点和我的较大断点之间保持相同(以便样式级联到下
我的 CSS 中有以下内容: body { @include outer-container; color: $Dark-Blue; background-color: $Light
我正在尝试制作一个基于 Bourbon Neat 网格的响应式网站。当我将自己计算机上的浏览器大小调整为手机大小时,我的媒体查询工作正常,但是当我在手机上加载网站时,没有任何移动更改出现。 我现在有以
我刚开始使用 Bourbon Neat,对断点的工作原理有疑问。在我的 grid_seeings.scss 中,我设置了如下断点: $xsm: new-breakpoint(min-width 300
有没有人想出如何使用 Bourbon Neat 创建一个固定在页面底部的页脚,同时保持它的响应性? 所有著名的粘性页脚解决方案都与 Neat 不“兼容”。 最佳答案 我在几个使用 Bourbon Ne
我查看了 Bourbon Neat 的示例响应式网格。据我所知,我正在正确使用它。 问题 标签都占据了自己的一行,就好像我把它们都做了一样 span-columns(12) 我的猜测是我没有正确嵌套元
这是多年前在 Neat github 上提出的问题。那里的用户非常全面地描述了这个问题,并附有图片:https://github.com/thoughtbot/neat/issues/99 本质上,我
我是 Neat/Bourbon 的新手,正在尝试使用 Codekit 进行设置,以便我可以开始构建一些很棒的网格! 我通过将 @import "neat"; 插入到我的主 SCSS 文件中,使用内置的
在我看来,Neat 的默认行为应该是每个跨度列在相邻跨度列之间应该有一个边距(或间距)。我在网上找到的每个示例都只是简单地安装了 Neat,做了一个快速演示,结果在相邻元素之间出现了一个间距。没有更改
我正在研究基于 NEAT algorithm 的神经网络学习演奏 Atari Breakout在 Python 2.7 中进行克隆,我的所有部分都可以正常工作,但我认为可以通过更好的算法来计算物种适应
我已经升级到 Bourbon Neat v2其中包括在容器网格的左侧和右侧添加排水沟。 在 v1我可以用 block-collapse在 span-columns然而,在 v2 中,mixin 会吃掉
我是一名优秀的程序员,十分优秀!