进化神经网络

  • 含义
  • 人工和进化的区别
  • 人工神经网络
  • 进化神经网络
  • 参数进化神经网络
  • 结构进化神经网络
  • 网络进化的不同方法
  • 固定结构更新参数
  • 结构和参数都更新


含义

将进化的思想用于神经网络参数迭代或者结构设计的过程中。

人工和进化的区别

人工神经网络

人工设计网络模型,将数据输入网络进行前向传播,得到预测值,根据网络输出的预测值和真实值(GT)的误差,计算出梯度反传到网络各层更新参数。
梯度下降的方式更新网络,收敛更快(每次迭代通过梯度指明最优方向),但容易陷入局部最优解。

进化神经网络

原始个体创建新的个体,没有梯度反传这一步。收敛慢,但不容易陷入局部最优解,天生的并行特性可以加快训练。

参数进化神经网络

通过一组预测值与真实值的误差,得到一组参数的优劣性,通过某种遗传或者进化规则,生成下一代更优的参数。

结构进化神经网络

通过一组预测值与真实值的误差,得到一组网络结构的优劣性,通过某种遗传或者进化规则,生成下一代更优的网络结构。

网络进化的不同方法

固定结构更新参数

通过适者生存法则,通过不断变异得到使输出结果更贴近真实值的网络参数。

结构和参数都更新

遗传算法的思想,对父代种群,交叉和变异产生子代种群,对子代进行适者生存的淘汰。
参考文章:NEAT 变异:加新的连接或者加新的节点
交叉:孩子是父母的并集。