我以为我已经为人工神经网络(该领域的第一次尝试)实现了代码(从头开始,没有库)。但我觉得我错过了一些非常基本或明显的东西。
简而言之:代码对一对输入/输出值有效,但对一组值对无效。我不太了解培训过程。所以我想先解决这个问题。以下是我在伪代码中的即兴训练(也就是我能想到的所有内容)。
trainingData = [{in: [0,0], out:[0]}, {in: [0,1], out:[0]}, ...];
iterations = 10000
network = graphNodesToNetwork()
links = graphLinksToNetwork()
randomiseLinkWeights(links)
while(trainingData not empty) {
for(0<iterations) {
set = trainingData.pop()
updateInput(network, set.in)
forwardPropagate(network, links)
linkUpdate = backPropagate(network, links, set.out)
updateLinks(linkUpdate, links)}
}
这是它应该如何工作的吗?您是否按集(while-loop)输入您的训练数据集?
编辑1:因为我的最后评论确实分散了手头的问题。
编辑 2:更少罗嗦,更多代码