I have seen some situations whereby instead of paying for training, companies decided to learn Agile from looking at books and websites, OR by getting employees to try to train a number of people. If you have a person who is well versed in agile and whose full time job is to train other employees, then I think this is fine. More often than not, its an already overworked project manager who is asked to take on these additional duties. You can imagine how it turns out.
Get Everyone to the Same Basic Level of Understanding
When I have come in and trained companies, one of the talking points I make is that the purpose of the training is to level set everyone and it is the start of a broader journey. In 2014, we have a number of companies whose employees have wide ranging experience as far as agile is concerned. While some employees have come from companies that have been practicing Scrum for 5+ years, others have never heard from it before. Getting everyone to the same basic level of understanding helps everyone speak the same language.
Shorten the Learning Curve
A dedicated trainer, even if s/he is only at your company for 2 days,