I'm biased (Disclosure: I work on Google Cloud), but having a single GPU in your local machine for testing and then doing real training on a cloud provider seems best.
If you load your workstation at home with the best GPUs money can buy today, you've spent a big pile of cash and in six-to-twelve months it's no longer the best (see our announcement about bringing P100s to Compute Engine in the next few months). Moreover, your single awesome machine can only train one thing at a time. By renting several such VMs (on us or other providers), you can use distributed training to iterate more quickly on your models or explore totally different problems in parallel.
Doing so at home multiplies your cost for each machine. With the pay as you go model, if you were going to compute the answer, it costs the same (roughly) to do it all at once versus serially. So why wait?
Again, big disclosure: I work on Google Cloud, and have ML Services and GPUs to sell you.