Players should always be able to swap out a poor feat choice, or skill point allocation, or whatever. You don't need retraining rules for this at all. Nor do I think it should necessarily require some kind of DM permission.
Generally speaking, why should a player be forced to stick with a feat...