I don't think it's an either-or situation. I think you need to back up with better compliance and better audit, and with disclosure regimes that encourage people to come forward.
I personally don't like amnesties. Voluntary disclosure regimes are not amnesties because you pay your tax and you pay your interest. You may have some flexibility, but you have to make sure these are targeted and that they are in fact time-limited in order to encourage people to come forward quickly in terms of declaring their offshore wealth.