神经网络中神经元的进化
Evolution of neurons in Neural Network
我最近开始对 AI,尤其是神经网络和 GA 产生了浓厚的兴趣,我想构建一个小型 AI 来处理问题。
我研究了这个主题,我认为我对非增长神经网络如何工作以及它们的权重如何演变有足够的了解,但我找不到关于如何确定网络是否需要生成新神经元的解释,并且我应该从多少开始等等。
P.S。
我是一名计算机科学专业的学生,职业是程序员,所以我对算法和图形有很好的了解,但我还没有学习AI。
遗传算法不会'determine'如果应该添加或删除一个神经元,它是随机发生的,当它产生积极影响时,它会留在后代 - 生存最适者。
NEAT 论文从一个只有输入节点和输出节点的网络开始。然后它进化出越来越多的节点和连接,但是是随机的(mutationRate
)机会!
我已经在 javascript 中实现了这一点,所以如果您想了解网络如何演变成异或门,请查看 this。
起始神经元数很难定义。 Scientisc 通常使用直觉或 gentic algoritm 描述上层来定义它。如果您使用第一个选项并且网络无法正常工作:
1.(神经元太多,网络快速学习学习示例但遇到类似问题的问题)制作新的更小的网络并学习它。
2.(太少的神经元,网络有很大的错误结束,这在学习过程中不能更小)尝试在现有网络中添加新的神经元和小权重并继续学习(像其他人一样连接)或制作新的更大的网络并开始新的学习。您也可以尝试添加新图层。
输入
莱尔 1> 莱尔 2> l 3...
output leyer 可能是个例外。
使用所有连接
在文献中通常推荐 3 层,但我的实验表明 4 层具有更好的泛化能力。
我最近开始对 AI,尤其是神经网络和 GA 产生了浓厚的兴趣,我想构建一个小型 AI 来处理问题。 我研究了这个主题,我认为我对非增长神经网络如何工作以及它们的权重如何演变有足够的了解,但我找不到关于如何确定网络是否需要生成新神经元的解释,并且我应该从多少开始等等。
P.S。 我是一名计算机科学专业的学生,职业是程序员,所以我对算法和图形有很好的了解,但我还没有学习AI。
遗传算法不会'determine'如果应该添加或删除一个神经元,它是随机发生的,当它产生积极影响时,它会留在后代 - 生存最适者。
NEAT 论文从一个只有输入节点和输出节点的网络开始。然后它进化出越来越多的节点和连接,但是是随机的(mutationRate
)机会!
我已经在 javascript 中实现了这一点,所以如果您想了解网络如何演变成异或门,请查看 this。
起始神经元数很难定义。 Scientisc 通常使用直觉或 gentic algoritm 描述上层来定义它。如果您使用第一个选项并且网络无法正常工作: 1.(神经元太多,网络快速学习学习示例但遇到类似问题的问题)制作新的更小的网络并学习它。 2.(太少的神经元,网络有很大的错误结束,这在学习过程中不能更小)尝试在现有网络中添加新的神经元和小权重并继续学习(像其他人一样连接)或制作新的更大的网络并开始新的学习。您也可以尝试添加新图层。
输入 莱尔 1> 莱尔 2> l 3...
output leyer 可能是个例外。 使用所有连接 在文献中通常推荐 3 层,但我的实验表明 4 层具有更好的泛化能力。