Early-Stopping for logistic regression. Theano
Patience is the number of training batches to do before you stop. iter is the number of training batches you've seen. Each iteration, you decide whether or not your validation is lower than your previous best. The improvement is only stored if the score is lower than improvement_threshold * validation_score.  

It appears that patience_increase is a multiplier.  Every time you have a new lowest score, you up the total number or training batches to iter*patience_increase, but not below the current value of patience.

validation_frequency is just the number of batches between times you check the validation score.