"> {Neuron1 [] Neironu; n = 1;
double so = 0.01;// швидкість обученіяSloy1 ()// створення мережі
{= 1; = new Neuron1 [n]; (int i = 0; i
{[i] = new Neuron1 (); [i]. setWeight ();// установка ваг за замовчуванням
}
} Sloy1 (int n, int vhodi)// перевантаження функції (з вхідними параметрами)
{. n = n; = new Neuron1 [n]; (int i = 0; i
{[i] = new Neuron1 (vhodi); [i]. setWeight ();
}
} void Activate ()
{(int i = 0; i
{[i]. Activate ();
}
} void Learning (int k)// навчання до = 0,1,2 - номер нейрона який повинен виграти
{(int i = 0; i
{(i == k-1)
{(int j = 0; j
{[i]. weight [j] + = so * (0.75 - Neironu [i]. getOutput ()) * Neironu [i]. input [j] ;//перерахунок ваг p>
}
}
{(int j = 0; j
{[i]. weight [j] + = so * (0.25 - Neironu [i]. getOutput ()) * Neironu [i]. input [j];
}}
}
}
// вага + = скорость_обученія * разница_между_выходом_нейрона_и_его_нужным_значением * вход_сетіdouble [] poluchves ()// отримання ваг для збереження
{kol = Neironu [0]. n * n; [] tmp = new double [kol]; (int i = 0; i
{(int j = 0; j
{[i * n + j] = Neironu [i]. weight [j];
}
} tmp;
} void ustanves (double [] tmp)// установка ваг після завантаження з файлу
{kol = Neironu [0]. n * n; (int i = 0; i
{(int j = 0; j
{[i]. weight [j] = tmp [i * n + j];
}
}}}}
. Обчислювальний експеримент
Для виконання обчислювального експерименту запускаємо скомпільований EXE файл або запускаємо програму в середовищі розробки Microsoft Visual Studio 2010. Після запуску програми і завантаження зображення з'являється вікно, представлене на малюнку 8. br/>В
Рисунок 8 - Результат обчислювального експерименту
Після навчання мережі і натиснення кнопки "Результат" з'являється вікно, представлене на малюнку 9.
В
Рисунок 9 - Результат обчислювального експерименту
Перше числ...