A PROC HPNEURAL model is trained with MLPARCH(20 10) and the VALIDATION= option. Training loss decreases monotonically but validation loss begins rising at epoch 15. What does PROC HPNEURAL do when the VALIDATION= option is specified?
Select an answer to reveal the explanation.
Short Explanation
Here's the deal — when you specify a validation dataset, PROC HPNEURAL watches validation error and stops early by keeping the weights from the epoch with the lowest validation error. You get the best-validation model, not the last-epoch model.
Full Explanation
PROC HPNEURAL with a VALIDATION= dataset monitors validation error and implements early stopping, saving the model state at the epoch with the lowest validation error. The final model uses these weights, not the last-iteration weights. Continuing to the specified maximum iterations and reporting final epoch weights is wrong because HPNEURAL does not blindly run to that limit when validation data is supplied. Restarting from a new random seed after validation loss rises is wrong because it does not restart automatically. Halving the learning rate whenever validation loss increases is wrong because that decay is not automatic in PROC HPNEURAL.