I would suggest that, usually, it's to fill a skills gap, to educate, to teach people how to do new things.
I would further suggest that there is a far more important reason for training people - to create a performance baseline.
Once someone has learned a skill, and demonstrated competence in applying that skill, they do not forget it. If someone fails to operate at an assessed level of competency then this is unlikely to be a training issue, this becomes a performance management issue. That person is choosing to perform below their demonstrated level of competency. The person who arrives late for work knows exactly what their contracted working hours are. The person who blocks a fire exit knows exactly what their health and safety responsibilities are.
We need to take the focus off training and put it onto evaluation, because evaluating and assessing a person's performance both gives us a baseline for development and a point of reference for everything that flows from accountability - high standards, engagement and retention.