Обновление элементов массива
привет
Я пытаюсь обновить элементы массива, но он работает неправильно
например у меня есть этот массив:
static double[,] weigh = { { 0.05, 0.1 }, { 0.2, 0.2 }, { 0.5, 0.5 } };
и я пытаюсь выполнить это на нем:
for (k = 0; k < 2; k++) { if (z_input[k] > 0.0) { bias[k] = bias[k] + 0.5 * (-1.0 - z_input[k]); weigh[k, 0] += (0.5 * (-1.0 - z_input[k]) * input1); weigh[k, 1] += (0.5 * (-1.0 - z_input[k]) * input2); } }
он выполняет на Ж[0,0] и W[0,1] правильно, но дайте мне Вт[1,0] и W[1,1] неправильно!
что с ним не так?
Помоги мне
спасибо
Что я уже пробовал:
static int[,] input = { { 1, 1 }, { 1, -1 }, { -1, 1 } }; static int[] target = { -1, 1, 1 }; static double[,] weigh = { { 0.05, 0.1 }, { 0.2, 0.2 } }; static double[] vector = { 0.5, 0.5 }; static double[] bias = { 0.3, 0.15, 0.5 }; static bool epoch = true; static int input1 = 0, input2 = 0; static int k = 0; static double[] z_input = new double[2]; static int[] z_layer = new int[2]; static double y_input; static int y;
if (target[j] == -1) { for (k = 0; k < 2; k++) { if (z_input[k] > 0.0) { bias[k] = bias[k] + 0.5 * (-1.0 - z_input[k]); weigh[k, 0] += (0.5 * (-1.0 - z_input[k]) * input1); weigh[k, 1] += (0.5 * (-1.0 - z_input[k]) * input2); } } }
LLLLGGGG
Он не обновляет элемент массива или он обновляет их, но значение не то, что вы хотите?
amir.nazarizadeh
он обновляется, но когда начинается вторая итерация цикла (k=1), он обновляет вес неправильно!