public static double Train(ModelConfig c) { var startTime = System.Diagnostics.Stopwatch.StartNew(); Data data = allData.Take((int)(allData.input * c.trainDatasetPart)); ILossFunction <double> loss = new L2Loss(); Model m = new Model(c, trainMatrixRandomCenter, trainMatrixRandomOffset); m.LogEpoch = logEpoch; m.LogBatch = logBatch; m.Train(data, c.iters, c.batch, c.lr, loss); m.Save(modelPath); startTime.Stop(); return(startTime.ElapsedMilliseconds); }
public static Variable <T> L2Loss <T>(Variable <T> pred, Variable <T> label) { var op = new L2Loss <T>(pred, label); return(op.Loss); }