In machine learning blogs I frequently encounter the word "vanilla". For example, "Vanilla Gradient Descent" or "Vanilla method". This term is literally never seen in any optimization textbooks.
For instance, in this post, it says:
This is the simplest form of gradient descent technique. Here, vanilla means pure / without any adulteration. Its main feature is that we take small steps in the direction of the minima by taking gradient of the cost function.
Pray tell, what does "adulteration" mean in this context? The author goes further by contrasting vanilla gradient descent with gradient descent with momentum. So in this case vanilla gradient descent is another word for gradient descent.
In another post, it says,
Vanilla gradient descent, aka batch gradient descent,...
Sadly I have never heard of batch gradient descent either. Oh boy.
Can someone clarify what "vanilla" means and if there is a firmer mathematical definition to it?