# Backpropagate error and store in neurons def backward_propagate_error(network, expected): for i in reversed(range(len(network))): layer = network[i] errors = list() # calculate the loss forr each layer if i != len(network)-1: ... # ∂L/∂a of the hidden layer for neuron in network[i + 1]: error += (neuron['weights'][j] * neuron['delta']) errors.append(error) else: ...