神经网络进化优化技术解析
在神经网络的训练过程中,Hebb规则是常用的训练规则,但反向传播中的学习率和动量等参数因任务而异,难以调整。因此,人们积极研究进化方法来学习合适的参数,以及使用进化计算寻找比Hebb规则更通用的训练规则。
1. NEAT和HyperNEAT
NeuroEvolution of Augmenting Topologies(NEAT)是神经进化的典型例子,它能有效优化神经网络的结构和参数。在许多问题上,NEAT的性能优于传统方法。NEAT通过逐代增加少量小网络的复杂度,实现可变网络结构的进化。
1.1 NEAT的基因型与表型
NEAT中,基因型由两部分组成:
- 节点信息:包含输入节点、隐藏节点和输出节点的列表。
- 链接信息:连接节点对的弧的列表,包含弧的起止节点描述、链接权重、弧是否启用的标志以及ID号。
例如,在某个示例中有三个输入节点、一个隐藏节点和一个输出节点。虽然链接信息中描述了七条弧,但第二条弧被禁用,在表型中不表达。
1.2 NEAT的突变类型
NEAT包含两种自发突变:
- 节点添加
- 弧添加
新基因分配ID号时,ID号序列严格递增。例如,添加新弧时,新基因(弧)会被分配下一个可用的ID号;移除弧时,先禁用该弧,再添加新的弧基因,并在两弧间添加新节点,节点信息作为新基因记录。
1.3 NEAT的基因交叉
基因交叉时,子代继承亲代的基因并保留相同的ID号,这样可以追踪每个基因的历史。亲代1和亲代2基因ID号有共同部分时,匹配的基因随机继承;不匹配的不相
超级会员免费看
订阅专栏 解锁全文
2222

被折叠的 条评论
为什么被折叠?



