rendered paste body public static void calc_errorterm(Neuron [] l_neurons, Neuron [] r_neurons) { //version 1 /* for(int i = 0; i < l_neurons.length; ++i) { float sum = 0; for(int j = 0; j < r_neurons.length; ++j) for(int k = 0; k < r_neurons[j].back_neurons.length; ++k) { if(r_neurons[j].back_neurons[k] == l_neurons[i]) sum = sum + r_neurons[j].weights[k] * r_neurons[j].ev; } l_neurons[i].ev = l_neurons[i].value * (1f - l_neurons[i].value) * sum; } */ //version 2 for(int i = 0; i < l_neurons.length; ++i) l_neurons[i].ev = 0; for(int i = 0; i < r_neurons.length; ++i) for(int j = 0; j < r_neurons[i].back_neurons.length; ++j) r_neurons[i].back_neurons[j].ev += r_neurons[i].weights[j]; for(int i = 0; i < l_neurons.length; ++i) l_neurons[i].ev = l_neurons[i].value * (1f - l_neurons[i].value) * l_neurons[i].ev; }