/// <summary> /// Обучение нейронной сети /// </summary> /// <param name="xy">Обучающее множество</param> /// <param name="sizeSet">Размер обучающего множества</param> public void Training(double [,] xy, int sizeSet) { int info; alglib.mlpreport rep; alglib.mlptrainlbfgs(net, xy, sizeSet, 0.001, 21, 0, 1, out info, out rep);//(20, 21), 0.05, (1, 19) string serial = null; alglib.mlpserialize(net, out serial); LogsIO.SetLog(name, serial); }
/// <summary> /// Десериализует нейронную сеть из базы данных /// Если в БД ее нет, то сериализует созданную /// нейронную сеть с рандомными весами в БД /// </summary> private void Init() { string log = LogsIO.GetLog(name) + " "; if (String.IsNullOrWhiteSpace(log)) { alglib.mlpserialize(net, out log); LogsIO.SetLog(name, log); return; } alglib.mlpunserialize(log, out net); }