Shouting, humiliation (you're a bad girl) and spanking don't teach anything but fear and shame. You do need to maintain your expectations of acceptable behavior for her. Try finding opportunities on a daily basis for legitimate praise of her behavior. Don't call her a good girl for doing something you like anymore than calling her a bad girl for something you don't like. Comment on her behavior or accomplishment, e.g., "I really appreciated how nicely you picked up your toys. What a big help that was." Think about the ratio of praising to scolding; change it so it's always heavily weighted in favor of praising.
You can also offer her choices of behavior that are all acceptable to you but seem to offer her some power in choosing, e.g., "You can stop doing X (a negative behavior) now and we can play Y, or you can talk like a baby until you're ready to tell me you want to be three again and play Z." Sometimes just breaking the rhythm of what isn't working ushers in a chance for both parents and child to create a new, better way of communicating.
Look over the book, "How to Talk So Kids Will Listen & Listen So Kids Will Talk" by Faber and Mazlish. There are many practical examples of successful discipline strategies in this superb book.