Growling is a way for your dog to tell you that he/she is uncomfortable...
Listen to your pooch. If they're growling, they probably have good reason and are trying to tell you that they are uncomfortable.
Yelling at your dog or punishing them for growling is only going to confuse them, and may potentially be dangerous in the long run if they have no way of warning someone that they will bite if pushed too far.
Each dog has their own comfort zone, and as their companion, it is your job to respect their space and help give them tools to cope, not punish them when they feel uncomfortable.
Taking them to classes like "Leash Lungers", "Good-bye Growl", "Bye-bye Shy" and "Scaredy Dog" (Available at Sit Happens! and Cochrane Humane Society) can help extremely well with dogs who either growl because they are scared or have problems with reactivity.
Source: http://www.dogster.com/lifestyle/4-things-you-should-know-dogs-growl