It depends. For me, every time there is a deployment to test environment we would run the automation. What might change though is the number of test cases that we would run and the number of machines that we would use to run them.
After we go-live with 1.0, we normally hand select a number of key test cases, that give us a high-level test pass. This test pass would be to give broad coverage across the features, targeted to quickly identify the areas that might need more attention.
There is a potential of a real risk of test escapes vs execution time balance here. I would also increase coverage in areas that a) have recently been changed and b) areas that are known to be historically unstable.
Another challenge, is that if the application that is being tested changes, you really need to run all the tests to keep them in good, working order.