Ejemplo n.º 1
0
        internal void AddTestError(TrainingSessionBase session, double error)
        {
            int iters = session.Epoch * session.IterationsPerEpoch;

            if (_testDecimator == 0 || _testIdx >= _testDecimator)
            {
                _testIdx = 0;
                _testErrorSeries.AddPoint(new DataPoint(iters + session.Iteration, error));
            }
            else
            {
                _testIdx++;
            }

            if (_testErrorSeries.SeriesPoints.Count >= PlotResolution)
            {
                _testErrorSeries.DecimatePoints(2);
                _testDecCnt++;
                _testDecimator = _testDecCnt * 2;
                _testIdx       = 0;
            }


            PlotModel.InvalidatePlot(true);
        }
Ejemplo n.º 2
0
 private void TrainerEventsOnEpochReached(TrainingSessionBase session)
 {
     if (Schedule.ShouldDoOnEpoch(session.Epoch))
     {
         DoAction(session);
     }
 }
Ejemplo n.º 3
0
 private void TrainerEventsOnSequenceTrained(TrainingSessionBase session)
 {
     if (Schedule.ShouldDoOnIteration(session.Iteration))
     {
         DoAction(session);
     }
 }
Ejemplo n.º 4
0
 protected override void DoAction(TrainingSessionBase session)
 {
     _action();
 }
Ejemplo n.º 5
0
 protected override void DoAction(TrainingSessionBase session)
 {
     DoAction((T)session);
 }
Ejemplo n.º 6
0
 protected abstract void DoAction(TrainingSessionBase session);