I've successfully defended myself with as 2-3 units per city near borders and as low as 1 per city on the interior. I admit that needs managing of relationships and placating of angry neighbours, but I've found that often does the trick until you've researched the heck out of them and have a technologically superior army. The key thing is that you usually get some warning that a neighbour is going to attack you (like a tribute demand or something) in which case you can give them the tribute and start re-arming against the expected later onslaught. I'll admit that I've also lost inner cities to unexpected agressive barbarians too.
EDIT: I've recently started playing at higher levels - Prince and Monarch - and this no longer seems to work. My neighbours seem to be more frequently making surprise attacks with enough force to take a city before I can shore up its garrison.