Why do duplicates keep showing up in my address book? I maintain a very clean address book (OSX), complete with photos and profile info of my contacts. Contacts are on iCloud and Exchange.

However, sometimes I'll get an email from a contact and the picture won't show up. In fact, an entirely new email-entry shows up in the address book even if that email is already associated with a contact.

Any advice on how I can make this stop happening? My Contacts is now full of duplicates.
This will most likely be from contacts duplicated on the two servers - turn off the contact service on one of the servers and you should see your dupes disappear. We had this same issue recently when migrating from an in-house Exchange server to Office 365. Various users had contacts set up on both and were complaining about having duplicates in their contacts lists. Our policy is to leave contacts stored on iCloud but you may have different priorities.