Alguém pode me dizer como eu devo construir uma rede neural usando o método batch?
Li que, no modo batch, para todas as amostras do conjunto de treinamento, calculamos os pesos de erro, delta e, portanto, delta para cada neurônio na rede e, em vez de atualizar imediatamente os pesos, os acumulamos e antes de iniciar Na próxima época, atualizamos os pesos.
Também li em algum lugar que, o método em lote é como o método on-line, mas com a diferença, é necessário somar os erros para todas as amostras no conjunto de treinamento e, em seguida, calcular a média e usá-lo para atualizar os pesos da mesma forma que alguém faz no método online (a diferença é exatamente essa média) assim:
for epoch=1 to numberOfEpochs
for all i samples in training set
calculate the errors in output layer
SumOfErrors += (d[i] - y[i])
end
errorAvg = SumOfErrors / number of Samples in training set
now update the output layer with this error
update all other previous layers
go to the next epoch
end
- Qual deles é realmente a forma correta de método em lote?
- No caso do primeiro, acumular todos os pesos delta resulta em um número enorme?