This PR affects only learning.py: it adds AdaGrad to the SGD loop, and it creates an option for using a log loss instead of a hinge loss.
AdaGrad seems to speed up learning in a way that will help students develop faster.
The log-loss gives them another option to explore. In my experience, very informally, log-loss delivers higher accuracy but is less likely to deliver weights that let us induce the desired grammar.
This PR affects only learning.py: it adds AdaGrad to the SGD loop, and it creates an option for using a log loss instead of a hinge loss.
AdaGrad seems to speed up learning in a way that will help students develop faster.
The log-loss gives them another option to explore. In my experience, very informally, log-loss delivers higher accuracy but is less likely to deliver weights that let us induce the desired grammar.