¿Puede alguien decirme cómo se supone que debo construir una red neuronal utilizando el método por lotes?
He leído que, en el modo por lotes, para todas las muestras del conjunto de entrenamiento, calculamos el error, el delta y, por tanto, los pesos delta para cada neurona de la red y, a continuación, en lugar de actualizar inmediatamente los pesos, los acumulamos y, después, antes de iniciar la siguiente época, actualizamos los pesos.
También leí en alguna parte que el método por lotes es como el método en línea, pero con la diferencia de que sólo hay que sumar los errores de todas las muestras del conjunto de entrenamiento y luego sacar la media y utilizarla para actualizar los pesos, igual que se hace en el método en línea (la diferencia es sólo la media), así:
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
- ¿Cuál de estos es realmente la forma correcta del método por lotes?
- En el caso de la primera, ¿acumular todos los pesos delta no da como resultado un número enorme?